Skip to content

feat: align Phase 0 implementation and CI contracts - #31

Merged
suzutaku1014 merged 3 commits into
mainfrom
agent/phase-0-alignment
Aug 10, 2026
Merged

feat: align Phase 0 implementation and CI contracts#31
suzutaku1014 merged 3 commits into
mainfrom
agent/phase-0-alignment

Conversation

@suzutaku1014

@suzutaku1014 suzutaku1014 commented Aug 10, 2026

Copy link
Copy Markdown
Owner

Outcome

Phase 0の承認済み設計を実装へ反映し、commit snapshotだけを読む再現可能なCLI execution skeletonと、Node.js 22/24のCI・tarball検証を追加します。

Closes #8
Closes #9
Closes #10
Closes #11

Contract and scope

  • delta / full / releaseは解決済みhead commitのtreeとblobを読み、working treeやindexを混在させません。
  • RepositoryReaderをRuleへ渡す内部portとして分離し、RuleはGit runnerやfilesystem handleを受け取りません。
  • Rule実行は最大4並列・30秒timeoutとし、invalid evidenceやtimeoutはfalse passではなくRule failure / not-verifiedにします。
  • default configはhead snapshotから読み、explicit configを含めsourceとSHA-256をreportへ記録します。
  • --format jsonを解釈できた後の処理失敗はversion付きJSON failure envelopeで返します。
  • packageの公開契約をauditloom commandだけにし、root / internal subpath importと.d.ts生成を廃止します。
  • Semantic Adapterとfake adapterは内部境界として維持します。candidateはconfirmed findingやCI failureを直接確定しません。
  • OpenAI SDK、credential、prompt、W1〜W5の具体的Rule、npm publishは追加しません。

Design decisions

  • 利用者の監査単位はPull Requestなどですが、再現単位をcommitに固定しました。CIはbase/head revisionをCLIへ渡します。
  • symlinkをhost filesystem上で解決せず、snapshot中のsymlink blobのtext readを拒否します。
  • 実在consumerがないNode.js SDKを先に固定せず、内部interfaceは将来のRule実装に使える状態で維持します。
  • AI支援で実装しています。公開履歴には作業量の分担ではなく、採用した契約、検証結果、未確認事項を記録します。

Verification

Node.js 24.19.0で以下を実行済みです。

  • npm ci
  • npm run typecheck
  • npm test — 7 files / 49 tests passed
  • npm run build
  • npm run package:dry-run
  • npm run package:smoke — tarball install、shebang、CLI起動、root/internal import拒否を確認

GitHub ActionsではNode.js 22と24でinstall / typecheck / test / buildを実行し、Node.js 24でpackage checksも実行します。

Risks and unverified boundaries

  • Ruleはtrusted in-process codeです。timeoutは非同期処理を失敗判定・cancelする境界で、同期無限loopを隔離するhard sandboxではありません。
  • Semantic Adapterはprovider非依存のinterfaceとfakeのみです。provider SDK、redaction、Structured Outputは意味監査要件と合わせて後続設計します。
  • Node.js 22 / 24のGitHub Actionsはともにgreenです。
  • 問題がある場合はこのPRの3 commitを単位にrevertまたはforward-fixできます。

@suzutaku1014
suzutaku1014 marked this pull request as ready for review August 10, 2026 12:57
@suzutaku1014
suzutaku1014 merged commit 4ab271a into main Aug 10, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant