codex-orchestrator 2.0.1 → 2.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +22 -0
- package/README.md +12 -9
- package/dist/src/index.d.ts +10 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +5 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/v2/acceptance-proof.d.ts +3 -0
- package/dist/src/v2/acceptance-proof.d.ts.map +1 -1
- package/dist/src/v2/acceptance-proof.js +2 -8
- package/dist/src/v2/acceptance-proof.js.map +1 -1
- package/dist/src/v2/adapters/gh-issue-adapter.d.ts +5 -3
- package/dist/src/v2/adapters/gh-issue-adapter.d.ts.map +1 -1
- package/dist/src/v2/adapters/gh-issue-adapter.js +63 -7
- package/dist/src/v2/adapters/gh-issue-adapter.js.map +1 -1
- package/dist/src/v2/adapters/issues.d.ts +16 -2
- package/dist/src/v2/adapters/issues.d.ts.map +1 -1
- package/dist/src/v2/adapters/issues.js +15 -5
- package/dist/src/v2/adapters/issues.js.map +1 -1
- package/dist/src/v2/adapters/mission-coordinator-lock.d.ts +1 -0
- package/dist/src/v2/adapters/mission-coordinator-lock.d.ts.map +1 -1
- package/dist/src/v2/adapters/mission-coordinator-lock.js +5 -1
- package/dist/src/v2/adapters/mission-coordinator-lock.js.map +1 -1
- package/dist/src/v2/candidate-cli.d.ts +4 -0
- package/dist/src/v2/candidate-cli.d.ts.map +1 -1
- package/dist/src/v2/candidate-cli.js +26 -11
- package/dist/src/v2/candidate-cli.js.map +1 -1
- package/dist/src/v2/cli-contract.d.ts +1 -1
- package/dist/src/v2/cli-contract.d.ts.map +1 -1
- package/dist/src/v2/cli-contract.js +10 -0
- package/dist/src/v2/cli-contract.js.map +1 -1
- package/dist/src/v2/code-review-report.d.ts +66 -0
- package/dist/src/v2/code-review-report.d.ts.map +1 -0
- package/dist/src/v2/code-review-report.js +259 -0
- package/dist/src/v2/code-review-report.js.map +1 -0
- package/dist/src/v2/codex-process.d.ts +8 -1
- package/dist/src/v2/codex-process.d.ts.map +1 -1
- package/dist/src/v2/codex-process.js +11 -0
- package/dist/src/v2/codex-process.js.map +1 -1
- package/dist/src/v2/config.d.ts +2 -1
- package/dist/src/v2/config.d.ts.map +1 -1
- package/dist/src/v2/config.js +8 -3
- package/dist/src/v2/config.js.map +1 -1
- package/dist/src/v2/contained-report-operation.d.ts +100 -0
- package/dist/src/v2/contained-report-operation.d.ts.map +1 -0
- package/dist/src/v2/contained-report-operation.js +200 -0
- package/dist/src/v2/contained-report-operation.js.map +1 -0
- package/dist/src/v2/containment.d.ts +6 -0
- package/dist/src/v2/containment.d.ts.map +1 -1
- package/dist/src/v2/containment.js +40 -1
- package/dist/src/v2/containment.js.map +1 -1
- package/dist/src/v2/direct-delivery.d.ts +101 -0
- package/dist/src/v2/direct-delivery.d.ts.map +1 -0
- package/dist/src/v2/direct-delivery.js +547 -0
- package/dist/src/v2/direct-delivery.js.map +1 -0
- package/dist/src/v2/immutable-workflow-publisher.d.ts +40 -0
- package/dist/src/v2/immutable-workflow-publisher.d.ts.map +1 -0
- package/dist/src/v2/immutable-workflow-publisher.js +218 -0
- package/dist/src/v2/immutable-workflow-publisher.js.map +1 -0
- package/dist/src/v2/implementation-reviewer.d.ts +81 -0
- package/dist/src/v2/implementation-reviewer.d.ts.map +1 -0
- package/dist/src/v2/implementation-reviewer.js +157 -0
- package/dist/src/v2/implementation-reviewer.js.map +1 -0
- package/dist/src/v2/owner-control-lock.d.ts +41 -0
- package/dist/src/v2/owner-control-lock.d.ts.map +1 -0
- package/dist/src/v2/owner-control-lock.js +174 -0
- package/dist/src/v2/owner-control-lock.js.map +1 -0
- package/dist/src/v2/route-continuations.d.ts +32 -0
- package/dist/src/v2/route-continuations.d.ts.map +1 -0
- package/dist/src/v2/route-continuations.js +2 -0
- package/dist/src/v2/route-continuations.js.map +1 -0
- package/dist/src/v2/route-coordinator.d.ts +77 -0
- package/dist/src/v2/route-coordinator.d.ts.map +1 -0
- package/dist/src/v2/route-coordinator.js +370 -0
- package/dist/src/v2/route-coordinator.js.map +1 -0
- package/dist/src/v2/route-decision.d.ts +129 -0
- package/dist/src/v2/route-decision.d.ts.map +1 -0
- package/dist/src/v2/route-decision.js +400 -0
- package/dist/src/v2/route-decision.js.map +1 -0
- package/dist/src/v2/run-issue.d.ts +63 -2
- package/dist/src/v2/run-issue.d.ts.map +1 -1
- package/dist/src/v2/run-issue.js +906 -91
- package/dist/src/v2/run-issue.js.map +1 -1
- package/dist/src/v2/run-store.d.ts +25 -1
- package/dist/src/v2/run-store.d.ts.map +1 -1
- package/dist/src/v2/run-store.js +143 -3
- package/dist/src/v2/run-store.js.map +1 -1
- package/dist/src/v2/runtime-assets.d.ts +15 -13
- package/dist/src/v2/runtime-assets.d.ts.map +1 -1
- package/dist/src/v2/runtime-assets.js +263 -416
- package/dist/src/v2/runtime-assets.js.map +1 -1
- package/dist/src/v2/runtime.d.ts +14 -6
- package/dist/src/v2/runtime.d.ts.map +1 -1
- package/dist/src/v2/runtime.js +478 -56
- package/dist/src/v2/runtime.js.map +1 -1
- package/dist/src/v2/setup-cli.d.ts.map +1 -1
- package/dist/src/v2/setup-cli.js +1 -0
- package/dist/src/v2/setup-cli.js.map +1 -1
- package/dist/src/v2/setup-runtime.d.ts.map +1 -1
- package/dist/src/v2/setup-runtime.js +20 -72
- package/dist/src/v2/setup-runtime.js.map +1 -1
- package/dist/src/v2/setup.d.ts +4 -1
- package/dist/src/v2/setup.d.ts.map +1 -1
- package/dist/src/v2/setup.js +104 -1
- package/dist/src/v2/setup.js.map +1 -1
- package/dist/src/v2/spec-coordinator.d.ts +85 -0
- package/dist/src/v2/spec-coordinator.d.ts.map +1 -0
- package/dist/src/v2/spec-coordinator.js +88 -0
- package/dist/src/v2/spec-coordinator.js.map +1 -0
- package/dist/src/v2/spec-delivery.d.ts +143 -0
- package/dist/src/v2/spec-delivery.d.ts.map +1 -0
- package/dist/src/v2/spec-delivery.js +401 -0
- package/dist/src/v2/spec-delivery.js.map +1 -0
- package/dist/src/v2/triage-route.d.ts +68 -0
- package/dist/src/v2/triage-route.d.ts.map +1 -0
- package/dist/src/v2/triage-route.js +223 -0
- package/dist/src/v2/triage-route.js.map +1 -0
- package/dist/src/v2/waiting-human-coordinator.d.ts +49 -0
- package/dist/src/v2/waiting-human-coordinator.d.ts.map +1 -0
- package/dist/src/v2/waiting-human-coordinator.js +509 -0
- package/dist/src/v2/waiting-human-coordinator.js.map +1 -0
- package/dist/src/v2/waiting-human.d.ts +143 -0
- package/dist/src/v2/waiting-human.d.ts.map +1 -0
- package/dist/src/v2/waiting-human.js +408 -0
- package/dist/src/v2/waiting-human.js.map +1 -0
- package/dist/src/v2/workflow-assets.d.ts +90 -0
- package/dist/src/v2/workflow-assets.d.ts.map +1 -0
- package/dist/src/v2/workflow-assets.js +554 -0
- package/dist/src/v2/workflow-assets.js.map +1 -0
- package/docs/deep-dive.md +15 -8
- package/internal-workflow/docs/agents/artifact-review-loop.md +267 -0
- package/internal-workflow/docs/agents/bug-workflow-routing.md +24 -0
- package/internal-workflow/docs/agents/coding-skill-routing.md +203 -0
- package/internal-workflow/docs/agents/confidence-rubric.md +65 -0
- package/internal-workflow/docs/agents/contract-test-ledger.md +60 -0
- package/internal-workflow/docs/agents/implementation-review-loop.md +302 -0
- package/internal-workflow/docs/agents/review-gates.md +49 -0
- package/internal-workflow/docs/agents/review-protocol.md +170 -0
- package/internal-workflow/docs/agents/tool-usage.md +88 -0
- package/internal-workflow/manifest.json +1 -0
- package/internal-workflow/operations/acceptance-proof/SKILL.md +3 -0
- package/internal-workflow/operations/ambiguity-review/SKILL.md +3 -0
- package/internal-workflow/operations/cleanup-review/SKILL.md +3 -0
- package/internal-workflow/operations/code-review/SKILL.md +3 -0
- package/internal-workflow/operations/implementation/SKILL.md +3 -0
- package/internal-workflow/operations/spec-author/SKILL.md +3 -0
- package/internal-workflow/operations/spec-implementation/SKILL.md +3 -0
- package/internal-workflow/operations/spec-review/SKILL.md +3 -0
- package/internal-workflow/operations/triage/SKILL.md +3 -0
- package/internal-workflow/profiles/analyst_deep.toml +9 -0
- package/internal-workflow/profiles/implementer_deep.toml +9 -0
- package/internal-workflow/profiles/implementer_standard.toml +9 -0
- package/internal-workflow/profiles/proof_agent.toml +8 -0
- package/internal-workflow/profiles/researcher_standard.toml +9 -0
- package/internal-workflow/profiles/reviewer_deep.toml +9 -0
- package/internal-workflow/profiles/reviewer_fast.toml +9 -0
- package/internal-workflow/profiles/reviewer_standard.toml +9 -0
- package/internal-workflow/schemas/ambiguity-review-v1.json +1 -0
- package/internal-workflow/schemas/code-review-v1.json +1 -0
- package/internal-workflow/schemas/implementation-report-v1.json +1 -0
- package/internal-workflow/schemas/proof-report-v1.json +1 -0
- package/internal-workflow/schemas/spec-author-v1.json +1 -0
- package/internal-workflow/schemas/spec-review-v1.json +30 -0
- package/internal-workflow/schemas/triage-route-v1.json +1 -0
- package/internal-workflow/skills/acceptance-proof/agents/openai.yaml +6 -0
- package/internal-workflow/skills/agent-auto/agents/openai.yaml +6 -0
- package/internal-workflow/skills/cleanup-review/SKILL.md +84 -0
- package/internal-workflow/skills/cleanup-review/agents/openai.yaml +6 -0
- package/internal-workflow/skills/code-review/SKILL.md +257 -0
- package/internal-workflow/skills/code-review/agents/openai.yaml +4 -0
- package/internal-workflow/skills/code-review/references/bug-classes.md +56 -0
- package/internal-workflow/skills/code-review/references/framework-lenses.md +34 -0
- package/internal-workflow/skills/code-review/references/targeted-recipes.md +49 -0
- package/internal-workflow/skills/codebase-design/DEEPENING.md +35 -0
- package/internal-workflow/skills/codebase-design/DESIGN-IT-TWICE.md +50 -0
- package/internal-workflow/skills/codebase-design/SKILL.md +82 -0
- package/internal-workflow/skills/codebase-design/agents/openai.yaml +6 -0
- package/internal-workflow/skills/diagnosing-bugs/SKILL.md +138 -0
- package/internal-workflow/skills/diagnosing-bugs/agents/openai.yaml +6 -0
- package/internal-workflow/skills/diagnosing-bugs/scripts/hitl-loop.template.sh +41 -0
- package/internal-workflow/skills/implementation-spec-maker/SKILL.md +93 -0
- package/internal-workflow/skills/implementation-spec-maker/agents/openai.yaml +6 -0
- package/internal-workflow/skills/implementation-spec-maker/references/source-modes.md +31 -0
- package/internal-workflow/skills/implementation-spec-maker/references/spec-template.md +146 -0
- package/internal-workflow/skills/implementation-spec-review/SKILL.md +211 -0
- package/internal-workflow/skills/implementation-spec-review/agents/openai.yaml +6 -0
- package/internal-workflow/skills/research/SKILL.md +107 -0
- package/internal-workflow/skills/research/agents/openai.yaml +6 -0
- package/internal-workflow/skills/small-task-implementer/SKILL.md +97 -0
- package/internal-workflow/skills/small-task-implementer/agents/openai.yaml +6 -0
- package/internal-workflow/skills/spec-implementer/SKILL.md +197 -0
- package/internal-workflow/skills/spec-implementer/agents/openai.yaml +6 -0
- package/internal-workflow/skills/tdd/SKILL.md +59 -0
- package/internal-workflow/skills/tdd/agents/openai.yaml +6 -0
- package/internal-workflow/skills/tdd/interface-design.md +31 -0
- package/internal-workflow/skills/tdd/mocking.md +59 -0
- package/internal-workflow/skills/tdd/refactoring.md +10 -0
- package/internal-workflow/skills/tdd/tests.md +77 -0
- package/internal-workflow/skills/triage/AGENT-BRIEF.md +192 -0
- package/internal-workflow/skills/triage/OUT-OF-SCOPE.md +101 -0
- package/internal-workflow/skills/triage/SKILL.md +134 -0
- package/internal-workflow/skills/triage/agents/openai.yaml +6 -0
- package/internal-workflow/skills/ui-evidence-proof/SKILL.md +123 -0
- package/internal-workflow/skills/ui-evidence-proof/agents/openai.yaml +6 -0
- package/package.json +6 -3
- /package/{internal-skills → internal-workflow/skills}/acceptance-proof/SKILL.md +0 -0
- /package/{internal-skills → internal-workflow/skills}/acceptance-proof/references/android.md +0 -0
- /package/{internal-skills → internal-workflow/skills}/acceptance-proof/references/browser.md +0 -0
- /package/{internal-skills → internal-workflow/skills}/acceptance-proof/references/ios.md +0 -0
- /package/{internal-skills → internal-workflow/skills}/acceptance-proof/tools/android-lease.mjs +0 -0
- /package/{internal-skills → internal-workflow/skills}/acceptance-proof/tools/ios-lease.mjs +0 -0
- /package/{internal-skills → internal-workflow/skills}/agent-auto/SKILL.md +0 -0
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# Tool Usage
|
|
2
|
+
|
|
3
|
+
## Flutter Debug Sessions
|
|
4
|
+
|
|
5
|
+
Local Flutter UI work always uses a platform QA skill plus the runtime ownership gate:
|
|
6
|
+
|
|
7
|
+
- Android emulator: use `$flutter-android-debug` as the lifecycle orchestrator and
|
|
8
|
+
`test-android-apps:android-emulator-qa` for navigation, interaction, UI trees,
|
|
9
|
+
screenshots, and logcat.
|
|
10
|
+
- iOS Simulator: use `$flutter-ios-debug` for environment/login gates, navigation,
|
|
11
|
+
interaction, screenshots, and visual comparison.
|
|
12
|
+
- Use `$flutter-attach-session` only to discover the runtime owner and perform
|
|
13
|
+
reload/restart when that session is safe for this agent to control.
|
|
14
|
+
|
|
15
|
+
Before any install, launch, attach, reload, restart, terminate, or force-stop:
|
|
16
|
+
|
|
17
|
+
1. Identify the project, target device, package/app, current PID, VM Service, runtime
|
|
18
|
+
owner, and expected backend/environment.
|
|
19
|
+
2. Treat any live PID, VM Service, IDE debug adapter, `flutter run`, or visible app as
|
|
20
|
+
user-owned state.
|
|
21
|
+
3. If an IDE/debug adapter or machine run owns DevFS, do not create a second attach
|
|
22
|
+
controller. Use the owning IDE/terminal reload action or ask the user to trigger it.
|
|
23
|
+
A standalone interactive terminal run is the only exception, and only when
|
|
24
|
+
discovery marks it attach-safe and the helper receives its confirmed PID.
|
|
25
|
+
4. Use `r` for widget/layout/style/rendering changes and `R` for startup state,
|
|
26
|
+
dependency injection, providers, globals, routes, or initialization changes.
|
|
27
|
+
5. For a safely attachable standalone runtime, pass the PID confirmed by
|
|
28
|
+
`discover --json` as `--expected-pid`; never execute the raw discovered attach command.
|
|
29
|
+
6. Verify that the same PID and expected environment remain after each runtime or
|
|
30
|
+
navigation action.
|
|
31
|
+
|
|
32
|
+
Requests to inspect, debug, navigate, capture screenshots, or verify UI do not authorize
|
|
33
|
+
build/install, uninstall, app-data clearing, force-stop, process termination, replacement
|
|
34
|
+
launch, or a new `flutter run`. Use those only when no live target exists and the user
|
|
35
|
+
requested a fresh run, or after explicit approval to replace the current session.
|
|
36
|
+
|
|
37
|
+
The platform QA skill owns navigation and evidence. Do not replace it with ad-hoc shell
|
|
38
|
+
commands: use `test-android-apps:android-emulator-qa` for Android emulator UI trees,
|
|
39
|
+
input, screenshots, and logcat, and `$flutter-ios-debug` for iOS Simulator environment
|
|
40
|
+
gates, navigation, interaction, screenshots, and visual comparison.
|
|
41
|
+
|
|
42
|
+
If the process disappears, stop and report it. Hot reload cannot restore a dead process,
|
|
43
|
+
and launching the installed app may expose an older APK/IPA without the DevFS changes.
|
|
44
|
+
|
|
45
|
+
For a cold launch, load the owning repository's launch configuration as the source of
|
|
46
|
+
truth for flavor, dart-defines, package/app identity, and backend. This applies only
|
|
47
|
+
after the cold-launch gate is satisfied.
|
|
48
|
+
|
|
49
|
+
## External Research
|
|
50
|
+
|
|
51
|
+
Prefer local evidence before external lookup. When external evidence is
|
|
52
|
+
material to a coding decision, use the source that owns the claim:
|
|
53
|
+
|
|
54
|
+
1. official documentation or specifications;
|
|
55
|
+
2. first-party source code, changelogs, release notes, or issue trackers;
|
|
56
|
+
3. first-party APIs or published schemas.
|
|
57
|
+
|
|
58
|
+
Use secondary sources only to discover primary sources or identify a disputed
|
|
59
|
+
interpretation. Record source version/date when freshness matters, separate
|
|
60
|
+
sourced facts from inference, and say when current behavior cannot be confirmed.
|
|
61
|
+
|
|
62
|
+
Keep one narrow lookup inline unless the user explicitly requests delegation or
|
|
63
|
+
a durable artifact. Use `$research` for either explicit request, multi-source
|
|
64
|
+
comparison, or material external contract synthesis. The skill owns the
|
|
65
|
+
Research Capsule, named-agent route, claim-to-source artifact, root verification,
|
|
66
|
+
and downstream handoff.
|
|
67
|
+
|
|
68
|
+
## Context7
|
|
69
|
+
|
|
70
|
+
Use Context7 only when the task genuinely requires precise, current documentation for a real package, framework, SDK, API, or implementation detail that cannot be confidently answered from local evidence or built-in knowledge.
|
|
71
|
+
|
|
72
|
+
Prefer local inspection first:
|
|
73
|
+
|
|
74
|
+
- source code
|
|
75
|
+
- lockfiles and installed package versions
|
|
76
|
+
- package manifests
|
|
77
|
+
- existing tests and examples
|
|
78
|
+
- local docs and configuration
|
|
79
|
+
|
|
80
|
+
Do not use Context7 for:
|
|
81
|
+
|
|
82
|
+
- routine coding
|
|
83
|
+
- general language questions
|
|
84
|
+
- simple refactors
|
|
85
|
+
- repository-specific behavior
|
|
86
|
+
- facts already visible in the project
|
|
87
|
+
|
|
88
|
+
If Context7 is used, keep the lookup narrow and bring back only the details needed for the active task.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"files":[{"mode":420,"path":"docs/agents/artifact-review-loop.md","sha256":"3b580da704595fa031998fb08caaf54eba3402695b9dc29952575d62d4d86e61","size":12420},{"mode":420,"path":"docs/agents/bug-workflow-routing.md","sha256":"a37c59676bcb8b938a7c82bce8a6ea5becf58ba367866d2712cd469391aea931","size":1603},{"mode":420,"path":"docs/agents/coding-skill-routing.md","sha256":"cb90ba59c007a9438a3ea9f03953e707d8a22fa23e040a3e6072eb8036d7b703","size":13909},{"mode":420,"path":"docs/agents/confidence-rubric.md","sha256":"42c947db2775380867e7adcfbdbe0f67b8f511b9ddf33a6eef8e1b0e995912c2","size":1883},{"mode":420,"path":"docs/agents/contract-test-ledger.md","sha256":"6f2327a40f218fbc746193c6440a69be08450938688b401f05163a3bb438a7f3","size":3779},{"mode":420,"path":"docs/agents/implementation-review-loop.md","sha256":"afbc1430fa6ea9f6edf0cc8c0d5f8079047411e5269f43fdb5c9533be71ce9ad","size":15270},{"mode":420,"path":"docs/agents/review-gates.md","sha256":"15d2265dbdccd1040a77c11e7b95fe66fc1139e657e6765ce1cc151e5d4b868b","size":2410},{"mode":420,"path":"docs/agents/review-protocol.md","sha256":"daab893e86841737892366a6da1df5226b2b666fcaf667b8479900f529ba7d55","size":8918},{"mode":420,"path":"docs/agents/tool-usage.md","sha256":"b6ade11865a46a5a28d4823c1b70318453f4d350cfc62d2969aa06d73c47be4b","size":4321},{"mode":420,"path":"operations/acceptance-proof/SKILL.md","sha256":"19445e1810ff3e5782ac27c17ad5f35a85a05a77ecc384624821f8298af6a7db","size":166},{"mode":420,"path":"operations/ambiguity-review/SKILL.md","sha256":"3b7506473b4d5ddcd9f827350d6da9216291e6dc62a6636c5f773d756053b086","size":346},{"mode":420,"path":"operations/cleanup-review/SKILL.md","sha256":"6d01e8a4ddf1b3363ff8b7793e496f6933ede4ff629b1a7b2474bd8a20697a7e","size":162},{"mode":420,"path":"operations/code-review/SKILL.md","sha256":"627e786c9489305a8431c564e9342f0e040c4ced29289aa21dade268fe370e39","size":156},{"mode":420,"path":"operations/implementation/SKILL.md","sha256":"0791d4593f0b8a6465f9916bfd23116097cf2eefed0c715c506e450e1eac62d4","size":165},{"mode":420,"path":"operations/spec-author/SKILL.md","sha256":"7750a639a0b8db0cd93be4057c91ee508dc72502b90ac57a363c655ba08a62ca","size":206},{"mode":420,"path":"operations/spec-implementation/SKILL.md","sha256":"46e42f702514b25d2935d251ca7748a083f28c60353fb19058c03f8826aaa6ea","size":196},{"mode":420,"path":"operations/spec-review/SKILL.md","sha256":"dde1323508b5024074f2f0e052bcf69fbebebe7bb1f46708b6b484720342f56a","size":161},{"mode":420,"path":"operations/triage/SKILL.md","sha256":"6e7aca4b35b3532a4bcda3dca8b69149bd0bf5527217093b6dfe0fb89fa4a409","size":182},{"mode":420,"path":"profiles/analyst_deep.toml","sha256":"06335e3a13b07ef3d7deb9b546a6dad5d765edfa6dbf21c1c4d516e843a4352f","size":380},{"mode":420,"path":"profiles/implementer_deep.toml","sha256":"f6b306fec4de431029dde01ae4236797ff200c8c8b24dd52ebe33bbd7d5f1ed9","size":849},{"mode":420,"path":"profiles/implementer_standard.toml","sha256":"4074f45ea6fb615382de7ddf04e4ab824185e01932290b95764ff63a3711824e","size":750},{"mode":420,"path":"profiles/proof_agent.toml","sha256":"2fbaf1145a11cb5c574bf1ed7333187d284ed0c3c3d6260c628f82057b8b04e7","size":446},{"mode":420,"path":"profiles/researcher_standard.toml","sha256":"ff9d47e27f3a8673e44798ffab0ec28f5fa6ed4eb5b2b5b052ce90151aecb36b","size":929},{"mode":420,"path":"profiles/reviewer_deep.toml","sha256":"15ef121b641265a85d0647c46f6dd93d4a9abd8c09bcc746c41e4ca6b4c9af41","size":648},{"mode":420,"path":"profiles/reviewer_fast.toml","sha256":"85562db714eca4dabaf64a6a989797ec54ccd3032a04392963aac8ac100d5d81","size":581},{"mode":420,"path":"profiles/reviewer_standard.toml","sha256":"0a26b24f98b7e8d0ec049cb6fbe623d5da838b2fe71b5accd59bf364a9c97e5c","size":585},{"mode":420,"path":"schemas/ambiguity-review-v1.json","sha256":"48d946ad8e91bd1908d8993ef631b1701ad3cd7a79f34368a07942d7774afeff","size":524},{"mode":420,"path":"schemas/code-review-v1.json","sha256":"8664163c561c98df6842e485a24d12b7857add95aeb75c54eb400536b5f85a19","size":2573},{"mode":420,"path":"schemas/implementation-report-v1.json","sha256":"a1b580dad03af9be74d895d38a2f6aa9398b6d772c944dc398dac5aca0630d2e","size":1573},{"mode":420,"path":"schemas/proof-report-v1.json","sha256":"e02812f0fd882cb29bb634b61a955b8dcd7d42794010201b7e0a1d6260a0f0d5","size":10280},{"mode":420,"path":"schemas/spec-author-v1.json","sha256":"49f945362d1184ad628584b91fbbe75323d13bafa4ca3876093387a9fca06214","size":420},{"mode":420,"path":"schemas/spec-review-v1.json","sha256":"fe9fdd389bcb4c3b7d19609184caf3af4b89e7c1d1e71a7ba0c55c72c5d5562d","size":1386},{"mode":420,"path":"schemas/triage-route-v1.json","sha256":"3ca7ed29237f42e12567797d145d90dd4f1f48fa1e81a7da67434c19747753d8","size":5894},{"mode":420,"path":"skills/acceptance-proof/SKILL.md","sha256":"5a0f2dcd62a43da86a7627c70c86bde86e78c06929675073ee37727e3f06fc65","size":1683},{"mode":420,"path":"skills/acceptance-proof/agents/openai.yaml","sha256":"d602d9f2e1bf618a71171729c6f354dd137c939cb433bd49afec678360e1189f","size":265},{"mode":420,"path":"skills/acceptance-proof/references/android.md","sha256":"b9396d1327ffc19f91b73c2470222871e403ea1d0f3de58025e689a92691a842","size":3022},{"mode":420,"path":"skills/acceptance-proof/references/browser.md","sha256":"ceefa4fd7db475b6162368511c2742b6d9c6af58d48e7d5d8a773ed5cc3938c4","size":2281},{"mode":420,"path":"skills/acceptance-proof/references/ios.md","sha256":"ae18be2632e1f7c3aa0810a1bafafc7760c807b30b1269408825aa14c224d493","size":2486},{"mode":420,"path":"skills/acceptance-proof/tools/android-lease.mjs","sha256":"982c426dd5b3a90f74e5120783b3a24fa98d8218d0f4140e756187865b48d708","size":11393},{"mode":420,"path":"skills/acceptance-proof/tools/ios-lease.mjs","sha256":"6e1e0d95c6a8b2d42c34de05bd4446eac23e3916bffccb027f236b8a8a1809a3","size":13834},{"mode":420,"path":"skills/agent-auto/SKILL.md","sha256":"5b80918ec9de52fe033dfccc75e3b68b9f1a09c5f1c2664c7d481dd18dc96664","size":1225},{"mode":420,"path":"skills/agent-auto/agents/openai.yaml","sha256":"79a70421300891e3130fc7535c4aa37e01931ff353fbd7b83262c6fcf2032b71","size":266},{"mode":420,"path":"skills/cleanup-review/SKILL.md","sha256":"85019d95a6b89701ca23845c042bc22f0c63b45b304d6589565e3657dabd7c8f","size":5218},{"mode":420,"path":"skills/cleanup-review/agents/openai.yaml","sha256":"9d8f8bba6586bcdf8acf5fc9ee174995c12eece56601ed29198435b5fa3a3665","size":288},{"mode":420,"path":"skills/code-review/SKILL.md","sha256":"af50264fbd83a9eb2038bba1bda327804da2f5a8dabf17b30f86765549272ebf","size":14344},{"mode":420,"path":"skills/code-review/agents/openai.yaml","sha256":"c2697212427a5e119d9127e2f9000594e6c2eb7696e7a40604da7149c79ce478","size":278},{"mode":420,"path":"skills/code-review/references/bug-classes.md","sha256":"1f8648af9914cbd7553d045915f959df0f3b50a88e97c3beefeb955342e7b12d","size":4062},{"mode":420,"path":"skills/code-review/references/framework-lenses.md","sha256":"ca9e7cb09f32f729cec5522e8ff7c7dcc43f76ef986e701e9c0a226514912cd8","size":1820},{"mode":420,"path":"skills/code-review/references/targeted-recipes.md","sha256":"921b422958c97e606637d3fa2d2628239d9176f0316c7e45bbc55b20a22fe3c1","size":2564},{"mode":420,"path":"skills/codebase-design/DEEPENING.md","sha256":"afa68a77f4f3199a22f5d1800a4592034edefc4980367adc91b53d5738ec3dfd","size":1899},{"mode":420,"path":"skills/codebase-design/DESIGN-IT-TWICE.md","sha256":"dff3a61e68b38b82917e397123e2ea545368d827d336a391081bf9bc3cf297ac","size":2656},{"mode":420,"path":"skills/codebase-design/SKILL.md","sha256":"fe6bce73dfd9fc0fedb9ae635c2fcb6a4cdc686be46b9fbd30d5088cf82ae45e","size":4627},{"mode":420,"path":"skills/codebase-design/agents/openai.yaml","sha256":"6e89c19d29ccebd5ab74a133e345fec04a3891eb0ceb5686ea8c0a76ae8d23aa","size":369},{"mode":420,"path":"skills/diagnosing-bugs/SKILL.md","sha256":"9a3457d4f12e3810041def93456a0c020df0842200737bf7ecaf06471991c16c","size":9097},{"mode":420,"path":"skills/diagnosing-bugs/agents/openai.yaml","sha256":"eca84840bc193ce63cc7aad93d9e7b5f2541739b7bf682e5fa9eded3a8060787","size":262},{"mode":420,"path":"skills/diagnosing-bugs/scripts/hitl-loop.template.sh","sha256":"b2932630950e5210075bcd6f850e5accf30c101c5367b29eac3a29b4dd8084c8","size":1164},{"mode":420,"path":"skills/implementation-spec-maker/SKILL.md","sha256":"4be042b3348e74119f9c2857fcdc759e9585605be3aa4ec4196affaf642bc90d","size":7526},{"mode":420,"path":"skills/implementation-spec-maker/agents/openai.yaml","sha256":"a4457f3e2f08cb07694855d362103b6a628c82b262950409268145348e2d91dd","size":363},{"mode":420,"path":"skills/implementation-spec-maker/references/source-modes.md","sha256":"471f0f58668b414438effbf91398022327fcbd43f40cc0801080994fe02bda3b","size":1920},{"mode":420,"path":"skills/implementation-spec-maker/references/spec-template.md","sha256":"46874dcd247a4f5d30b81453ae5a7f6758861b3bc346f30ae3a1d9dec0853bea","size":5308},{"mode":420,"path":"skills/implementation-spec-review/SKILL.md","sha256":"bd5a86063b90aae3b0c381bf7a959b4166d0e9445de03e72df6ae1e617b5d790","size":16135},{"mode":420,"path":"skills/implementation-spec-review/agents/openai.yaml","sha256":"600f9cc4e4f42596e3bf48601a508ddf055efcc396478d5e339d024973f4fb05","size":277},{"mode":420,"path":"skills/research/SKILL.md","sha256":"04ff21cf57c1044ff1ce98cfa5c5baf9d4ffa7dd32f06be833e38af94d02e7eb","size":4593},{"mode":420,"path":"skills/research/agents/openai.yaml","sha256":"4475cf777225f81a1c45937389d55f2b485b039b36e8378ef6b001e24f3fd1fe","size":254},{"mode":420,"path":"skills/small-task-implementer/SKILL.md","sha256":"137436142da6abe5565f4d24a94e515e4a239decd0710264872b25b30375e71d","size":4105},{"mode":420,"path":"skills/small-task-implementer/agents/openai.yaml","sha256":"81569b6dfd97de60b53f092528140a5e5043f9adcc9262debff7bc912e278958","size":261},{"mode":420,"path":"skills/spec-implementer/SKILL.md","sha256":"7095c732407a12e5f2fb25418df57ebe8ec8de7833e4091d3d87f44e1513beca","size":14590},{"mode":420,"path":"skills/spec-implementer/agents/openai.yaml","sha256":"84ef664ae3538e264fe6746917f081d34eac0738dc28764ddf27d7a448b3615d","size":341},{"mode":420,"path":"skills/tdd/SKILL.md","sha256":"ce19907ebfa2f1f8688359fbbee334a069def61e5341967527c8eebb8d996373","size":3461},{"mode":420,"path":"skills/tdd/agents/openai.yaml","sha256":"29e15aec650cf5ab74ae44485d2eef820d2c384b575c14957adda8f3dae9f66d","size":275},{"mode":420,"path":"skills/tdd/interface-design.md","sha256":"764c5ff0e3fa6b4ab7095eb65ccc7201e090baf19fa16051dfdb72c06d27417d","size":653},{"mode":420,"path":"skills/tdd/mocking.md","sha256":"3ceb807fdf4a47d6a93d4d9a891e5ba6d362a6247bd08adc451feebfc17361ef","size":1481},{"mode":420,"path":"skills/tdd/refactoring.md","sha256":"54fced22dd1911b7094c3fe7979b7c1a40d40be307482c4adf7dc0588f27d6cc","size":387},{"mode":420,"path":"skills/tdd/tests.md","sha256":"6773173a074569b2e51653bd7b95c097d602dbb4815d1cf1c87344705c4e0d1c","size":2228},{"mode":420,"path":"skills/triage/AGENT-BRIEF.md","sha256":"053cd013e1c2c9275111aa6e4b5a12e9838f8d6cd888e8ca0ccaaac576fd74df","size":7070},{"mode":420,"path":"skills/triage/OUT-OF-SCOPE.md","sha256":"8ed8cf27833444060c81b3961a83c0e3d8e6cf2fcb2ddf6f8b07c6655cbb0d85","size":4282},{"mode":420,"path":"skills/triage/SKILL.md","sha256":"5c7c84189fd5146ec1ae55a5669c74372ed7bce588fa7b8523417aa55b312a2e","size":8273},{"mode":420,"path":"skills/triage/agents/openai.yaml","sha256":"466bc430f95132bc6b28d077d50865d4b1fd9218307582343c35b0baf66d7894","size":283},{"mode":420,"path":"skills/ui-evidence-proof/SKILL.md","sha256":"06c2087b6b2df5265d1fe47b3f87dce1b5dc581c15c05176377741785572c1ad","size":6235},{"mode":420,"path":"skills/ui-evidence-proof/agents/openai.yaml","sha256":"0835da6b3a0439f515f1691748d6cf810b421fd58b24de8bc6b1f03b0d5e3c2e","size":374}],"generationHash":"df5ba62363dd5dd1eb502b036b34e8d10a2a4b5df59115ca21f40cca29d770e5","operations":{"acceptance-proof":{"entry":"operations/acceptance-proof/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/acceptance-proof/SKILL.md","profiles/proof_agent.toml","schemas/proof-report-v1.json","skills/acceptance-proof/SKILL.md","skills/acceptance-proof/agents/openai.yaml","skills/acceptance-proof/references/android.md","skills/acceptance-proof/references/browser.md","skills/acceptance-proof/references/ios.md","skills/acceptance-proof/tools/android-lease.mjs","skills/acceptance-proof/tools/ios-lease.mjs"],"id":"acceptance-proof","outputSchema":"schemas/proof-report-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"proof-only","sandboxMode":"workspace-write","worktreeAccess":"write","writableRootClasses":["worktree"]},"profile":"proof_agent","sourceSkill":"acceptance-proof"},"ambiguity-review":{"entry":"operations/ambiguity-review/SKILL.md","files":["operations/ambiguity-review/SKILL.md","profiles/reviewer_deep.toml","schemas/ambiguity-review-v1.json"],"id":"ambiguity-review","outputSchema":"schemas/ambiguity-review-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"reviewer_deep","sourceSkill":null},"cleanup-review":{"entry":"operations/cleanup-review/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/cleanup-review/SKILL.md","profiles/reviewer_standard.toml","schemas/code-review-v1.json","skills/cleanup-review/SKILL.md","skills/cleanup-review/agents/openai.yaml"],"id":"cleanup-review","outputSchema":"schemas/code-review-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"reviewer_standard","sourceSkill":"cleanup-review"},"code-review":{"entry":"operations/code-review/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/code-review/SKILL.md","profiles/reviewer_deep.toml","schemas/code-review-v1.json","skills/code-review/SKILL.md","skills/code-review/agents/openai.yaml","skills/code-review/references/bug-classes.md","skills/code-review/references/framework-lenses.md","skills/code-review/references/targeted-recipes.md"],"id":"code-review","outputSchema":"schemas/code-review-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"reviewer_deep","sourceSkill":"code-review"},"implementation":{"entry":"operations/implementation/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/implementation/SKILL.md","profiles/implementer_standard.toml","schemas/implementation-report-v1.json","skills/agent-auto/SKILL.md","skills/agent-auto/agents/openai.yaml"],"id":"implementation","outputSchema":"schemas/implementation-report-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"change-set","sandboxMode":"workspace-write","worktreeAccess":"write","writableRootClasses":["worktree"]},"profile":"implementer_standard","sourceSkill":"agent-auto"},"spec-author":{"entry":"operations/spec-author/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/spec-author/SKILL.md","profiles/implementer_standard.toml","schemas/spec-author-v1.json","skills/implementation-spec-maker/SKILL.md","skills/implementation-spec-maker/agents/openai.yaml","skills/implementation-spec-maker/references/source-modes.md","skills/implementation-spec-maker/references/spec-template.md"],"id":"spec-author","outputSchema":"schemas/spec-author-v1.json","policy":{"approvalCeiling":"never","cwdClass":"target-state","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"spec-only","sandboxMode":"workspace-write","worktreeAccess":"write","writableRootClasses":["target-state"]},"profile":"implementer_standard","sourceSkill":"implementation-spec-maker"},"spec-implementation":{"entry":"operations/spec-implementation/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/spec-implementation/SKILL.md","profiles/implementer_standard.toml","schemas/implementation-report-v1.json","skills/spec-implementer/SKILL.md","skills/spec-implementer/agents/openai.yaml"],"id":"spec-implementation","outputSchema":"schemas/implementation-report-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"change-set","sandboxMode":"workspace-write","worktreeAccess":"write","writableRootClasses":["worktree"]},"profile":"implementer_standard","sourceSkill":"spec-implementer"},"spec-review":{"entry":"operations/spec-review/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/spec-review/SKILL.md","profiles/reviewer_deep.toml","schemas/spec-review-v1.json","skills/implementation-spec-review/SKILL.md","skills/implementation-spec-review/agents/openai.yaml"],"id":"spec-review","outputSchema":"schemas/spec-review-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"reviewer_deep","sourceSkill":"implementation-spec-review"},"triage":{"entry":"operations/triage/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","operations/triage/SKILL.md","profiles/analyst_deep.toml","schemas/triage-route-v1.json","skills/triage/AGENT-BRIEF.md","skills/triage/OUT-OF-SCOPE.md","skills/triage/SKILL.md","skills/triage/agents/openai.yaml"],"id":"triage","outputSchema":"schemas/triage-route-v1.json","policy":{"approvalCeiling":"never","cwdClass":"worktree","externalWrite":false,"mcpTools":[],"network":"deny","networkHosts":[],"runnerPostcondition":"report-only","sandboxMode":"read-only","worktreeAccess":"read-only","writableRootClasses":[]},"profile":"analyst_deep","sourceSkill":"triage"}},"profiles":{"analyst_deep":"profiles/analyst_deep.toml","implementer_deep":"profiles/implementer_deep.toml","implementer_standard":"profiles/implementer_standard.toml","proof_agent":"profiles/proof_agent.toml","researcher_standard":"profiles/researcher_standard.toml","reviewer_deep":"profiles/reviewer_deep.toml","reviewer_fast":"profiles/reviewer_fast.toml","reviewer_standard":"profiles/reviewer_standard.toml"},"skills":{"acceptance-proof":{"entry":"skills/acceptance-proof/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/acceptance-proof/SKILL.md","skills/acceptance-proof/agents/openai.yaml","skills/acceptance-proof/references/android.md","skills/acceptance-proof/references/browser.md","skills/acceptance-proof/references/ios.md","skills/acceptance-proof/tools/android-lease.mjs","skills/acceptance-proof/tools/ios-lease.mjs"],"metadata":"skills/acceptance-proof/agents/openai.yaml"},"agent-auto":{"entry":"skills/agent-auto/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/agent-auto/SKILL.md","skills/agent-auto/agents/openai.yaml"],"metadata":"skills/agent-auto/agents/openai.yaml"},"cleanup-review":{"entry":"skills/cleanup-review/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/cleanup-review/SKILL.md","skills/cleanup-review/agents/openai.yaml"],"metadata":"skills/cleanup-review/agents/openai.yaml"},"code-review":{"entry":"skills/code-review/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/code-review/SKILL.md","skills/code-review/agents/openai.yaml","skills/code-review/references/bug-classes.md","skills/code-review/references/framework-lenses.md","skills/code-review/references/targeted-recipes.md"],"metadata":"skills/code-review/agents/openai.yaml"},"codebase-design":{"entry":"skills/codebase-design/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/codebase-design/DEEPENING.md","skills/codebase-design/DESIGN-IT-TWICE.md","skills/codebase-design/SKILL.md","skills/codebase-design/agents/openai.yaml"],"metadata":"skills/codebase-design/agents/openai.yaml"},"diagnosing-bugs":{"entry":"skills/diagnosing-bugs/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/diagnosing-bugs/SKILL.md","skills/diagnosing-bugs/agents/openai.yaml","skills/diagnosing-bugs/scripts/hitl-loop.template.sh"],"metadata":"skills/diagnosing-bugs/agents/openai.yaml"},"implementation-spec-maker":{"entry":"skills/implementation-spec-maker/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/implementation-spec-maker/SKILL.md","skills/implementation-spec-maker/agents/openai.yaml","skills/implementation-spec-maker/references/source-modes.md","skills/implementation-spec-maker/references/spec-template.md"],"metadata":"skills/implementation-spec-maker/agents/openai.yaml"},"implementation-spec-review":{"entry":"skills/implementation-spec-review/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/implementation-spec-review/SKILL.md","skills/implementation-spec-review/agents/openai.yaml"],"metadata":"skills/implementation-spec-review/agents/openai.yaml"},"research":{"entry":"skills/research/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/research/SKILL.md","skills/research/agents/openai.yaml"],"metadata":"skills/research/agents/openai.yaml"},"small-task-implementer":{"entry":"skills/small-task-implementer/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/small-task-implementer/SKILL.md","skills/small-task-implementer/agents/openai.yaml"],"metadata":"skills/small-task-implementer/agents/openai.yaml"},"spec-implementer":{"entry":"skills/spec-implementer/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/spec-implementer/SKILL.md","skills/spec-implementer/agents/openai.yaml"],"metadata":"skills/spec-implementer/agents/openai.yaml"},"tdd":{"entry":"skills/tdd/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/tdd/SKILL.md","skills/tdd/agents/openai.yaml","skills/tdd/interface-design.md","skills/tdd/mocking.md","skills/tdd/refactoring.md","skills/tdd/tests.md"],"metadata":"skills/tdd/agents/openai.yaml"},"triage":{"entry":"skills/triage/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/triage/AGENT-BRIEF.md","skills/triage/OUT-OF-SCOPE.md","skills/triage/SKILL.md","skills/triage/agents/openai.yaml"],"metadata":"skills/triage/agents/openai.yaml"},"ui-evidence-proof":{"entry":"skills/ui-evidence-proof/SKILL.md","files":["docs/agents/artifact-review-loop.md","docs/agents/bug-workflow-routing.md","docs/agents/coding-skill-routing.md","docs/agents/confidence-rubric.md","docs/agents/contract-test-ledger.md","docs/agents/implementation-review-loop.md","docs/agents/review-gates.md","docs/agents/review-protocol.md","docs/agents/tool-usage.md","skills/ui-evidence-proof/SKILL.md","skills/ui-evidence-proof/agents/openai.yaml"],"metadata":"skills/ui-evidence-proof/agents/openai.yaml"}},"sourceFingerprint":"c7192bf50b93417bc56ab78cb07fc5a5d3b56f80c5b0dce5c55f01944d2a1fd6","version":1}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
# Fresh Ambiguity Review Operation
|
|
2
|
+
|
|
3
|
+
Independently verify that a supplied waiting candidate contains at least two materially different product outcomes and no source-authorized choice. Technical, architecture, test, and tool choices are never product ambiguity. Do not edit files or external state. Return only `schemas/ambiguity-review-v1.json`.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
name = "analyst_deep"
|
|
2
|
+
description = "Deep read-only analysis for ambiguous architecture, contracts, and root causes."
|
|
3
|
+
nickname_candidates = ["Sage"]
|
|
4
|
+
model = "gpt-5.6-sol"
|
|
5
|
+
model_reasoning_effort = "xhigh"
|
|
6
|
+
sandbox_mode = "read-only"
|
|
7
|
+
developer_instructions = """
|
|
8
|
+
Analyze only. Build evidence-backed conclusions and recommendations; leave final decisions and edits to the parent.
|
|
9
|
+
"""
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
name = "implementer_deep"
|
|
2
|
+
description = "Write-capable implementation worker for an isolated approved slice with material technical uncertainty."
|
|
3
|
+
nickname_candidates = ["Foundry", "Helix", "Vector"]
|
|
4
|
+
model = "gpt-5.6-sol"
|
|
5
|
+
model_reasoning_effort = "high"
|
|
6
|
+
sandbox_mode = "workspace-write"
|
|
7
|
+
developer_instructions = """
|
|
8
|
+
Implement only the assigned isolated high-complexity ticket slice. Resolve technical uncertainty from repository evidence without changing approved product behavior, ownership, or slice boundaries. Respect exclusive write scope and stop on overlap or decision drift. You are not alone in the repository: preserve unrelated and concurrent changes and never revert work you do not own. Use behavior-first proof and return changed files, acceptance proof, skipped checks, risks, decision deltas, and blockers to the root integrator.
|
|
9
|
+
"""
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
name = "implementer_standard"
|
|
2
|
+
description = "Write-capable implementation worker for one approved, bounded ticket slice."
|
|
3
|
+
nickname_candidates = ["Forge", "Mason", "Builder"]
|
|
4
|
+
model = "gpt-5.6-sol"
|
|
5
|
+
model_reasoning_effort = "medium"
|
|
6
|
+
sandbox_mode = "workspace-write"
|
|
7
|
+
developer_instructions = """
|
|
8
|
+
Implement only the assigned approved ticket slice through its observable interface. Respect the exact write scope, tests, exclusions, and stop conditions. You are not alone in the repository: preserve unrelated and concurrent changes, never revert work you do not own, and report overlap before editing. Use behavior-first proof for behavior changes and return changed files, acceptance proof, skipped checks, risks, and blockers to the root integrator.
|
|
9
|
+
"""
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
name = "proof_agent"
|
|
2
|
+
description = "Write-capable contained proof worker; Runner enforces proof-only postconditions."
|
|
3
|
+
model = "gpt-5.6-sol"
|
|
4
|
+
model_reasoning_effort = "high"
|
|
5
|
+
sandbox_mode = "workspace-write"
|
|
6
|
+
developer_instructions = """
|
|
7
|
+
Prove only the frozen criteria. Write only proof evidence requested by the Runner, never product behavior, Git history, GitHub state, publication state, or credentials. Return the exact supplied JSON schema.
|
|
8
|
+
"""
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
name = "researcher_standard"
|
|
2
|
+
description = "Read-only external research against primary sources with claim-level citations."
|
|
3
|
+
nickname_candidates = ["Atlas", "Index", "Scribe"]
|
|
4
|
+
model = "gpt-5.6-sol"
|
|
5
|
+
model_reasoning_effort = "medium"
|
|
6
|
+
sandbox_mode = "read-only"
|
|
7
|
+
developer_instructions = """
|
|
8
|
+
Research one bounded external question from the supplied Research Capsule. Prefer official documentation, specifications, first-party source code, changelogs, release notes, issue trackers, APIs, and schemas. Map every material claim to the exact primary source and include source version/date when available. Separate sourced facts from repository inference; expose conflicts, stale evidence, uncertainty, and missing proof. Never edit files, create artifacts, change code, or broaden into unrelated reading. Return a concise short answer, claim-to-source ledger, decision implications, and unresolved questions to the root integrator.
|
|
9
|
+
"""
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
name = "reviewer_deep"
|
|
2
|
+
description = "Independent read-only reviewer for plans, specs, code, cleanup, and security."
|
|
3
|
+
nickname_candidates = ["Atlas", "Delta", "Echo"]
|
|
4
|
+
model = "gpt-5.6-sol"
|
|
5
|
+
model_reasoning_effort = "high"
|
|
6
|
+
sandbox_mode = "read-only"
|
|
7
|
+
developer_instructions = """
|
|
8
|
+
Review adversarially and exhaustively. Trace contracts, authorization, failure recovery, concurrency, and state transitions. For code, inspect every external side effect and verify asynchronous work is awaited or returned. Never edit files; return proposed fixes to the parent. Report only concrete findings with evidence, severity, confidence, and verification gaps.
|
|
9
|
+
"""
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
name = "reviewer_fast"
|
|
2
|
+
description = "Fast independent read-only reviewer for simple plans, specs, tickets, cleanup, and code changes."
|
|
3
|
+
nickname_candidates = ["Dash", "Jet", "Swift"]
|
|
4
|
+
model = "gpt-5.6-terra"
|
|
5
|
+
model_reasoning_effort = "medium"
|
|
6
|
+
sandbox_mode = "read-only"
|
|
7
|
+
developer_instructions = """
|
|
8
|
+
Review independently and proportionately. Prioritize concrete correctness, scope, contract, and verification gaps; avoid speculative edge cases and cosmetic comments. Never edit files. Return concise findings with evidence, severity, confidence, and proposed fixes to the parent.
|
|
9
|
+
"""
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
name = "reviewer_standard"
|
|
2
|
+
description = "Independent read-only reviewer for medium-risk plans, specs, tickets, cleanup, and code changes."
|
|
3
|
+
nickname_candidates = ["Aster", "Quill", "Vega"]
|
|
4
|
+
model = "gpt-5.6-sol"
|
|
5
|
+
model_reasoning_effort = "medium"
|
|
6
|
+
sandbox_mode = "read-only"
|
|
7
|
+
developer_instructions = """
|
|
8
|
+
Review independently and proportionately. Trace the changed behavior, ownership, contracts, failure paths, and validation without expanding scope. Never edit files. Return concrete findings with evidence, severity, confidence, verification gaps, and proposed fixes to the parent.
|
|
9
|
+
"""
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"additionalProperties":false,"properties":{"candidateSha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"evidenceReviewed":{"items":{"minLength":1,"type":"string"},"type":"array"},"findings":{"items":{"minLength":1,"type":"string"},"type":"array"},"recommendation":{"minLength":1,"type":"string"},"verdict":{"enum":["approved","rejected","blocked"],"type":"string"},"version":{"const":1,"type":"integer"}},"required":["version","candidateSha256","verdict","evidenceReviewed","findings","recommendation"],"type":"object"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"object","additionalProperties":false,"required":["report"],"properties":{"report":{"type":"object","additionalProperties":false,"required":["version","operation","targetRevision","targetFingerprint","verdict","mode","coverage","defects","residualRisks","reviewerSessionId","closureRequestSha256","repairFindingOutcomes"],"properties":{"version":{"type":"integer","const":1},"operation":{"type":"string","enum":["cleanup-review","code-review"]},"targetRevision":{"type":"integer","minimum":1},"targetFingerprint":{"type":"string","pattern":"^[0-9a-f]{64}$"},"verdict":{"type":"string","enum":["approved","needs-work","rejected"]},"mode":{"type":"string","enum":["full","closure"]},"coverage":{"type":"array","maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"defects":{"type":"array","maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["id","class","severity","confidence","status","invariant","failure","evidence","repair","affectedTargets","introducedTargetRevision","statusTargetRevision","supersededBy"],"properties":{"id":{"type":"string","minLength":1,"maxLength":16384},"class":{"type":"string","enum":["blocker","execution-risk","improvement"]},"severity":{"type":"string","enum":["critical","high","medium","low"]},"confidence":{"type":"string","enum":["high","medium","low"]},"status":{"type":"string","enum":["open","fixed","verified","reopened","superseded"]},"invariant":{"type":"string","minLength":1,"maxLength":16384},"failure":{"type":"string","minLength":1,"maxLength":16384},"evidence":{"type":"array","maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"repair":{"type":"string","minLength":1,"maxLength":16384},"affectedTargets":{"type":"array","maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"introducedTargetRevision":{"type":"integer","minimum":1},"statusTargetRevision":{"type":"integer","minimum":1},"supersededBy":{"anyOf":[{"type":"string","minLength":1,"maxLength":16384},{"type":"null"}]}}}},"residualRisks":{"type":"array","maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"reviewerSessionId":{"type":"string","minLength":1,"maxLength":16384},"closureRequestSha256":{"anyOf":[{"type":"string","pattern":"^[0-9a-f]{64}$"},{"type":"null"}]},"repairFindingOutcomes":{"type":"array","maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["id","status"],"properties":{"id":{"type":"string","minLength":1,"maxLength":16384},"status":{"type":"string","enum":["verified","reopened"]}}}}}}}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"object","additionalProperties":false,"required":["report"],"properties":{"report":{"anyOf":[{"type":"object","additionalProperties":false,"required":["version","status","summary","changedFiles","residualRisks"],"properties":{"version":{"type":"integer","const":1},"summary":{"type":"string","minLength":1,"maxLength":4096},"changedFiles":{"type":"array","maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384,"pattern":"^[^/\\\\]$|^[^/\\\\][^\\\\]*[^/\\\\]$"},"minItems":1},"residualRisks":{"type":"array","maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"status":{"type":"string","const":"completed"}}},{"type":"object","additionalProperties":false,"required":["version","status","summary","changedFiles","residualRisks","blocker"],"properties":{"version":{"type":"integer","const":1},"summary":{"type":"string","minLength":1,"maxLength":4096},"changedFiles":{"type":"array","maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384,"pattern":"^[^/\\\\]$|^[^/\\\\][^\\\\]*[^/\\\\]$"}},"residualRisks":{"type":"array","maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"status":{"type":"string","const":"external-block"},"blocker":{"type":"object","additionalProperties":false,"required":["kind","summary","attempted"],"properties":{"kind":{"type":"string","enum":["credential","tool","service","product-decision"]},"summary":{"type":"string","minLength":1,"maxLength":4096},"attempted":{"type":"array","maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}}}}}}]}}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"object","additionalProperties":false,"required":["report"],"properties":{"report":{"type":"object","additionalProperties":false,"required":["version","status","decision","criteria","checks","artifacts","visualEvidence","findings","residualRisks","blocker"],"properties":{"version":{"type":"integer","const":1},"status":{"type":"string","enum":["passed","needs-rework","external-block"]},"decision":{"anyOf":[{"type":"object","additionalProperties":false,"required":["mode","targets"],"properties":{"mode":{"type":"string","const":"non-visual"},"targets":{"type":"array","maxItems":0,"items":{"type":"string","enum":["browser","android","ios"]}}}},{"type":"object","additionalProperties":false,"required":["mode","targets"],"properties":{"mode":{"type":"string","const":"visual"},"targets":{"type":"array","minItems":1,"maxItems":3,"items":{"type":"string","enum":["browser","android","ios"]}}}}]},"criteria":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["id","status","confidence","surfaces","evidenceRefs","analysis"],"properties":{"id":{"type":"string","minLength":1,"maxLength":16384},"status":{"type":"string","enum":["passed","failed","unknown"]},"confidence":{"type":"string","enum":["high","medium","low"]},"surfaces":{"type":"array","minItems":1,"maxItems":4,"items":{"type":"string","enum":["non-visual","browser","android","ios"]}},"evidenceRefs":{"type":"array","minItems":0,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"analysis":{"type":"string","minLength":1,"maxLength":4096}}}},"checks":{"type":"array","maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["id","command","status","summary","outputSha256"],"properties":{"id":{"type":"string","minLength":1,"maxLength":16384},"command":{"type":"string","minLength":1,"maxLength":16384},"status":{"type":"string","enum":["passed","failed"]},"summary":{"type":"string","minLength":1,"maxLength":4096},"outputSha256":{"type":"string","pattern":"^[0-9a-f]{64}$"}}}},"artifacts":{"type":"array","maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["id","kind","relativePath","sha256","publishable","description"],"properties":{"id":{"type":"string","minLength":1,"maxLength":16384},"kind":{"type":"string","enum":["command-output","static-inspection","generated-file","screenshot","dom-snapshot","console-log","network-log","ui-hierarchy","device-log","lease-record"]},"relativePath":{"type":"string","minLength":1,"maxLength":16384,"pattern":"^[^/\\\\]$|^[^/\\\\][^\\\\]*[^/\\\\]$"},"sha256":{"type":"string","pattern":"^[0-9a-f]{64}$"},"publishable":{"type":"boolean"},"description":{"type":"string","minLength":1,"maxLength":4096}}}},"visualEvidence":{"anyOf":[{"type":"object","additionalProperties":false,"required":["workflow","captures","diagnostics","freshness","layoutReview","copyReview"],"properties":{"workflow":{"type":"object","additionalProperties":false,"required":["entrypoint","steps","finalState"],"properties":{"entrypoint":{"type":"string","minLength":1,"maxLength":16384},"steps":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"finalState":{"type":"string","minLength":1,"maxLength":4096}}},"captures":{"type":"array","minItems":2,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["target","name","width","height","criteriaRefs","screenshotRef","stateRef"],"properties":{"target":{"type":"string","const":"browser"},"name":{"type":"string","minLength":1,"maxLength":16384},"width":{"type":"integer"},"height":{"type":"integer"},"criteriaRefs":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"screenshotRef":{"type":"string","minLength":1,"maxLength":16384},"stateRef":{"type":"string","minLength":1,"maxLength":16384}}}},"diagnostics":{"type":"object","additionalProperties":false,"required":["consoleRef","networkRef"],"properties":{"consoleRef":{"type":"string","minLength":1,"maxLength":16384},"networkRef":{"type":"string","minLength":1,"maxLength":16384}}},"freshness":{"type":"object","additionalProperties":false,"required":["capturedAfterFinalInteraction"],"properties":{"capturedAfterFinalInteraction":{"type":"boolean","const":true}}},"layoutReview":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["summary","evidenceRefs"],"properties":{"summary":{"type":"string","minLength":1,"maxLength":4096},"evidenceRefs":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}}}}},"copyReview":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["summary","evidenceRefs"],"properties":{"summary":{"type":"string","minLength":1,"maxLength":4096},"evidenceRefs":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}}}}}}},{"type":"object","additionalProperties":false,"required":["workflow","captures","diagnostics","lease","freshness","layoutReview","copyReview"],"properties":{"workflow":{"type":"object","additionalProperties":false,"required":["entrypoint","steps","finalState"],"properties":{"entrypoint":{"type":"string","minLength":1,"maxLength":16384},"steps":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"finalState":{"type":"string","minLength":1,"maxLength":4096}}},"captures":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["target","name","width","height","criteriaRefs","screenshotRef","stateRef"],"properties":{"target":{"type":"string","const":"android"},"name":{"type":"string","minLength":1,"maxLength":16384},"width":{"type":"integer"},"height":{"type":"integer"},"criteriaRefs":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"screenshotRef":{"type":"string","minLength":1,"maxLength":16384},"stateRef":{"type":"string","minLength":1,"maxLength":16384}}}},"diagnostics":{"type":"object","additionalProperties":false,"required":["deviceLogRef"],"properties":{"deviceLogRef":{"type":"string","minLength":1,"maxLength":16384}}},"lease":{"type":"object","additionalProperties":false,"required":["leaseRef"],"properties":{"leaseRef":{"type":"string","minLength":1,"maxLength":16384}}},"freshness":{"type":"object","additionalProperties":false,"required":["capturedAfterFinalInteraction"],"properties":{"capturedAfterFinalInteraction":{"type":"boolean","const":true}}},"layoutReview":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["summary","evidenceRefs"],"properties":{"summary":{"type":"string","minLength":1,"maxLength":4096},"evidenceRefs":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}}}}},"copyReview":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["summary","evidenceRefs"],"properties":{"summary":{"type":"string","minLength":1,"maxLength":4096},"evidenceRefs":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}}}}}}},{"type":"object","additionalProperties":false,"required":["workflow","captures","diagnostics","lease","freshness","layoutReview","copyReview"],"properties":{"workflow":{"type":"object","additionalProperties":false,"required":["entrypoint","steps","finalState"],"properties":{"entrypoint":{"type":"string","minLength":1,"maxLength":16384},"steps":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"finalState":{"type":"string","minLength":1,"maxLength":4096}}},"captures":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["target","name","width","height","criteriaRefs","screenshotRef","stateRef"],"properties":{"target":{"type":"string","const":"ios"},"name":{"type":"string","minLength":1,"maxLength":16384},"width":{"type":"integer"},"height":{"type":"integer"},"criteriaRefs":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"screenshotRef":{"type":"string","minLength":1,"maxLength":16384},"stateRef":{"type":"string","minLength":1,"maxLength":16384}}}},"diagnostics":{"type":"object","additionalProperties":false,"required":["deviceLogRef"],"properties":{"deviceLogRef":{"type":"string","minLength":1,"maxLength":16384}}},"lease":{"type":"object","additionalProperties":false,"required":["leaseRef"],"properties":{"leaseRef":{"type":"string","minLength":1,"maxLength":16384}}},"freshness":{"type":"object","additionalProperties":false,"required":["capturedAfterFinalInteraction"],"properties":{"capturedAfterFinalInteraction":{"type":"boolean","const":true}}},"layoutReview":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["summary","evidenceRefs"],"properties":{"summary":{"type":"string","minLength":1,"maxLength":4096},"evidenceRefs":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}}}}},"copyReview":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["summary","evidenceRefs"],"properties":{"summary":{"type":"string","minLength":1,"maxLength":4096},"evidenceRefs":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}}}}}}},{"type":"null"}]},"findings":{"type":"array","maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"residualRisks":{"type":"array","maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"blocker":{"anyOf":[{"type":"object","additionalProperties":false,"required":["kind","summary","attempted"],"properties":{"kind":{"type":"string","enum":["credential","tool","service","product-decision"]},"summary":{"type":"string","minLength":1,"maxLength":4096},"attempted":{"type":"array","maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}}}},{"type":"null"}]}}}}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"additionalProperties":false,"properties":{"blockers":{"items":{"minLength":1,"type":"string"},"type":"array"},"specPath":{"type":["string","null"]},"specSha256":{"type":["string","null"]},"status":{"enum":["ready","blocked"],"type":"string"},"summary":{"minLength":1,"type":"string"},"version":{"const":1,"type":"integer"}},"required":["version","status","specPath","specSha256","summary","blockers"],"type":"object"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"additionalProperties": false,
|
|
3
|
+
"properties": {
|
|
4
|
+
"acceptedRisks": {
|
|
5
|
+
"items": {
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"properties": {
|
|
8
|
+
"acceptedBy": { "minLength": 1, "type": "string" },
|
|
9
|
+
"defectId": { "minLength": 1, "type": "string" },
|
|
10
|
+
"policy": { "minLength": 1, "type": "string" },
|
|
11
|
+
"rationale": { "minLength": 1, "type": "string" }
|
|
12
|
+
},
|
|
13
|
+
"required": ["defectId", "rationale", "policy", "acceptedBy"],
|
|
14
|
+
"type": "object"
|
|
15
|
+
},
|
|
16
|
+
"type": "array"
|
|
17
|
+
},
|
|
18
|
+
"affectedContracts": { "items": { "minLength": 1, "type": "string" }, "type": "array" },
|
|
19
|
+
"affectedDefectIds": { "items": { "minLength": 1, "type": "string" }, "type": "array" },
|
|
20
|
+
"coverage": { "items": { "minLength": 1, "type": "string" }, "type": "array" },
|
|
21
|
+
"coverageInvalidated": { "type": "boolean" },
|
|
22
|
+
"defects": { "items": { "type": "object" }, "type": "array" },
|
|
23
|
+
"mode": { "enum": ["full", "closure"], "type": "string" },
|
|
24
|
+
"reviewerSessionId": { "minLength": 1, "type": "string" },
|
|
25
|
+
"verdict": { "enum": ["approved", "needs-work", "rejected"], "type": "string" },
|
|
26
|
+
"version": { "const": 1, "type": "integer" }
|
|
27
|
+
},
|
|
28
|
+
"required": ["version", "verdict", "mode", "coverage", "defects", "reviewerSessionId", "affectedDefectIds", "affectedContracts", "coverageInvalidated", "acceptedRisks"],
|
|
29
|
+
"type": "object"
|
|
30
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"object","additionalProperties":false,"required":["report"],"properties":{"report":{"anyOf":[{"type":"object","additionalProperties":false,"required":["version","status","inspectedEvidence","assumptions","direct","specRequired","awaitingUser","blocker"],"properties":{"version":{"type":"integer","const":1},"status":{"type":"string","const":"direct"},"inspectedEvidence":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["kind","location","summary"],"properties":{"kind":{"type":"string","enum":["issue","comment","code","caller","test","instruction","context","domain","adr","behavior"]},"location":{"type":"string","minLength":1,"maxLength":16384},"summary":{"type":"string","minLength":1,"maxLength":16384}}}},"assumptions":{"type":"array","minItems":0,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"direct":{"type":"object","additionalProperties":false,"required":["summary","behaviors","verification"],"properties":{"summary":{"type":"string","minLength":1,"maxLength":16384},"behaviors":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"verification":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}}}},"specRequired":{"type":"null"},"awaitingUser":{"type":"null"},"blocker":{"type":"null"}}},{"type":"object","additionalProperties":false,"required":["version","status","inspectedEvidence","assumptions","direct","specRequired","awaitingUser","blocker"],"properties":{"version":{"type":"integer","const":1},"status":{"type":"string","const":"spec-required"},"inspectedEvidence":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["kind","location","summary"],"properties":{"kind":{"type":"string","enum":["issue","comment","code","caller","test","instruction","context","domain","adr","behavior"]},"location":{"type":"string","minLength":1,"maxLength":16384},"summary":{"type":"string","minLength":1,"maxLength":16384}}}},"assumptions":{"type":"array","minItems":0,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"direct":{"type":"null"},"specRequired":{"type":"object","additionalProperties":false,"required":["summary","complexityReasons","specMode","reviewFocus"],"properties":{"summary":{"type":"string","minLength":1,"maxLength":16384},"complexityReasons":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"specMode":{"type":"string","enum":["compact","standard"]},"reviewFocus":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}}}},"awaitingUser":{"type":"null"},"blocker":{"type":"null"}}},{"type":"object","additionalProperties":false,"required":["version","status","inspectedEvidence","assumptions","direct","specRequired","awaitingUser","blocker"],"properties":{"version":{"type":"integer","const":1},"status":{"type":"string","const":"awaiting-user"},"inspectedEvidence":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["kind","location","summary"],"properties":{"kind":{"type":"string","enum":["issue","comment","code","caller","test","instruction","context","domain","adr","behavior"]},"location":{"type":"string","minLength":1,"maxLength":16384},"summary":{"type":"string","minLength":1,"maxLength":16384}}}},"assumptions":{"type":"array","minItems":0,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"direct":{"type":"null"},"specRequired":{"type":"null"},"awaitingUser":{"type":"object","additionalProperties":false,"required":["outcomes","absenceOfAuthorizedChoiceEvidence","recommendation","question"],"properties":{"outcomes":{"type":"array","minItems":2,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["id","title","behaviorDelta","evidence"],"properties":{"id":{"type":"string","minLength":1,"maxLength":16384},"title":{"type":"string","minLength":1,"maxLength":16384},"behaviorDelta":{"type":"string","minLength":1,"maxLength":16384},"evidence":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}}}}},"absenceOfAuthorizedChoiceEvidence":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"recommendation":{"type":"string","minLength":1,"maxLength":16384},"question":{"type":"string","minLength":1,"maxLength":16384}}},"blocker":{"type":"null"}}},{"type":"object","additionalProperties":false,"required":["version","status","inspectedEvidence","assumptions","direct","specRequired","awaitingUser","blocker"],"properties":{"version":{"type":"integer","const":1},"status":{"type":"string","const":"blocked"},"inspectedEvidence":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"object","additionalProperties":false,"required":["kind","location","summary"],"properties":{"kind":{"type":"string","enum":["issue","comment","code","caller","test","instruction","context","domain","adr","behavior"]},"location":{"type":"string","minLength":1,"maxLength":16384},"summary":{"type":"string","minLength":1,"maxLength":16384}}}},"assumptions":{"type":"array","minItems":0,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}},"direct":{"type":"null"},"specRequired":{"type":"null"},"awaitingUser":{"type":"null"},"blocker":{"type":"object","additionalProperties":false,"required":["kind","code","summary","evidence"],"properties":{"kind":{"type":"string","enum":["external","safety","exhausted"]},"code":{"type":"string","minLength":1,"maxLength":16384},"summary":{"type":"string","minLength":1,"maxLength":16384},"evidence":{"type":"array","minItems":1,"maxItems":256,"items":{"type":"string","minLength":1,"maxLength":16384}}}}}}]}}}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "cleanup-review"
|
|
3
|
+
description: "Run an independent post-implementation simplification review only when a concrete cleanup risk cannot fit final code review. Find removable duplication, obsolete paths, workarounds, and unjustified abstractions without re-reviewing correctness."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Cleanup Review
|
|
7
|
+
|
|
8
|
+
Use this skill after implementation has settled and before final `$code-review`.
|
|
9
|
+
It is a cleanup-only Adapter: its job is to reduce maintenance surface without
|
|
10
|
+
changing required observable behavior.
|
|
11
|
+
|
|
12
|
+
Do not invoke it separately from implementation size or risk classification.
|
|
13
|
+
The final `$code-review` spec/standards lens owns bounded hygiene for every
|
|
14
|
+
profile, with a dedicated parallel reviewer track for `high`. Use this Adapter
|
|
15
|
+
only when the user, approved source, or repo policy names a concrete evidenced
|
|
16
|
+
cleanup risk that cannot be covered proportionately by that lens.
|
|
17
|
+
|
|
18
|
+
When an Implementation Review Module schedules this Adapter, follow
|
|
19
|
+
`../../docs/agents/implementation-review-loop.md` for topology, state, defect
|
|
20
|
+
lifecycle, and Closure. Otherwise follow
|
|
21
|
+
`../../docs/agents/review-gates.md`. This skill does not create its own loop.
|
|
22
|
+
|
|
23
|
+
## Invocation Contract
|
|
24
|
+
|
|
25
|
+
- Use one profile-selected independent reviewer. Root never reviews or certifies cleanup inline.
|
|
26
|
+
- One logical activation spans the Full pass and every lineage-preserving Closure; protocol session rotation creates neither a new activation nor Full pass.
|
|
27
|
+
- Run one Full cleanup review only after the complete implementation diff and required validation have settled. Never run it per slice or re-enter cleanup after final code review starts.
|
|
28
|
+
- The implementation owner integrates accepted fixes. The reviewer remains read-only and returns evidence and bounded changes.
|
|
29
|
+
- If independent review is unavailable, report the gate as unavailable; do not substitute root self-review.
|
|
30
|
+
|
|
31
|
+
## In Scope
|
|
32
|
+
|
|
33
|
+
- duplicated logic, sources of truth, registrations, or old/new paths kept in parallel
|
|
34
|
+
- dead helpers, flags, adapters, branches, comments, tests, or documentation left by the change
|
|
35
|
+
- workaround-shaped conditionals, magic ordering, symptom patches, and unnecessary state
|
|
36
|
+
- compatibility or fallback behavior without current repository, source-authority, or production evidence
|
|
37
|
+
- new services, events/listeners, adapters, or indirection with one current consumer and only speculative reuse
|
|
38
|
+
- ownership placement only when moving or deleting code restores an existing owner without redesigning the system
|
|
39
|
+
- stale or duplicated tests/docs only when their cleanup debt is itself the finding
|
|
40
|
+
|
|
41
|
+
## Out Of Scope
|
|
42
|
+
|
|
43
|
+
- functional correctness, acceptance completeness, security, privacy, performance, or product decisions
|
|
44
|
+
- missing regression coverage or weak behavior proof by itself; route it to the scheduled code-review/test-quality lens
|
|
45
|
+
- broad architecture redesign, future extensibility, or a request for a new abstraction unrelated to removing current duplication
|
|
46
|
+
- discovery of new sibling edge cases in unchanged behavior
|
|
47
|
+
- style, naming, or formatting preferences without concrete maintenance cost
|
|
48
|
+
|
|
49
|
+
## Review Method
|
|
50
|
+
|
|
51
|
+
1. Pin the target revision/diff and source authority supplied by the Review Plan or root.
|
|
52
|
+
2. Inventory material additions, replacements, compatibility paths, and new runtime owners.
|
|
53
|
+
3. Classify each material complexity decision:
|
|
54
|
+
- `KEEP`: required by a current invariant and supported by evidence or a boundary proof.
|
|
55
|
+
- `SIMPLIFY`: required behavior can use a smaller existing seam or fewer states/branches.
|
|
56
|
+
- `REMOVE`: no current behavior, authority, consumer, or compatibility evidence requires it.
|
|
57
|
+
4. Report a finding only when it names exact evidence, concrete maintenance cost, and a behavior-preserving simplification. Uncertain removal becomes follow-up, not a guessed blocker.
|
|
58
|
+
|
|
59
|
+
A one-producer/one-consumer abstraction defaults to `SIMPLIFY` unless a concrete
|
|
60
|
+
lifecycle, transaction, dependency-direction, or fanout invariant requires the
|
|
61
|
+
boundary. Do not request a new abstraction unless it reduces current duplication
|
|
62
|
+
or restores an existing owner now.
|
|
63
|
+
|
|
64
|
+
For Module-scheduled Closure, inspect only accepted cleanup repairs and their
|
|
65
|
+
causal fan-out. Do not restart broad discovery or convert proof-only gaps into
|
|
66
|
+
cleanup defects.
|
|
67
|
+
|
|
68
|
+
In Module mode, reuse supplied stable cleanup IDs and return each as `verified`
|
|
69
|
+
or `reopened`. Hand settled decisions/IDs to final code review; that reviewer
|
|
70
|
+
rechecks hygiene only for a concrete regression caused by its own repair.
|
|
71
|
+
|
|
72
|
+
## Output
|
|
73
|
+
|
|
74
|
+
Return exactly:
|
|
75
|
+
|
|
76
|
+
1. `Verdict: Clean | Cleanup Needed | Cleanup Blocked`
|
|
77
|
+
2. `Final Coverage: cleanup-only`
|
|
78
|
+
3. `Decisions`: concise `KEEP | SIMPLIFY | REMOVE` records for material complexity, each with evidence and protected invariant or maintenance cost
|
|
79
|
+
4. `Findings`: actionable cleanup defects with supplied ID/lifecycle update, exact path/line evidence, and a behavior-preserving fix; otherwise `None`
|
|
80
|
+
5. `Follow-up Needed`: only risky removals or missing authority/evidence; otherwise `None`
|
|
81
|
+
|
|
82
|
+
`Cleanup Blocked` means the cleanup decision requires unavailable evidence or an
|
|
83
|
+
explicit product/ownership choice. It never means that correctness or test-quality
|
|
84
|
+
review should be performed inside this skill. Keep the result short and auditable.
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: "Cleanup Review"
|
|
3
|
+
short_description: "Exceptional independent simplification review"
|
|
4
|
+
default_prompt: "Use $cleanup-review only when an explicit concrete cleanup risk cannot fit the final code-review standards lens."
|
|
5
|
+
policy:
|
|
6
|
+
allow_implicit_invocation: true
|