Skip to content

chore: 补齐包元数据、专有许可证与 PR 模板 - #11

Merged
YanZhiwei merged 3 commits into
mainfrom
chore/package-metadata-license
Oct 28, 2026
Merged

YanZhiwei merged 3 commits into
mainfrom
chore/package-metadata-license

Conversation

@YanZhiwei

@YanZhiwei YanZhiwei commented Oct 28, 2026 •

Copy link
Copy Markdown
Owner

概要

补齐四个 Distribution 的包元数据与许可证,并把中文 PR 模板落到本仓库。构建不再产生
sdist: standard file not found 警告,wheel/sdist 带完整许可证与说明。

动机

  • 包级 README 缺失导致 setuptools sdist 警告
  • 根目录没有 LICENSE,“私有”定位没有显式法律声明
  • 仓库没有 PR 模板,评审格式不统一

变更类型

  • Feature 或新组件
  • Bugfix 或契约修正
  • 重构或简化
  • 文档或治理
  • 依赖升级

当前设计(改前)

  • 入口或组件:四个独立 Distribution,setuptools>=68,无 readme/license/authors/urls
  • 所有者与依赖方向:包边界由 docs/architecture/package-boundaries.md 约定,测试校验依赖方向
  • 当前约束:私有 monorepo;没有 LICENSE 文件;.github 只有 quality.yml

本次改动

位置 改动 原因
LICENSE 新增 Proprietary 许可证 明确“保留所有权利”
packages/*/*/LICENSE 四个副本 让 sdist/wheel 携带许可证
packages/*/*/README.md 四个包级说明 消除 sdist 警告,说明职责与边界
packages/*/*/pyproject.toml readme、license、license-files、authors、urls;后端 >=77 PEP 639 元数据
.github/pull_request_template.md 中文 PR 模板 统一评审格式
.specify/extensions/quality/quality-config.yml 治理 Profile 覆盖 LICENSE 与模板 避免 unprofiled 阻断
docs/development/quality-gates.md 移除旧的 README 警告说明 文档与现状一致
harness/*、.specify/delivery/* 新增证据;再锚定 v0.1.2 证据 记录验证结果

影响范围

维度 影响 依据
公共 API、命令、配置 无运行时变化;包元数据新增字段 pyproject.toml
持久化或迁移 无 无数据路径变化
兼容性与升级路径 setuptools>=77 仅影响构建隔离环境 uv lock --check 四个包通过
安全与权限 许可证改为显式 Proprietary 维护者确认
性能与资源 无 仅文档与元数据
依赖与供应链 无新增运行时依赖 dependencies 未变

设计

N/A:本次只改元数据、许可证和文档,没有持久结构变化。

架构决策

  • 相关 ADR 已链接,且与 HEAD 的实现一致。
  • 本次没有改变架构决策。

行为与验收

需求 结果 证据
构建无 README 警告 pass uv build 日志无 standard file not found
wheel 带许可证元数据 pass License-Expression、License-File
sdist 含说明与许可证 pass README.md、LICENSE
锁文件仍一致 pass 四个 uv lock --check exit 0
完整质量门 pass pwsh scripts/quality.ps1 exit 0

验证

检查 结果 证据
Quality Gate pass 本地完整入口 exit 0;PR CI 另行确认
针对性测试 pass 包构建、隔离安装与现有 12 个测试通过
治理与文档 pass 0 error / 4 条历史 warning;63 文件 / 166 目标
构建与隔离安装 pass 四包 uv build --no-sources + pip check
git diff --check pass 无空白错误
pwsh -NoProfile -File scripts/quality.ps1
pwsh -NoProfile -File scripts/quality.ps1 -Check governance
pwsh -NoProfile -File scripts/quality.ps1 -Check docs
git diff --check

文档

  • 源文档已更新:README 许可证说明、质量门说明、包级 README。
  • 生成投影已同步:本次没有生成投影。
  • 无需文档改动。

回滚

回滚本 PR 即恢复无 LICENSE、无包级 README 的元数据;已构建产物不受影响。许可证选择本身
由维护者确认,回滚会同时撤销该声明。

AI 使用披露

  • 使用了 AI 辅助,且每一行改动都经过命令验证和人工审阅。

评审重点

  • 四个 pyproject.toml 的 PEP 639 字段是否与构建后端匹配
  • 根 LICENSE 与包内副本是否一致
  • 治理 Profile 是否确实覆盖新增路径
  • 4 条历史 warning 是否属于预期而非本次引入

Checklist

  • 验收条件已覆盖。
  • 阻塞性评审发现已处理。
  • ADR 与 HEAD 一致(本次无 ADR)。
  • 验证证据已附。
  • outgoing diff 与评审范围一致。

…emplate

- Add the root LICENSE and per-package README/LICENSE copies.
- Declare readme, license, license-files, authors, and repository URL in all
  four pyprojects; raise the build backend to setuptools>=77.
- Add a Chinese pull-request template covering current design, change map,
  impact, verification, and AI disclosure.
- Extend the governance quality profile to cover LICENSE and the PR template.
- Re-anchor the v0.1.2 delivery evidence to the PR #10 merge commit.
@YanZhiwei
YanZhiwei merged commit dab15fe into main Oct 28, 2026
14 checks passed
@YanZhiwei YanZhiwei mentioned this pull request Oct 29, 2026
10 of 16 tasks
@YanZhiwei
YanZhiwei deleted the chore/package-metadata-license branch October 31, 2026 15:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant