17 Commits
Author SHA1 Message Date
Qiu Yuzhou 3dbc7546ed docs: add contribution guidelines 2026-10-24 13:27:12 +08:00
Qiu Yuzhou 48c1a95f8e docs: make issue tracker configuration contributor-local 2026-10-24 12:14:52 +08:00
Qiu Yuzhou 2e5c159d51 docs: streamline agent guidance in English 2026-10-24 02:56:36 +08:00
Qiu Yuzhou a159ce4f77 docs: maintain NG2 validation skill in repo 2026-10-19 19:16:13 +08:00
Qiu Yuzhou 686fa4cd5c docs: require English Conventional Commit messages 2026-10-12 00:24:39 +08:00
Qiu Yuzhou 87a5e48120 docs: prohibit fork issue references in code comments 2026-10-11 23:01:49 +08:00
Qiu Yuzhou a335e00a38 chore(agents): 同步 docs/agents 配置到当前 skills 并去掉仓库硬编码
对照 ~/.agents/skills/setup-matt-pocock-skills 的当前模板逐字节核对三份配置:

- triage-labels.md 与模板完全一致,无漂移,未改动。
- domain.md 同步标点(— 改为 :)与措辞(Single-context repo (this repo)
  改为 (most repos)),现与模板一致。
- issue-tracker.md 同步标点漂移,并把硬编码的
  --repo qiuyuzhou/ShadowsocksX-NG 换成从 clone 推导
  (gh repo view --json nameWithOwner)后显式 pin。保留「绝不写入其他仓库」的
  安全规则与那次误发事故的教训,但去掉仓库名,使该配置在合并进上游后仍然成立。
  AGENTS.md 的一行摘要同步去掉仓库名。

.scratch/ 加入 .gitignore 与 .zcodeignore:这是 setup-matt-pocock-skills 为
local-markdown tracker 约定的目录,切到本地 tracker 时 spec 文件不落进 git。

docs/design/ 与 docs/research/ 的去留尚未决定,本次不引入任何排除机制。
2026-10-05 22:25:42 +08:00
Qiu Yuzhou 7ab774fcfd chore(legacy): 移除 Legacy/ 旧版源码,归档到 legacy-v1 分支
旧版实现已由 shadowsocks/ShadowsocksX-NG 的 legacy-v1 分支跟踪,本仓库不再
保留同一份代码副本。删除 Legacy/ 下 603 个跟踪文件,被 gitignore 的
.DS_Store 一并清理。

删除前核对:Legacy/ShadowsocksX-NG/PACUtils.swift 的 blob hash 与
upstream/legacy-v1 的同名文件完全相同,且工作区在 Legacy/ 下无未提交改动。

配套改动:

- 根 README、AGENTS.md、ShadowsocksX-NG2/README.md:目录结构只留
  ShadowsocksX-NG2/;旧版说明改为指向 shadowsocks/ShadowsocksX-NG 的
  legacy-v1 分支(含其 README);pre-commit 说明去掉 Legacy/。
- codegraph.json 删除 "exclude": ["Legacy/"];.gitignore 与 .zcodeignore
  删除 Legacy 构建产物与依赖条目;.swiftlint.yml 删除 ../Legacy 排除项;
  .githooks/pre-commit 头部注释去掉冻结目录表述。
- docs/research 的 4 份历史研究报告(issue 7/11/12/17)中 129 处
  ../../Legacy/... 相对链接改写为 legacy-v1 的 GitHub blob 链接,正文未改;
  把新 URL 反替换回原相对路径后与 HEAD 版本逐字节相同,证明只动了链接。

验证:全仓库不再有指向 Legacy/ 的路径引用;剩余 Legacy 字样均为概念性用法
(Legacy 导入功能、ADR 与术语表、历史报告正文中的冻结陈述)。本次未改任何
NG2 源码或构建配置,暂存区无 NG2 .swift 文件,pre-commit 直接放行。
2026-10-05 21:39:06 +08:00
Qiu Yuzhou a00a93d5c0 docs: align domain docs with Chinese glossary 2026-10-04 15:19:54 +08:00
Qiu Yuzhou 7bb327ba1d docs(domain): CONTEXT.md 改名 GLOSSARY.md 并对齐引用
domain-modeling skill 升级后单上下文约定文件名为 GLOSSARY.md:
git mv 保历史、内容零改动;AGENTS.md、docs/agents/domain.md 及
NG2 源码注释中的活引用随之对齐。docs/design、docs/research、ADR
中的旧名引用属历史记录,不改写。
2026-10-04 15:06:41 +08:00
Qiu Yuzhou e3ca886b9f docs: refine language for clarity in AGENTS.md 2026-10-02 10:55:45 +08:00
Qiu Yuzhou e9712a86c0 docs: clarify maintained documentation authority 2026-10-02 10:35:56 +08:00
Qiu Yuzhou 747c6f24af docs(agents): mark docs/research as point-in-time research reports
A research doc was treated as an adopted in-flight design and a design
round was built on its proposal until corrected: nothing in the repo
documents said docs/research/ holds capability studies rather than
project state, so the directory's semantic status had to be inferred.
State it beside the other domain-truth pointers — research reports
record what was investigated at writing time, current state and adopted
designs live in code, CONTEXT.md and docs/adr/, and a report cited as
implementation basis must be verified in code first.
2026-09-29 12:04:30 +08:00
Qiu Yuzhou 7bfb90ef5c docs(ng2): reorganize development instructions 2026-09-21 14:42:58 +08:00
Qiu Yuzhou 1b8b1f0767 docs(ng2): move style tool setup from AGENTS.md to README
AGENTS.md keeps only the agent contract: hook enable step, gate
behavior, manual commands, rule-tuning policy. Install steps,
tool baselines, and config rationale are human-facing setup and
now live in README's 代码风格工具 section.

Update stale pointers that sent readers to AGENTS.md for tool
install (root AGENTS.md, pre-commit hook comment and error
message); hook behavior unchanged.
2026-09-20 14:36:35 +08:00
Qiu Yuzhou 635d22378e feat(ng2): add swift format + SwiftLint pre-commit gate (#23)
- ShadowsocksX-NG2/.swift-format: Apple Swift 6.4 toolchain default rules snapshot
- ShadowsocksX-NG2/.swiftlint.yml: default rules, excludes build artifacts and Legacy/
- .githooks/pre-commit: format staged NG2 Swift files into the index, then SwiftLint;
  error-severity violations reject the commit; non-NG2 files pass through untouched
- ShadowsocksX-NG2/AGENTS.md: NG2-scoped conventions (tiered below root AGENTS.md)
- normalize skeleton sources to swift format baseline (2-space indent)
2026-09-20 13:45:48 +08:00
Qiu Yuzhou 85a9244930 docs: add agent skills configuration (issue tracker, triage labels, domain docs) 2026-09-19 23:57:22 +08:00