codex-orchestrator 0.1.51 → 2.0.1
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 +27 -0
- package/README.md +45 -389
- package/dist/src/index.d.ts +16 -46
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +8 -24
- package/dist/src/index.js.map +1 -1
- package/dist/src/v2/acceptance-proof.d.ts +111 -0
- package/dist/src/v2/acceptance-proof.d.ts.map +1 -0
- package/dist/src/v2/acceptance-proof.js +427 -0
- package/dist/src/v2/acceptance-proof.js.map +1 -0
- package/dist/src/v2/adapters/command.d.ts.map +1 -0
- package/dist/src/v2/adapters/command.js.map +1 -0
- package/dist/src/v2/adapters/durable-atomic-file.d.ts.map +1 -0
- package/dist/src/v2/adapters/durable-atomic-file.js.map +1 -0
- package/dist/src/v2/adapters/gh-cli.d.ts.map +1 -0
- package/dist/src/v2/adapters/gh-cli.js.map +1 -0
- package/dist/src/v2/adapters/gh-issue-adapter.d.ts.map +1 -0
- package/dist/src/v2/adapters/gh-issue-adapter.js.map +1 -0
- package/dist/src/v2/adapters/gh-pull-request-adapter.d.ts.map +1 -0
- package/dist/src/v2/adapters/gh-pull-request-adapter.js.map +1 -0
- package/dist/src/v2/adapters/issues.d.ts.map +1 -0
- package/dist/src/v2/adapters/issues.js.map +1 -0
- package/dist/src/v2/adapters/mission-coordinator-lock.d.ts.map +1 -0
- package/dist/src/v2/adapters/mission-coordinator-lock.js.map +1 -0
- package/dist/src/v2/adapters/path-policy.d.ts.map +1 -0
- package/dist/src/v2/adapters/path-policy.js.map +1 -0
- package/dist/src/v2/adapters/pull-requests.d.ts.map +1 -0
- package/dist/src/v2/adapters/pull-requests.js.map +1 -0
- package/dist/src/v2/adapters/target-activity-fence.d.ts.map +1 -0
- package/dist/src/{runner → v2/adapters}/target-activity-fence.js +1 -1
- package/dist/src/v2/adapters/target-activity-fence.js.map +1 -0
- package/dist/src/{git → v2/adapters}/worktree.d.ts +1 -1
- package/dist/src/v2/adapters/worktree.d.ts.map +1 -0
- package/dist/src/{git → v2/adapters}/worktree.js +2 -2
- package/dist/src/v2/adapters/worktree.js.map +1 -0
- package/dist/src/v2/atomic-store.d.ts +36 -0
- package/dist/src/v2/atomic-store.d.ts.map +1 -0
- package/dist/src/v2/atomic-store.js +328 -0
- package/dist/src/v2/atomic-store.js.map +1 -0
- package/dist/src/v2/candidate-cli.d.ts +22 -0
- package/dist/src/v2/candidate-cli.d.ts.map +1 -0
- package/dist/src/v2/candidate-cli.js +161 -0
- package/dist/src/v2/candidate-cli.js.map +1 -0
- package/dist/src/v2/checked-change.d.ts +49 -0
- package/dist/src/v2/checked-change.d.ts.map +1 -0
- package/dist/src/v2/checked-change.js +139 -0
- package/dist/src/v2/checked-change.js.map +1 -0
- package/dist/src/v2/cli-contract.d.ts +8 -0
- package/dist/src/v2/cli-contract.d.ts.map +1 -0
- package/dist/src/v2/cli-contract.js +32 -0
- package/dist/src/v2/cli-contract.js.map +1 -0
- package/dist/src/v2/codex-process.d.ts +71 -0
- package/dist/src/v2/codex-process.d.ts.map +1 -0
- package/dist/src/v2/codex-process.js +404 -0
- package/dist/src/v2/codex-process.js.map +1 -0
- package/dist/src/v2/config.d.ts +45 -0
- package/dist/src/v2/config.d.ts.map +1 -0
- package/dist/src/v2/config.js +139 -0
- package/dist/src/v2/config.js.map +1 -0
- package/dist/src/v2/containment.d.ts +55 -0
- package/dist/src/v2/containment.d.ts.map +1 -0
- package/dist/src/v2/containment.js +370 -0
- package/dist/src/v2/containment.js.map +1 -0
- package/dist/src/v2/implementation-report.d.ts +18 -0
- package/dist/src/v2/implementation-report.d.ts.map +1 -0
- package/dist/src/v2/implementation-report.js +147 -0
- package/dist/src/v2/implementation-report.js.map +1 -0
- package/dist/src/v2/legacy-cutover.d.ts +52 -0
- package/dist/src/v2/legacy-cutover.d.ts.map +1 -0
- package/dist/src/v2/legacy-cutover.js +87 -0
- package/dist/src/v2/legacy-cutover.js.map +1 -0
- package/dist/src/v2/mobile-lease.d.ts +97 -0
- package/dist/src/v2/mobile-lease.d.ts.map +1 -0
- package/dist/src/v2/mobile-lease.js +253 -0
- package/dist/src/v2/mobile-lease.js.map +1 -0
- package/dist/src/v2/proof-report.d.ts +118 -0
- package/dist/src/v2/proof-report.d.ts.map +1 -0
- package/dist/src/v2/proof-report.js +703 -0
- package/dist/src/v2/proof-report.js.map +1 -0
- package/dist/src/v2/proof-store.d.ts +42 -0
- package/dist/src/v2/proof-store.d.ts.map +1 -0
- package/dist/src/v2/proof-store.js +180 -0
- package/dist/src/v2/proof-store.js.map +1 -0
- package/dist/src/v2/report-envelope.d.ts +4 -0
- package/dist/src/v2/report-envelope.d.ts.map +1 -0
- package/dist/src/v2/report-envelope.js +46 -0
- package/dist/src/v2/report-envelope.js.map +1 -0
- package/dist/src/v2/run-issue.d.ts +213 -0
- package/dist/src/v2/run-issue.d.ts.map +1 -0
- package/dist/src/v2/run-issue.js +906 -0
- package/dist/src/v2/run-issue.js.map +1 -0
- package/dist/src/v2/run-store.d.ts +136 -0
- package/dist/src/v2/run-store.d.ts.map +1 -0
- package/dist/src/v2/run-store.js +346 -0
- package/dist/src/v2/run-store.js.map +1 -0
- package/dist/src/v2/runtime-assets.d.ts +31 -0
- package/dist/src/v2/runtime-assets.d.ts.map +1 -0
- package/dist/src/v2/runtime-assets.js +473 -0
- package/dist/src/v2/runtime-assets.js.map +1 -0
- package/dist/src/v2/runtime.d.ts +137 -0
- package/dist/src/v2/runtime.d.ts.map +1 -0
- package/dist/src/v2/runtime.js +847 -0
- package/dist/src/v2/runtime.js.map +1 -0
- package/dist/src/v2/setup-cli.d.ts +5 -0
- package/dist/src/v2/setup-cli.d.ts.map +1 -0
- package/dist/src/v2/setup-cli.js +83 -0
- package/dist/src/v2/setup-cli.js.map +1 -0
- package/dist/src/v2/setup-runtime.d.ts +6 -0
- package/dist/src/v2/setup-runtime.d.ts.map +1 -0
- package/dist/src/v2/setup-runtime.js +213 -0
- package/dist/src/v2/setup-runtime.js.map +1 -0
- package/dist/src/v2/setup-store.d.ts +19 -0
- package/dist/src/v2/setup-store.d.ts.map +1 -0
- package/dist/src/v2/setup-store.js +208 -0
- package/dist/src/v2/setup-store.js.map +1 -0
- package/dist/src/v2/setup.d.ts +147 -0
- package/dist/src/v2/setup.d.ts.map +1 -0
- package/dist/src/v2/setup.js +529 -0
- package/dist/src/v2/setup.js.map +1 -0
- package/docs/deep-dive.md +54 -803
- package/internal-skills/acceptance-proof/SKILL.md +14 -0
- package/internal-skills/acceptance-proof/references/android.md +14 -0
- package/internal-skills/acceptance-proof/references/browser.md +13 -0
- package/internal-skills/acceptance-proof/references/ios.md +14 -0
- package/internal-skills/acceptance-proof/tools/android-lease.mjs +280 -0
- package/internal-skills/acceptance-proof/tools/ios-lease.mjs +288 -0
- package/internal-skills/agent-auto/SKILL.md +14 -0
- package/package.json +11 -18
- package/bridge-runtime.json +0 -2719
- package/dist/src/bridge-runtime.d.ts +0 -17
- package/dist/src/bridge-runtime.d.ts.map +0 -1
- package/dist/src/bridge-runtime.js +0 -170
- package/dist/src/bridge-runtime.js.map +0 -1
- package/dist/src/cli.d.ts +0 -3
- package/dist/src/cli.d.ts.map +0 -1
- package/dist/src/cli.js +0 -569
- package/dist/src/cli.js.map +0 -1
- package/dist/src/codex/command-adapter.d.ts +0 -47
- package/dist/src/codex/command-adapter.d.ts.map +0 -1
- package/dist/src/codex/command-adapter.js +0 -169
- package/dist/src/codex/command-adapter.js.map +0 -1
- package/dist/src/codex/mobile-device-guard.d.ts +0 -7
- package/dist/src/codex/mobile-device-guard.d.ts.map +0 -1
- package/dist/src/codex/mobile-device-guard.js +0 -63
- package/dist/src/codex/mobile-device-guard.js.map +0 -1
- package/dist/src/config/constants.d.ts +0 -6
- package/dist/src/config/constants.d.ts.map +0 -1
- package/dist/src/config/constants.js +0 -19
- package/dist/src/config/constants.js.map +0 -1
- package/dist/src/config/schema.d.ts +0 -234
- package/dist/src/config/schema.d.ts.map +0 -1
- package/dist/src/config/schema.js +0 -673
- package/dist/src/config/schema.js.map +0 -1
- package/dist/src/fs/durable-atomic-file.d.ts.map +0 -1
- package/dist/src/fs/durable-atomic-file.js.map +0 -1
- package/dist/src/git/base-branch.d.ts +0 -26
- package/dist/src/git/base-branch.d.ts.map +0 -1
- package/dist/src/git/base-branch.js +0 -45
- package/dist/src/git/base-branch.js.map +0 -1
- package/dist/src/git/worktree.d.ts.map +0 -1
- package/dist/src/git/worktree.js.map +0 -1
- package/dist/src/github/gh-cli.d.ts.map +0 -1
- package/dist/src/github/gh-cli.js.map +0 -1
- package/dist/src/github/gh-issue-adapter.d.ts.map +0 -1
- package/dist/src/github/gh-issue-adapter.js.map +0 -1
- package/dist/src/github/gh-pull-request-adapter.d.ts.map +0 -1
- package/dist/src/github/gh-pull-request-adapter.js.map +0 -1
- package/dist/src/github/issues.d.ts.map +0 -1
- package/dist/src/github/issues.js.map +0 -1
- package/dist/src/github/pull-requests.d.ts.map +0 -1
- package/dist/src/github/pull-requests.js.map +0 -1
- package/dist/src/package-info.d.ts +0 -6
- package/dist/src/package-info.d.ts.map +0 -1
- package/dist/src/package-info.js +0 -13
- package/dist/src/package-info.js.map +0 -1
- package/dist/src/path-policy.d.ts.map +0 -1
- package/dist/src/path-policy.js.map +0 -1
- package/dist/src/process/command.d.ts.map +0 -1
- package/dist/src/process/command.js.map +0 -1
- package/dist/src/review-handoff.d.ts +0 -3
- package/dist/src/review-handoff.d.ts.map +0 -1
- package/dist/src/review-handoff.js +0 -8
- package/dist/src/review-handoff.js.map +0 -1
- package/dist/src/runner/acceptance-proof-loop.d.ts +0 -97
- package/dist/src/runner/acceptance-proof-loop.d.ts.map +0 -1
- package/dist/src/runner/acceptance-proof-loop.js +0 -404
- package/dist/src/runner/acceptance-proof-loop.js.map +0 -1
- package/dist/src/runner/acceptance-proof-runner.d.ts +0 -24
- package/dist/src/runner/acceptance-proof-runner.d.ts.map +0 -1
- package/dist/src/runner/acceptance-proof-runner.js +0 -121
- package/dist/src/runner/acceptance-proof-runner.js.map +0 -1
- package/dist/src/runner/acceptance-proof.d.ts +0 -189
- package/dist/src/runner/acceptance-proof.d.ts.map +0 -1
- package/dist/src/runner/acceptance-proof.js +0 -594
- package/dist/src/runner/acceptance-proof.js.map +0 -1
- package/dist/src/runner/agent-attempt.d.ts +0 -105
- package/dist/src/runner/agent-attempt.d.ts.map +0 -1
- package/dist/src/runner/agent-attempt.js +0 -245
- package/dist/src/runner/agent-attempt.js.map +0 -1
- package/dist/src/runner/android-visual-proof-command.d.ts +0 -26
- package/dist/src/runner/android-visual-proof-command.d.ts.map +0 -1
- package/dist/src/runner/android-visual-proof-command.js +0 -592
- package/dist/src/runner/android-visual-proof-command.js.map +0 -1
- package/dist/src/runner/auto-visual-proof-command.d.ts +0 -15
- package/dist/src/runner/auto-visual-proof-command.d.ts.map +0 -1
- package/dist/src/runner/auto-visual-proof-command.js +0 -64
- package/dist/src/runner/auto-visual-proof-command.js.map +0 -1
- package/dist/src/runner/browser-proof-contract.d.ts +0 -134
- package/dist/src/runner/browser-proof-contract.d.ts.map +0 -1
- package/dist/src/runner/browser-proof-contract.js +0 -400
- package/dist/src/runner/browser-proof-contract.js.map +0 -1
- package/dist/src/runner/browser-visual-proof-command.d.ts +0 -101
- package/dist/src/runner/browser-visual-proof-command.d.ts.map +0 -1
- package/dist/src/runner/browser-visual-proof-command.js +0 -532
- package/dist/src/runner/browser-visual-proof-command.js.map +0 -1
- package/dist/src/runner/command-utils.d.ts +0 -15
- package/dist/src/runner/command-utils.d.ts.map +0 -1
- package/dist/src/runner/command-utils.js +0 -228
- package/dist/src/runner/command-utils.js.map +0 -1
- package/dist/src/runner/completion-report.d.ts +0 -121
- package/dist/src/runner/completion-report.d.ts.map +0 -1
- package/dist/src/runner/completion-report.js +0 -381
- package/dist/src/runner/completion-report.js.map +0 -1
- package/dist/src/runner/context-snapshot.d.ts +0 -33
- package/dist/src/runner/context-snapshot.d.ts.map +0 -1
- package/dist/src/runner/context-snapshot.js +0 -99
- package/dist/src/runner/context-snapshot.js.map +0 -1
- package/dist/src/runner/daemon-command.d.ts +0 -30
- package/dist/src/runner/daemon-command.d.ts.map +0 -1
- package/dist/src/runner/daemon-command.js +0 -262
- package/dist/src/runner/daemon-command.js.map +0 -1
- package/dist/src/runner/doctor-command.d.ts +0 -41
- package/dist/src/runner/doctor-command.d.ts.map +0 -1
- package/dist/src/runner/doctor-command.js +0 -177
- package/dist/src/runner/doctor-command.js.map +0 -1
- package/dist/src/runner/durable-run-summary.d.ts +0 -80
- package/dist/src/runner/durable-run-summary.d.ts.map +0 -1
- package/dist/src/runner/durable-run-summary.js +0 -200
- package/dist/src/runner/durable-run-summary.js.map +0 -1
- package/dist/src/runner/flutter-sdk-discovery.d.ts +0 -5
- package/dist/src/runner/flutter-sdk-discovery.d.ts.map +0 -1
- package/dist/src/runner/flutter-sdk-discovery.js +0 -103
- package/dist/src/runner/flutter-sdk-discovery.js.map +0 -1
- package/dist/src/runner/fresh-context-review.d.ts +0 -22
- package/dist/src/runner/fresh-context-review.d.ts.map +0 -1
- package/dist/src/runner/fresh-context-review.js +0 -177
- package/dist/src/runner/fresh-context-review.js.map +0 -1
- package/dist/src/runner/handoff-evidence.d.ts +0 -141
- package/dist/src/runner/handoff-evidence.d.ts.map +0 -1
- package/dist/src/runner/handoff-evidence.js +0 -543
- package/dist/src/runner/handoff-evidence.js.map +0 -1
- package/dist/src/runner/hygiene-cleanup.d.ts +0 -15
- package/dist/src/runner/hygiene-cleanup.d.ts.map +0 -1
- package/dist/src/runner/hygiene-cleanup.js +0 -25
- package/dist/src/runner/hygiene-cleanup.js.map +0 -1
- package/dist/src/runner/ios-visual-proof-command.d.ts +0 -25
- package/dist/src/runner/ios-visual-proof-command.d.ts.map +0 -1
- package/dist/src/runner/ios-visual-proof-command.js +0 -353
- package/dist/src/runner/ios-visual-proof-command.js.map +0 -1
- package/dist/src/runner/issue-state-machine.d.ts +0 -39
- package/dist/src/runner/issue-state-machine.d.ts.map +0 -1
- package/dist/src/runner/issue-state-machine.js +0 -124
- package/dist/src/runner/issue-state-machine.js.map +0 -1
- package/dist/src/runner/issue-tree.d.ts +0 -65
- package/dist/src/runner/issue-tree.d.ts.map +0 -1
- package/dist/src/runner/issue-tree.js +0 -474
- package/dist/src/runner/issue-tree.js.map +0 -1
- package/dist/src/runner/lifecycle-events.d.ts +0 -44
- package/dist/src/runner/lifecycle-events.d.ts.map +0 -1
- package/dist/src/runner/lifecycle-events.js +0 -108
- package/dist/src/runner/lifecycle-events.js.map +0 -1
- package/dist/src/runner/local-execution-session.d.ts +0 -112
- package/dist/src/runner/local-execution-session.d.ts.map +0 -1
- package/dist/src/runner/local-execution-session.js +0 -1064
- package/dist/src/runner/local-execution-session.js.map +0 -1
- package/dist/src/runner/local-state.d.ts +0 -44
- package/dist/src/runner/local-state.d.ts.map +0 -1
- package/dist/src/runner/local-state.js +0 -150
- package/dist/src/runner/local-state.js.map +0 -1
- package/dist/src/runner/mission-activation.d.ts +0 -29
- package/dist/src/runner/mission-activation.d.ts.map +0 -1
- package/dist/src/runner/mission-activation.js +0 -54
- package/dist/src/runner/mission-activation.js.map +0 -1
- package/dist/src/runner/mission-agent-broker.d.ts +0 -53
- package/dist/src/runner/mission-agent-broker.d.ts.map +0 -1
- package/dist/src/runner/mission-agent-broker.js +0 -182
- package/dist/src/runner/mission-agent-broker.js.map +0 -1
- package/dist/src/runner/mission-cancellation.d.ts +0 -77
- package/dist/src/runner/mission-cancellation.d.ts.map +0 -1
- package/dist/src/runner/mission-cancellation.js +0 -180
- package/dist/src/runner/mission-cancellation.js.map +0 -1
- package/dist/src/runner/mission-canonical-path.d.ts +0 -34
- package/dist/src/runner/mission-canonical-path.d.ts.map +0 -1
- package/dist/src/runner/mission-canonical-path.js +0 -121
- package/dist/src/runner/mission-canonical-path.js.map +0 -1
- package/dist/src/runner/mission-capability-kernel.d.ts +0 -34
- package/dist/src/runner/mission-capability-kernel.d.ts.map +0 -1
- package/dist/src/runner/mission-capability-kernel.js +0 -158
- package/dist/src/runner/mission-capability-kernel.js.map +0 -1
- package/dist/src/runner/mission-check-policy.d.ts +0 -17
- package/dist/src/runner/mission-check-policy.d.ts.map +0 -1
- package/dist/src/runner/mission-check-policy.js +0 -31
- package/dist/src/runner/mission-check-policy.js.map +0 -1
- package/dist/src/runner/mission-coordinator-lock.d.ts.map +0 -1
- package/dist/src/runner/mission-coordinator-lock.js.map +0 -1
- package/dist/src/runner/mission-deployment.d.ts +0 -21
- package/dist/src/runner/mission-deployment.d.ts.map +0 -1
- package/dist/src/runner/mission-deployment.js +0 -108
- package/dist/src/runner/mission-deployment.js.map +0 -1
- package/dist/src/runner/mission-evaluation.d.ts +0 -61
- package/dist/src/runner/mission-evaluation.d.ts.map +0 -1
- package/dist/src/runner/mission-evaluation.js +0 -183
- package/dist/src/runner/mission-evaluation.js.map +0 -1
- package/dist/src/runner/mission-executor-probe.d.ts +0 -10
- package/dist/src/runner/mission-executor-probe.d.ts.map +0 -1
- package/dist/src/runner/mission-executor-probe.js +0 -180
- package/dist/src/runner/mission-executor-probe.js.map +0 -1
- package/dist/src/runner/mission-git-contracts.d.ts +0 -75
- package/dist/src/runner/mission-git-contracts.d.ts.map +0 -1
- package/dist/src/runner/mission-git-contracts.js +0 -201
- package/dist/src/runner/mission-git-contracts.js.map +0 -1
- package/dist/src/runner/mission-git-runtime-owner-ref.d.ts +0 -13
- package/dist/src/runner/mission-git-runtime-owner-ref.d.ts.map +0 -1
- package/dist/src/runner/mission-git-runtime-owner-ref.js +0 -111
- package/dist/src/runner/mission-git-runtime-owner-ref.js.map +0 -1
- package/dist/src/runner/mission-git-transaction.d.ts +0 -97
- package/dist/src/runner/mission-git-transaction.d.ts.map +0 -1
- package/dist/src/runner/mission-git-transaction.js +0 -1009
- package/dist/src/runner/mission-git-transaction.js.map +0 -1
- package/dist/src/runner/mission-identifiers.d.ts +0 -31
- package/dist/src/runner/mission-identifiers.d.ts.map +0 -1
- package/dist/src/runner/mission-identifiers.js +0 -75
- package/dist/src/runner/mission-identifiers.js.map +0 -1
- package/dist/src/runner/mission-input-snapshot.d.ts +0 -21
- package/dist/src/runner/mission-input-snapshot.d.ts.map +0 -1
- package/dist/src/runner/mission-input-snapshot.js +0 -63
- package/dist/src/runner/mission-input-snapshot.js.map +0 -1
- package/dist/src/runner/mission-ownership.d.ts +0 -38
- package/dist/src/runner/mission-ownership.d.ts.map +0 -1
- package/dist/src/runner/mission-ownership.js +0 -88
- package/dist/src/runner/mission-ownership.js.map +0 -1
- package/dist/src/runner/mission-patch-audit.d.ts +0 -21
- package/dist/src/runner/mission-patch-audit.d.ts.map +0 -1
- package/dist/src/runner/mission-patch-audit.js +0 -186
- package/dist/src/runner/mission-patch-audit.js.map +0 -1
- package/dist/src/runner/mission-path-language.d.ts +0 -6
- package/dist/src/runner/mission-path-language.d.ts.map +0 -1
- package/dist/src/runner/mission-path-language.js +0 -106
- package/dist/src/runner/mission-path-language.js.map +0 -1
- package/dist/src/runner/mission-permit-authority.d.ts +0 -26
- package/dist/src/runner/mission-permit-authority.d.ts.map +0 -1
- package/dist/src/runner/mission-permit-authority.js +0 -145
- package/dist/src/runner/mission-permit-authority.js.map +0 -1
- package/dist/src/runner/mission-plan-parent-coordinator.d.ts +0 -87
- package/dist/src/runner/mission-plan-parent-coordinator.d.ts.map +0 -1
- package/dist/src/runner/mission-plan-parent-coordinator.js +0 -441
- package/dist/src/runner/mission-plan-parent-coordinator.js.map +0 -1
- package/dist/src/runner/mission-plan-parent.d.ts +0 -156
- package/dist/src/runner/mission-plan-parent.d.ts.map +0 -1
- package/dist/src/runner/mission-plan-parent.js +0 -589
- package/dist/src/runner/mission-plan-parent.js.map +0 -1
- package/dist/src/runner/mission-process-executor.d.ts +0 -25
- package/dist/src/runner/mission-process-executor.d.ts.map +0 -1
- package/dist/src/runner/mission-process-executor.js +0 -182
- package/dist/src/runner/mission-process-executor.js.map +0 -1
- package/dist/src/runner/mission-publication-git.d.ts +0 -21
- package/dist/src/runner/mission-publication-git.d.ts.map +0 -1
- package/dist/src/runner/mission-publication-git.js +0 -61
- package/dist/src/runner/mission-publication-git.js.map +0 -1
- package/dist/src/runner/mission-publication.d.ts +0 -192
- package/dist/src/runner/mission-publication.d.ts.map +0 -1
- package/dist/src/runner/mission-publication.js +0 -1001
- package/dist/src/runner/mission-publication.js.map +0 -1
- package/dist/src/runner/mission-quarantine-patch-executor.d.ts +0 -29
- package/dist/src/runner/mission-quarantine-patch-executor.d.ts.map +0 -1
- package/dist/src/runner/mission-quarantine-patch-executor.js +0 -121
- package/dist/src/runner/mission-quarantine-patch-executor.js.map +0 -1
- package/dist/src/runner/mission-repository-executor.d.ts +0 -54
- package/dist/src/runner/mission-repository-executor.d.ts.map +0 -1
- package/dist/src/runner/mission-repository-executor.js +0 -192
- package/dist/src/runner/mission-repository-executor.js.map +0 -1
- package/dist/src/runner/mission-repository-observer.d.ts +0 -8
- package/dist/src/runner/mission-repository-observer.d.ts.map +0 -1
- package/dist/src/runner/mission-repository-observer.js +0 -24
- package/dist/src/runner/mission-repository-observer.js.map +0 -1
- package/dist/src/runner/mission-reservations.d.ts +0 -15
- package/dist/src/runner/mission-reservations.d.ts.map +0 -1
- package/dist/src/runner/mission-reservations.js +0 -116
- package/dist/src/runner/mission-reservations.js.map +0 -1
- package/dist/src/runner/mission-resolution-loop.d.ts +0 -172
- package/dist/src/runner/mission-resolution-loop.d.ts.map +0 -1
- package/dist/src/runner/mission-resolution-loop.js +0 -318
- package/dist/src/runner/mission-resolution-loop.js.map +0 -1
- package/dist/src/runner/mission-runtime-owner.d.ts +0 -36
- package/dist/src/runner/mission-runtime-owner.d.ts.map +0 -1
- package/dist/src/runner/mission-runtime-owner.js +0 -174
- package/dist/src/runner/mission-runtime-owner.js.map +0 -1
- package/dist/src/runner/mission-safe-executor.d.ts +0 -96
- package/dist/src/runner/mission-safe-executor.d.ts.map +0 -1
- package/dist/src/runner/mission-safe-executor.js +0 -288
- package/dist/src/runner/mission-safe-executor.js.map +0 -1
- package/dist/src/runner/mission-sandbox.d.ts +0 -16
- package/dist/src/runner/mission-sandbox.d.ts.map +0 -1
- package/dist/src/runner/mission-sandbox.js +0 -91
- package/dist/src/runner/mission-sandbox.js.map +0 -1
- package/dist/src/runner/mission-scheduler.d.ts +0 -57
- package/dist/src/runner/mission-scheduler.d.ts.map +0 -1
- package/dist/src/runner/mission-scheduler.js +0 -205
- package/dist/src/runner/mission-scheduler.js.map +0 -1
- package/dist/src/runner/mission-scope-expansion.d.ts +0 -47
- package/dist/src/runner/mission-scope-expansion.d.ts.map +0 -1
- package/dist/src/runner/mission-scope-expansion.js +0 -147
- package/dist/src/runner/mission-scope-expansion.js.map +0 -1
- package/dist/src/runner/mission-state-machine.d.ts +0 -118
- package/dist/src/runner/mission-state-machine.d.ts.map +0 -1
- package/dist/src/runner/mission-state-machine.js +0 -316
- package/dist/src/runner/mission-state-machine.js.map +0 -1
- package/dist/src/runner/mission-state-store.d.ts +0 -70
- package/dist/src/runner/mission-state-store.d.ts.map +0 -1
- package/dist/src/runner/mission-state-store.js +0 -916
- package/dist/src/runner/mission-state-store.js.map +0 -1
- package/dist/src/runner/mobile-device-lease.d.ts +0 -11
- package/dist/src/runner/mobile-device-lease.d.ts.map +0 -1
- package/dist/src/runner/mobile-device-lease.js +0 -121
- package/dist/src/runner/mobile-device-lease.js.map +0 -1
- package/dist/src/runner/mobile-visual-proof-command.d.ts +0 -17
- package/dist/src/runner/mobile-visual-proof-command.d.ts.map +0 -1
- package/dist/src/runner/mobile-visual-proof-command.js +0 -168
- package/dist/src/runner/mobile-visual-proof-command.js.map +0 -1
- package/dist/src/runner/plan-auto-command.d.ts +0 -35
- package/dist/src/runner/plan-auto-command.d.ts.map +0 -1
- package/dist/src/runner/plan-auto-command.js +0 -918
- package/dist/src/runner/plan-auto-command.js.map +0 -1
- package/dist/src/runner/plan-auto-recovery.d.ts +0 -83
- package/dist/src/runner/plan-auto-recovery.d.ts.map +0 -1
- package/dist/src/runner/plan-auto-recovery.js +0 -303
- package/dist/src/runner/plan-auto-recovery.js.map +0 -1
- package/dist/src/runner/prompt.d.ts +0 -68
- package/dist/src/runner/prompt.d.ts.map +0 -1
- package/dist/src/runner/prompt.js +0 -202
- package/dist/src/runner/prompt.js.map +0 -1
- package/dist/src/runner/proof-routing.d.ts +0 -73
- package/dist/src/runner/proof-routing.d.ts.map +0 -1
- package/dist/src/runner/proof-routing.js +0 -182
- package/dist/src/runner/proof-routing.js.map +0 -1
- package/dist/src/runner/proof-strategy.d.ts +0 -21
- package/dist/src/runner/proof-strategy.d.ts.map +0 -1
- package/dist/src/runner/proof-strategy.js +0 -26
- package/dist/src/runner/proof-strategy.js.map +0 -1
- package/dist/src/runner/recovery.d.ts +0 -25
- package/dist/src/runner/recovery.d.ts.map +0 -1
- package/dist/src/runner/recovery.js +0 -89
- package/dist/src/runner/recovery.js.map +0 -1
- package/dist/src/runner/review-gate-policy.d.ts +0 -13
- package/dist/src/runner/review-gate-policy.d.ts.map +0 -1
- package/dist/src/runner/review-gate-policy.js +0 -241
- package/dist/src/runner/review-gate-policy.js.map +0 -1
- package/dist/src/runner/review-gates.d.ts +0 -28
- package/dist/src/runner/review-gates.d.ts.map +0 -1
- package/dist/src/runner/review-gates.js +0 -328
- package/dist/src/runner/review-gates.js.map +0 -1
- package/dist/src/runner/rework-policy.d.ts +0 -48
- package/dist/src/runner/rework-policy.d.ts.map +0 -1
- package/dist/src/runner/rework-policy.js +0 -150
- package/dist/src/runner/rework-policy.js.map +0 -1
- package/dist/src/runner/run-log.d.ts +0 -18
- package/dist/src/runner/run-log.d.ts.map +0 -1
- package/dist/src/runner/run-log.js +0 -53
- package/dist/src/runner/run-log.js.map +0 -1
- package/dist/src/runner/runner-handoff-decision.d.ts +0 -48
- package/dist/src/runner/runner-handoff-decision.d.ts.map +0 -1
- package/dist/src/runner/runner-handoff-decision.js +0 -93
- package/dist/src/runner/runner-handoff-decision.js.map +0 -1
- package/dist/src/runner/safety.d.ts +0 -14
- package/dist/src/runner/safety.d.ts.map +0 -1
- package/dist/src/runner/safety.js +0 -31
- package/dist/src/runner/safety.js.map +0 -1
- package/dist/src/runner/scope-isolation-policy.d.ts +0 -17
- package/dist/src/runner/scope-isolation-policy.d.ts.map +0 -1
- package/dist/src/runner/scope-isolation-policy.js +0 -82
- package/dist/src/runner/scope-isolation-policy.js.map +0 -1
- package/dist/src/runner/scoped-auto-command.d.ts +0 -90
- package/dist/src/runner/scoped-auto-command.d.ts.map +0 -1
- package/dist/src/runner/scoped-auto-command.js +0 -561
- package/dist/src/runner/scoped-auto-command.js.map +0 -1
- package/dist/src/runner/scoped-recovery.d.ts +0 -78
- package/dist/src/runner/scoped-recovery.d.ts.map +0 -1
- package/dist/src/runner/scoped-recovery.js +0 -601
- package/dist/src/runner/scoped-recovery.js.map +0 -1
- package/dist/src/runner/session-home.d.ts +0 -8
- package/dist/src/runner/session-home.d.ts.map +0 -1
- package/dist/src/runner/session-home.js +0 -18
- package/dist/src/runner/session-home.js.map +0 -1
- package/dist/src/runner/status-command.d.ts +0 -38
- package/dist/src/runner/status-command.d.ts.map +0 -1
- package/dist/src/runner/status-command.js +0 -97
- package/dist/src/runner/status-command.js.map +0 -1
- package/dist/src/runner/target-activity-fence.d.ts.map +0 -1
- package/dist/src/runner/target-activity-fence.js.map +0 -1
- package/dist/src/runner/terminal-outcome.d.ts +0 -58
- package/dist/src/runner/terminal-outcome.d.ts.map +0 -1
- package/dist/src/runner/terminal-outcome.js +0 -73
- package/dist/src/runner/terminal-outcome.js.map +0 -1
- package/dist/src/runner/visual-proof-runner.d.ts +0 -27
- package/dist/src/runner/visual-proof-runner.d.ts.map +0 -1
- package/dist/src/runner/visual-proof-runner.js +0 -379
- package/dist/src/runner/visual-proof-runner.js.map +0 -1
- package/dist/src/runner/worktree-cleanup.d.ts +0 -27
- package/dist/src/runner/worktree-cleanup.d.ts.map +0 -1
- package/dist/src/runner/worktree-cleanup.js +0 -63
- package/dist/src/runner/worktree-cleanup.js.map +0 -1
- package/dist/src/setup/codex-command-resolver.d.ts +0 -10
- package/dist/src/setup/codex-command-resolver.d.ts.map +0 -1
- package/dist/src/setup/codex-command-resolver.js +0 -91
- package/dist/src/setup/codex-command-resolver.js.map +0 -1
- package/dist/src/setup/github-label-adapter.d.ts +0 -13
- package/dist/src/setup/github-label-adapter.d.ts.map +0 -1
- package/dist/src/setup/github-label-adapter.js +0 -28
- package/dist/src/setup/github-label-adapter.js.map +0 -1
- package/dist/src/setup/labels.d.ts +0 -27
- package/dist/src/setup/labels.d.ts.map +0 -1
- package/dist/src/setup/labels.js +0 -42
- package/dist/src/setup/labels.js.map +0 -1
- package/dist/src/setup/project-config.d.ts +0 -24
- package/dist/src/setup/project-config.d.ts.map +0 -1
- package/dist/src/setup/project-config.js +0 -678
- package/dist/src/setup/project-config.js.map +0 -1
- package/dist/src/setup/prompt-sync.d.ts +0 -14
- package/dist/src/setup/prompt-sync.d.ts.map +0 -1
- package/dist/src/setup/prompt-sync.js +0 -228
- package/dist/src/setup/prompt-sync.js.map +0 -1
- package/dist/src/setup/setup-command.d.ts +0 -29
- package/dist/src/setup/setup-command.d.ts.map +0 -1
- package/dist/src/setup/setup-command.js +0 -304
- package/dist/src/setup/setup-command.js.map +0 -1
- package/dist/src/setup/skill-runtime-v2-preparation.d.ts +0 -56
- package/dist/src/setup/skill-runtime-v2-preparation.d.ts.map +0 -1
- package/dist/src/setup/skill-runtime-v2-preparation.js +0 -304
- package/dist/src/setup/skill-runtime-v2-preparation.js.map +0 -1
- package/dist/src/setup/workflows.d.ts +0 -10
- package/dist/src/setup/workflows.d.ts.map +0 -1
- package/dist/src/setup/workflows.js +0 -41
- package/dist/src/setup/workflows.js.map +0 -1
- package/prompts/setup-skill.md +0 -12
- package/prompts/workflows/acceptance-proof.md +0 -29
- package/prompts/workflows/breakdown-review.md +0 -48
- package/prompts/workflows/issue-breakdown.md +0 -155
- package/prompts/workflows/issue-tree-orchestration.md +0 -163
- package/prompts/workflows/prd.md +0 -80
- package/prompts/workflows/scoped-implementation.md +0 -129
- package/prompts/workflows/triage.md +0 -149
- /package/dist/src/{process → v2/adapters}/command.d.ts +0 -0
- /package/dist/src/{process → v2/adapters}/command.js +0 -0
- /package/dist/src/{fs → v2/adapters}/durable-atomic-file.d.ts +0 -0
- /package/dist/src/{fs → v2/adapters}/durable-atomic-file.js +0 -0
- /package/dist/src/{github → v2/adapters}/gh-cli.d.ts +0 -0
- /package/dist/src/{github → v2/adapters}/gh-cli.js +0 -0
- /package/dist/src/{github → v2/adapters}/gh-issue-adapter.d.ts +0 -0
- /package/dist/src/{github → v2/adapters}/gh-issue-adapter.js +0 -0
- /package/dist/src/{github → v2/adapters}/gh-pull-request-adapter.d.ts +0 -0
- /package/dist/src/{github → v2/adapters}/gh-pull-request-adapter.js +0 -0
- /package/dist/src/{github → v2/adapters}/issues.d.ts +0 -0
- /package/dist/src/{github → v2/adapters}/issues.js +0 -0
- /package/dist/src/{runner → v2/adapters}/mission-coordinator-lock.d.ts +0 -0
- /package/dist/src/{runner → v2/adapters}/mission-coordinator-lock.js +0 -0
- /package/dist/src/{path-policy.d.ts → v2/adapters/path-policy.d.ts} +0 -0
- /package/dist/src/{path-policy.js → v2/adapters/path-policy.js} +0 -0
- /package/dist/src/{github → v2/adapters}/pull-requests.d.ts +0 -0
- /package/dist/src/{github → v2/adapters}/pull-requests.js +0 -0
- /package/dist/src/{runner → v2/adapters}/target-activity-fence.d.ts +0 -0
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { hasIssueClosureEvidence } from '../github/issues.js';
|
|
2
|
-
import { clearClarificationGate, hasMaintainerResponseAfterLatestClarification, } from './issue-state-machine.js';
|
|
3
|
-
import { classifyScopedRecoveryRun } from './scoped-recovery.js';
|
|
4
|
-
const recoveryReasons = {
|
|
5
|
-
active: 'GitHub still marks the issue running',
|
|
6
|
-
'unknown-or-foreign': 'local scoped run is not safely recoverable from available evidence',
|
|
7
|
-
'completed-pending-handoff': 'completed scoped run is pending runner-owned handoff',
|
|
8
|
-
'failed-pending-block': 'stale scoped run is pending runner-owned blocked recovery',
|
|
9
|
-
stale: 'local run exists but GitHub no longer marks it running',
|
|
10
|
-
missing: 'local run has no matching GitHub issue',
|
|
11
|
-
completed: 'GitHub marks the work completed',
|
|
12
|
-
'closed-missing-evidence': 'GitHub marks the issue closed without completion evidence',
|
|
13
|
-
'waiting-for-clarification': 'blocked clarification is waiting for maintainer response',
|
|
14
|
-
'clarification-resumable': 'maintainer clarification response detected',
|
|
15
|
-
};
|
|
16
|
-
export async function reconcileRunnerState(input) {
|
|
17
|
-
const allowClarificationResume = input.allowClarificationResume ?? false;
|
|
18
|
-
const updateLocalState = input.updateLocalState ?? true;
|
|
19
|
-
const state = await input.store.load();
|
|
20
|
-
const entries = [];
|
|
21
|
-
for (const run of state.runs) {
|
|
22
|
-
const issue = await input.issueAdapter.getIssue(run.issueNumber);
|
|
23
|
-
const status = classifyIssue(issue, input.config);
|
|
24
|
-
if (run.mode === 'scoped-issue' && status === 'active' && input.targetRoot) {
|
|
25
|
-
const scoped = await classifyScopedRecoveryRun({
|
|
26
|
-
targetRoot: input.targetRoot,
|
|
27
|
-
config: input.config,
|
|
28
|
-
run,
|
|
29
|
-
issue,
|
|
30
|
-
invocation: 'status',
|
|
31
|
-
now: input.now,
|
|
32
|
-
});
|
|
33
|
-
entries.push({
|
|
34
|
-
issueNumber: run.issueNumber,
|
|
35
|
-
mode: run.mode,
|
|
36
|
-
status: scoped.status,
|
|
37
|
-
reason: scoped.reason,
|
|
38
|
-
workspacePath: run.workspacePath,
|
|
39
|
-
sessionId: run.sessionId,
|
|
40
|
-
retryCount: run.retryCount,
|
|
41
|
-
});
|
|
42
|
-
continue;
|
|
43
|
-
}
|
|
44
|
-
if (status === 'clarification-resumable' && allowClarificationResume) {
|
|
45
|
-
await clearClarificationGate(input.issueAdapter, input.config, run.issueNumber, input.now);
|
|
46
|
-
}
|
|
47
|
-
entries.push({
|
|
48
|
-
issueNumber: run.issueNumber,
|
|
49
|
-
mode: run.mode,
|
|
50
|
-
status,
|
|
51
|
-
reason: recoveryReasons[status],
|
|
52
|
-
workspacePath: run.workspacePath,
|
|
53
|
-
sessionId: run.sessionId,
|
|
54
|
-
retryCount: run.retryCount,
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
if (updateLocalState) {
|
|
58
|
-
await input.store.save({
|
|
59
|
-
version: 1,
|
|
60
|
-
runs: state.runs.map((run) => ({
|
|
61
|
-
...run,
|
|
62
|
-
lastRecoveredAt: input.now.toISOString(),
|
|
63
|
-
})),
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
return entries.sort((left, right) => left.issueNumber - right.issueNumber);
|
|
67
|
-
}
|
|
68
|
-
function classifyIssue(issue, config) {
|
|
69
|
-
if (!issue) {
|
|
70
|
-
return 'missing';
|
|
71
|
-
}
|
|
72
|
-
const labels = new Set(issue.labels.map((label) => label.name));
|
|
73
|
-
if (issue.state === 'CLOSED') {
|
|
74
|
-
return hasIssueClosureEvidence(issue) ? 'completed' : 'closed-missing-evidence';
|
|
75
|
-
}
|
|
76
|
-
if (labels.has(config.github.labels.review.name) || issue.closedByPullRequestsReferences.length > 0) {
|
|
77
|
-
return 'completed';
|
|
78
|
-
}
|
|
79
|
-
if (labels.has(config.github.labels.blocked.name)) {
|
|
80
|
-
return hasMaintainerResponseAfterLatestClarification(issue)
|
|
81
|
-
? 'clarification-resumable'
|
|
82
|
-
: 'waiting-for-clarification';
|
|
83
|
-
}
|
|
84
|
-
if (labels.has(config.github.labels.running.name)) {
|
|
85
|
-
return 'active';
|
|
86
|
-
}
|
|
87
|
-
return 'stale';
|
|
88
|
-
}
|
|
89
|
-
//# sourceMappingURL=recovery.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"recovery.js","sourceRoot":"","sources":["../../../src/runner/recovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { CodexOrchestratorConfig } from '../config/schema.js';
|
|
2
|
-
import type { GitHubIssue } from '../github/issues.js';
|
|
3
|
-
import type { RunnerValidationLine } from './handoff-evidence.js';
|
|
4
|
-
export declare function buildVisualProofPromptLines(config: CodexOrchestratorConfig, issue: GitHubIssue): string[];
|
|
5
|
-
export declare function buildQualityGatePromptLines(config: CodexOrchestratorConfig): string[];
|
|
6
|
-
export { classifyVisualProofDispatchTarget, decideProofRouting, isVisualProofDesirable, runnerVisualProofPolicy, shouldApplyVisualProofGate, type ProofRoutingAction, type ProofRoutingDecision, type VisualProofDispatchTarget, } from './proof-routing.js';
|
|
7
|
-
export declare function hasPassedValidation(validation: RunnerValidationLine[], patterns: string[]): boolean;
|
|
8
|
-
export declare function hasPassedTddValidation(validation: RunnerValidationLine[], patterns: string[]): boolean;
|
|
9
|
-
export declare function validationText(line: RunnerValidationLine): string;
|
|
10
|
-
export declare function isStrongVisualValidation(line: RunnerValidationLine): boolean;
|
|
11
|
-
export declare function isRunnerVisualValidation(line: RunnerValidationLine): boolean;
|
|
12
|
-
export declare function regexMatches(pattern: string, text: string): boolean;
|
|
13
|
-
//# sourceMappingURL=review-gate-policy.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"review-gate-policy.d.ts","sourceRoot":"","sources":["../../../src/runner/review-gate-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAQvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,uBAAuB,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,EAAE,CAoFzG;AA4FD,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,uBAAuB,GAAG,MAAM,EAAE,CAerF;AAED,OAAO,EACL,iCAAiC,EACjC,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,GAC/B,MAAM,oBAAoB,CAAC;AAE5B,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,oBAAoB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAInG;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,oBAAoB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAoBtG;AAaD,wBAAgB,cAAc,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAEjE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAE5E;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAE5E;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnE"}
|
|
@@ -1,241 +0,0 @@
|
|
|
1
|
-
import { uiEvidenceFailureDimensions } from './acceptance-proof.js';
|
|
2
|
-
import { decideProofRouting, runnerVisualProofPolicy, } from './proof-routing.js';
|
|
3
|
-
import { resolveAcceptanceProofStrategy } from './proof-strategy.js';
|
|
4
|
-
export function buildVisualProofPromptLines(config, issue) {
|
|
5
|
-
const acceptanceProof = config.reviewGates.acceptanceProof;
|
|
6
|
-
const policy = runnerVisualProofPolicy(config);
|
|
7
|
-
const command = policy.commandTemplate;
|
|
8
|
-
const proofStrategy = resolveAcceptanceProofStrategy({ config, issue });
|
|
9
|
-
const routing = decideProofRouting({ config, issue, changedFiles: [] });
|
|
10
|
-
const issueNumber = issue.number;
|
|
11
|
-
const strategyLines = proofStrategyPromptLines(proofStrategy);
|
|
12
|
-
if (proofStrategy.strategy === 'auto') {
|
|
13
|
-
const autoLines = [
|
|
14
|
-
...strategyLines,
|
|
15
|
-
'Path and issue-text matches make Acceptance Proof applicable but do not select its proof mode.',
|
|
16
|
-
'Choose the narrowest proofPlan mode from the acceptance behavior: use browser/mobile visual proof only for rendered or device-visible behavior, and use CLI/API/worker/non-visual smoke evidence for non-visual behavior.',
|
|
17
|
-
`Save any proof artifacts under ${policy.artifactDir}/issue-${issueNumber}/ and map proofPlan.validationCommands or proofPlan.requiredArtifacts to the concrete evidence.`,
|
|
18
|
-
'Do not create browser/mobile routing markers, placeholder UI files, screenshot scenarios, or visual-proof shims merely because changed files live in a frontend or mobile directory.',
|
|
19
|
-
];
|
|
20
|
-
if (!command) {
|
|
21
|
-
return [
|
|
22
|
-
...autoLines,
|
|
23
|
-
'If proofPlan selects browser-visual or mobile-visual, prepare the corresponding Proof Report uiEvidence contract and runner-owned browser or device proof inputs.',
|
|
24
|
-
'For browser visual proof, prefer a Playwright-based proof script; for mobile visual proof, use runner-owned device-backed proof.',
|
|
25
|
-
...androidMobileProofPromptLines(),
|
|
26
|
-
...iosMobileProofPromptLines(),
|
|
27
|
-
];
|
|
28
|
-
}
|
|
29
|
-
return [
|
|
30
|
-
...autoLines,
|
|
31
|
-
...runnerOwnedVisualProofCommandPromptLines({
|
|
32
|
-
acceptanceProof,
|
|
33
|
-
artifactDir: policy.artifactDir,
|
|
34
|
-
command,
|
|
35
|
-
envNames: policy.envPassthrough,
|
|
36
|
-
issueNumber,
|
|
37
|
-
conditional: true,
|
|
38
|
-
}),
|
|
39
|
-
];
|
|
40
|
-
}
|
|
41
|
-
if (routing.proofStrategy === 'non-visual-smoke') {
|
|
42
|
-
return [
|
|
43
|
-
...strategyLines,
|
|
44
|
-
`For acceptance proof, save non-visual smoke, test, log, or machine-readable artifacts under ${policy.artifactDir}/issue-${issueNumber}/ and include them as log, smoke-output, or other artifacts.`,
|
|
45
|
-
'Do not create browser/mobile routing markers, placeholder UI files, screenshot scenarios, emulator scripts, or other visual-proof shims just to satisfy the configured runner-owned visual proof command.',
|
|
46
|
-
'Do not change files outside the child ownership scope for proof routing. If non-visual evidence is insufficient, report the exact gap in skippedChecks or residualRisks.',
|
|
47
|
-
];
|
|
48
|
-
}
|
|
49
|
-
if (routing.proofStrategy === 'none') {
|
|
50
|
-
return [
|
|
51
|
-
...strategyLines,
|
|
52
|
-
`If ordinary validation artifacts are useful, save them under ${policy.artifactDir}/issue-${issueNumber}/ and include them as log, smoke-output, or other artifacts.`,
|
|
53
|
-
'Do not create browser/mobile routing markers, placeholder UI files, screenshot scenarios, emulator scripts, or other visual-proof shims.',
|
|
54
|
-
];
|
|
55
|
-
}
|
|
56
|
-
if (routing.action === 'allow-non-visual') {
|
|
57
|
-
return [
|
|
58
|
-
...strategyLines,
|
|
59
|
-
`For acceptance proof, save non-visual smoke, test, log, or machine-readable artifacts under ${policy.artifactDir}/issue-${issueNumber}/ and include them as log, smoke-output, or other artifacts.`,
|
|
60
|
-
'Do not create browser/mobile routing markers, placeholder UI files, screenshot scenarios, emulator scripts, or other visual-proof shims just to satisfy the configured runner-owned visual proof command.',
|
|
61
|
-
'Do not claim runner-owned visual proof will run for this non-visual proof route; use proofPlan.validationCommands or proofPlan.requiredArtifacts to identify the concrete non-visual evidence.',
|
|
62
|
-
];
|
|
63
|
-
}
|
|
64
|
-
if (!command) {
|
|
65
|
-
return [
|
|
66
|
-
...strategyLines,
|
|
67
|
-
`For acceptance proof, save proof artifacts under ${policy.artifactDir}/issue-${issueNumber}/ and include them as screenshot, ui-dump, log, smoke-output, or other artifacts.`,
|
|
68
|
-
'For visual/UI work, screenshots and UI dumps require a Proof Report uiEvidence contract with workflowScope, viewportCoverage, artifactFreshness, layoutReview, copyReview, and sourceInputs; screenshot existence alone is not enough proof.',
|
|
69
|
-
'For browser/web UI work, prefer a Playwright-based proof script when available; do not rely on in-session browser plugins for proof.',
|
|
70
|
-
...androidMobileProofPromptLines(),
|
|
71
|
-
...iosMobileProofPromptLines(),
|
|
72
|
-
'For non-visual acceptance criteria, prefer a live smoke proof that exercises observable product behavior and records the output as an artifact.',
|
|
73
|
-
'If acceptance proof is not possible in this environment, state that explicitly in skippedChecks along with the concrete reason (missing dependencies, missing credentials, dev server cannot start, etc.).',
|
|
74
|
-
];
|
|
75
|
-
}
|
|
76
|
-
return [
|
|
77
|
-
...strategyLines,
|
|
78
|
-
...runnerOwnedVisualProofCommandPromptLines({
|
|
79
|
-
acceptanceProof,
|
|
80
|
-
artifactDir: policy.artifactDir,
|
|
81
|
-
command,
|
|
82
|
-
envNames: policy.envPassthrough,
|
|
83
|
-
issueNumber,
|
|
84
|
-
conditional: false,
|
|
85
|
-
}),
|
|
86
|
-
];
|
|
87
|
-
}
|
|
88
|
-
function runnerOwnedVisualProofCommandPromptLines(input) {
|
|
89
|
-
const executionLine = input.conditional
|
|
90
|
-
? `If proofPlan selects browser-visual or mobile-visual, the runner will execute this configured acceptance proof command outside the child Codex sandbox: ${input.command}.`
|
|
91
|
-
: `After your run, the runner will execute this visual proof command outside the child Codex sandbox as the configured acceptance proof command: ${input.command}.`;
|
|
92
|
-
const loginEnvLine = input.envNames.length > 0
|
|
93
|
-
? `The runner acceptance proof command will receive these project environment variables when they exist: ${input.envNames.join(', ')}. Use them for login if authentication is required; never hardcode credentials.`
|
|
94
|
-
: 'If authentication is required, make the acceptance proof script read credentials from environment variables configured in reviewGates.acceptanceProof.envPassthrough; never hardcode credentials.';
|
|
95
|
-
return [
|
|
96
|
-
`For acceptance proof, prepare proof artifacts under ${input.artifactDir}/issue-${input.issueNumber}/ and include them as screenshot, ui-dump, log, smoke-output, or other artifacts when you create them.`,
|
|
97
|
-
executionLine,
|
|
98
|
-
input.conditional
|
|
99
|
-
? 'Prepare runner-owned browser or mobile proof inputs only when the selected proofPlan is visual; otherwise map concrete non-visual evidence in the completion report.'
|
|
100
|
-
: 'Prepare any project files this command needs, but do not execute this runner-owned command yourself or start long-lived browser/dev-server proof loops from child Codex.',
|
|
101
|
-
`Proof script repair is allowed only in these proof-owned paths: ${input.acceptanceProof.proofOwnedPathGlobs.join(', ')}.`,
|
|
102
|
-
'Product-code changes made during the proof phase are blockers; route missing behavior back through implementation instead.',
|
|
103
|
-
'Every required acceptance criterion must map to high-confidence artifact evidence before Draft PR Handoff.',
|
|
104
|
-
'For visual/UI work, screenshots and UI dumps require a Proof Report uiEvidence contract with workflowScope, viewportCoverage, artifactFreshness, layoutReview, copyReview, and sourceInputs.',
|
|
105
|
-
`UI Evidence failure dimensions are runner-owned and stable: ${uiEvidenceFailureDimensions.join(', ')}.`,
|
|
106
|
-
'For web layout proof, include wide desktop viewport coverage; include mobile coverage only when the issue or acceptance criteria call for mobile or responsive behavior.',
|
|
107
|
-
'Prefer real UI login when configured credentials exist; session or cookie seeding must be explained in uiEvidence.authShortcutReason.',
|
|
108
|
-
'For browser/web UI work, prefer Playwright-based screenshot proof via the runner-owned command; do not rely on in-session browser plugins for proof.',
|
|
109
|
-
...androidMobileProofPromptLines(),
|
|
110
|
-
...iosMobileProofPromptLines(),
|
|
111
|
-
'When this runner-owned proof command can validate the visual behavior, treat it as the primary visual proof path.',
|
|
112
|
-
'Do not report browser tool unavailability as a skipped check or residual risk when the runner-owned proof command is prepared.',
|
|
113
|
-
'For UI layout fixes, a focused visual proof script with concrete assertions can be the TDD evidence when regular unit tests cannot observe the layout.',
|
|
114
|
-
'For non-visual acceptance criteria, prefer a live smoke proof that exercises observable product behavior and records the output as an artifact.',
|
|
115
|
-
'Do not claim the runner-owned visual proof passed or acceptance proof passed; the runner will append the passed/failed result after your run.',
|
|
116
|
-
'The runner will expose CODEX_ORCHESTRATOR_PLAYWRIGHT_PROFILE_DIR for proof scripts that need a stable Playwright user data directory.',
|
|
117
|
-
loginEnvLine,
|
|
118
|
-
'If required login environment variables are missing, the visual proof script must fail with a short clear error.',
|
|
119
|
-
];
|
|
120
|
-
}
|
|
121
|
-
function proofStrategyPromptLines(proofStrategy) {
|
|
122
|
-
const lines = [
|
|
123
|
-
`Resolved proof strategy: ${proofStrategy.strategy} (${proofStrategy.source}).`,
|
|
124
|
-
'Issue bodies may override the default with an explicit `Proof Strategy: auto|visual|browser-visual|mobile-visual|non-visual-smoke|none` line.',
|
|
125
|
-
];
|
|
126
|
-
if (proofStrategy.strategy === 'non-visual-smoke') {
|
|
127
|
-
return [
|
|
128
|
-
...lines,
|
|
129
|
-
'Do not prepare browser, screenshot, emulator, simulator, or device-backed visual proof for this issue.',
|
|
130
|
-
'Prepare non-visual smoke, test, log, or machine-readable artifact evidence that maps each acceptance criterion to observable behavior.',
|
|
131
|
-
];
|
|
132
|
-
}
|
|
133
|
-
if (proofStrategy.strategy === 'none') {
|
|
134
|
-
return [
|
|
135
|
-
...lines,
|
|
136
|
-
'Do not prepare runner-owned acceptance proof artifacts unless the implementation itself needs ordinary validation artifacts.',
|
|
137
|
-
];
|
|
138
|
-
}
|
|
139
|
-
if (proofStrategy.strategy === 'browser-visual') {
|
|
140
|
-
return [...lines, 'Prepare browser visual proof artifacts; the runner-owned auto proof command must route to browser proof.'];
|
|
141
|
-
}
|
|
142
|
-
if (proofStrategy.strategy === 'mobile-visual') {
|
|
143
|
-
return [...lines, 'Prepare mobile visual proof expectations; the runner-owned auto proof command must route to device-backed mobile proof.'];
|
|
144
|
-
}
|
|
145
|
-
return lines;
|
|
146
|
-
}
|
|
147
|
-
function androidMobileProofPromptLines() {
|
|
148
|
-
return [
|
|
149
|
-
'For Android mobile app UI work, use runner-owned device-backed proof instead of browser automation. Do not start Android emulators from child Codex; the runner-owned mobile proof command serializes shared adb/emulator access.',
|
|
150
|
-
'If a specific connected Android target is required, document the desired `ANDROID_SERIAL` value or project environment requirement, but leave device selection and emulator startup to the runner-owned proof command.',
|
|
151
|
-
'If Test Android Apps skills are unavailable, try to enable or load that plugin through the available Codex plugin/tool discovery mechanism before falling back.',
|
|
152
|
-
'When a target is already selected by the runner or provided through the environment, use Test Android Apps skills for app launch, navigation, screenshots, logs, and performance evidence.',
|
|
153
|
-
'For native Android projects, use the project Gradle wrapper (`./gradlew`) with a writable `GRADLE_USER_HOME`, build the relevant debug APK, then install and launch it through adb on the selected target.',
|
|
154
|
-
'For Flutter Android projects only, start Flutter rebuild/install with the detected Flutter SDK and writable `PUB_CACHE` and `GRADLE_USER_HOME` directories. If rebuild/install fails because the SDK cache is read-only, retry only when `CODEX_ORCHESTRATOR_FLUTTER_ROOT` points to a preconfigured writable Flutter SDK: set `FLUTTER_ROOT` to that path, prepend `$FLUTTER_ROOT/bin` to `PATH`, run `flutter precache --android`, then rebuild/install again. If no writable Flutter SDK is configured, report the concrete SDK cache permission error.',
|
|
155
|
-
'Do not use Playwright as the primary proof path for Android mobile app verification.',
|
|
156
|
-
'If Test Android Apps cannot be enabled, or no usable Android device or emulator is available, report the mobile proof as a warning/skipped check with the concrete plugin or adb/emulator reason; this is not a publication blocker by itself.',
|
|
157
|
-
];
|
|
158
|
-
}
|
|
159
|
-
function iosMobileProofPromptLines() {
|
|
160
|
-
return [
|
|
161
|
-
'For native iOS app UI work, use simulator- or device-backed proof through Xcode tooling: run `xcrun simctl list devices available`, choose an available simulator when no device is provided, build with `xcodebuild` using a writable `-derivedDataPath`, then install and launch with `xcrun simctl install` and `xcrun simctl launch`.',
|
|
162
|
-
'Do not use Android or Flutter proof steps for native iOS projects unless the repository is explicitly a Flutter project targeting iOS.',
|
|
163
|
-
'If no usable iOS simulator/device or Xcode tooling is available, report the mobile proof as a warning/skipped check with the concrete xcodebuild/simctl reason; this is not a publication blocker by itself.',
|
|
164
|
-
];
|
|
165
|
-
}
|
|
166
|
-
export function buildQualityGatePromptLines(config) {
|
|
167
|
-
const quality = config.reviewGates.quality;
|
|
168
|
-
if (!quality.enabled) {
|
|
169
|
-
return [];
|
|
170
|
-
}
|
|
171
|
-
return [
|
|
172
|
-
'## Quality Gate Contract',
|
|
173
|
-
'For runtime behavior changes, use strict TDD red-to-green: write one focused behavior test first, prove the test fails before implementation, then make the smallest implementation that passes after implementation.',
|
|
174
|
-
'Report TDD as a passed validation line that includes failing/red and passing/green evidence. Do not batch many tests before implementation.',
|
|
175
|
-
`Runtime files are detected with these globs: ${quality.runtimeChangedPathGlobs.join(', ')}.`,
|
|
176
|
-
`Test files are detected with these globs: ${quality.testChangedPathGlobs.join(', ')}.`,
|
|
177
|
-
'Run code-review before completion for runtime changes and report it as a passed validation line.',
|
|
178
|
-
`Run cleanup-review before code-review when the runtime change touches at least ${quality.cleanupReview.runtimeFileThreshold} runtime files, and report it as a passed validation line.`,
|
|
179
|
-
];
|
|
180
|
-
}
|
|
181
|
-
export { classifyVisualProofDispatchTarget, decideProofRouting, isVisualProofDesirable, runnerVisualProofPolicy, shouldApplyVisualProofGate, } from './proof-routing.js';
|
|
182
|
-
export function hasPassedValidation(validation, patterns) {
|
|
183
|
-
return validation.some((line) => line.status === 'passed' && patterns.some((pattern) => regexMatches(pattern, validationText(line))));
|
|
184
|
-
}
|
|
185
|
-
export function hasPassedTddValidation(validation, patterns) {
|
|
186
|
-
if (validation.some((line) => line.status === 'passed' && hasStructuredTddEvidence(line))) {
|
|
187
|
-
return true;
|
|
188
|
-
}
|
|
189
|
-
if (validation.some((line) => line.status === 'passed'
|
|
190
|
-
&& !hasMissingTddProofText(validationText(line))
|
|
191
|
-
&& patterns.some((pattern) => regexMatches(pattern, validationText(line))))) {
|
|
192
|
-
return true;
|
|
193
|
-
}
|
|
194
|
-
const passedTexts = validation
|
|
195
|
-
.filter((line) => line.status === 'passed')
|
|
196
|
-
.map(validationText)
|
|
197
|
-
.filter((text) => !hasMissingTddProofText(text));
|
|
198
|
-
const hasRedEvidence = passedTexts.some(hasTddRedEvidence);
|
|
199
|
-
const hasGreenEvidence = passedTexts.some(hasTddGreenEvidence);
|
|
200
|
-
return hasRedEvidence && hasGreenEvidence;
|
|
201
|
-
}
|
|
202
|
-
function hasStructuredTddEvidence(line) {
|
|
203
|
-
const evidence = line.evidence;
|
|
204
|
-
return evidence?.kind === 'tdd-red-green'
|
|
205
|
-
&& evidence.red.status === 'failed'
|
|
206
|
-
&& evidence.red.command.trim().length > 0
|
|
207
|
-
&& evidence.red.summary.trim().length > 0
|
|
208
|
-
&& evidence.green.status === 'passed'
|
|
209
|
-
&& evidence.green.command.trim().length > 0
|
|
210
|
-
&& evidence.green.summary.trim().length > 0;
|
|
211
|
-
}
|
|
212
|
-
export function validationText(line) {
|
|
213
|
-
return `${line.command}\n${line.summary}`;
|
|
214
|
-
}
|
|
215
|
-
export function isStrongVisualValidation(line) {
|
|
216
|
-
return /(Playwright|screenshot|viewport)/iu.test(validationText(line));
|
|
217
|
-
}
|
|
218
|
-
export function isRunnerVisualValidation(line) {
|
|
219
|
-
return /runner (?:visual|acceptance) proof/iu.test(validationText(line));
|
|
220
|
-
}
|
|
221
|
-
export function regexMatches(pattern, text) {
|
|
222
|
-
return new RegExp(pattern, 'iu').test(text);
|
|
223
|
-
}
|
|
224
|
-
function hasTddRedEvidence(text) {
|
|
225
|
-
return /\bred\s*:/iu.test(text)
|
|
226
|
-
|| /\bred\b[\s\S]{0,160}\bfail(?:ed|ing)?\b/iu.test(text)
|
|
227
|
-
|| /\bfail(?:ed|ing)?\b[\s\S]{0,160}\bred\b/iu.test(text)
|
|
228
|
-
|| /\b(?:test|tests|spec|specs|check|checks)\b[\s\S]{0,120}\bfail(?:ed|ing)?\b/iu.test(text);
|
|
229
|
-
}
|
|
230
|
-
function hasTddGreenEvidence(text) {
|
|
231
|
-
return /\bgreen\s*:/iu.test(text)
|
|
232
|
-
|| /\bgreen\b[\s\S]{0,160}\bpass(?:ed|ing)?\b/iu.test(text)
|
|
233
|
-
|| /\bpass(?:ed|ing)?\b[\s\S]{0,160}\bgreen\b/iu.test(text)
|
|
234
|
-
|| /\b(?:test|tests|spec|specs|check|checks|jest|vitest|playwright|pytest)\b[\s\S]{0,120}\bpass(?:ed|ing)?\b/iu.test(text)
|
|
235
|
-
|| /\b(?:flutter|dart|npm|pnpm|yarn)\s+(?:run\s+)?test\b[\s\S]{0,120}\bpass(?:ed|ing)?\b/iu.test(text);
|
|
236
|
-
}
|
|
237
|
-
function hasMissingTddProofText(text) {
|
|
238
|
-
return /\b(?:without|missing|no|lack(?:s|ing)?)\b[\s\S]{0,40}\bred[-\s]?green\b/iu.test(text)
|
|
239
|
-
|| /\bred[-\s]?green\b[\s\S]{0,40}\b(?:missing|without|no|lack(?:s|ing)?)\b/iu.test(text);
|
|
240
|
-
}
|
|
241
|
-
//# sourceMappingURL=review-gate-policy.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"review-gate-policy.js","sourceRoot":"","sources":["../../../src/runner/review-gate-policy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import type { CodexOrchestratorConfig } from '../config/schema.js';
|
|
2
|
-
import type { GitHubIssue } from '../github/issues.js';
|
|
3
|
-
import type { ScopedCompletionReport } from './completion-report.js';
|
|
4
|
-
import type { PlanAutoCompletionReport } from './completion-report.js';
|
|
5
|
-
import type { RunnerValidationLine } from './handoff-evidence.js';
|
|
6
|
-
import type { RunnerBlocker } from './rework-policy.js';
|
|
7
|
-
export interface ReviewGateInput {
|
|
8
|
-
config: CodexOrchestratorConfig;
|
|
9
|
-
issue: GitHubIssue;
|
|
10
|
-
changedFiles: string[];
|
|
11
|
-
validation: RunnerValidationLine[];
|
|
12
|
-
skippedChecks: string[];
|
|
13
|
-
report: ScopedCompletionReport;
|
|
14
|
-
worktreePath?: string;
|
|
15
|
-
}
|
|
16
|
-
export interface ReviewGateResult {
|
|
17
|
-
ok: boolean;
|
|
18
|
-
reasons: string[];
|
|
19
|
-
warnings: string[];
|
|
20
|
-
blockers?: RunnerBlocker[];
|
|
21
|
-
}
|
|
22
|
-
export { shouldApplyVisualProofGate } from './review-gate-policy.js';
|
|
23
|
-
export declare function evaluateParentRiskRoutingGate(input: {
|
|
24
|
-
config: CodexOrchestratorConfig;
|
|
25
|
-
report: PlanAutoCompletionReport;
|
|
26
|
-
}): ReviewGateResult;
|
|
27
|
-
export declare function evaluateReviewGates(input: ReviewGateInput): ReviewGateResult;
|
|
28
|
-
//# sourceMappingURL=review-gates.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"review-gates.d.ts","sourceRoot":"","sources":["../../../src/runner/review-gates.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAOvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAcxD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,oBAAoB,EAAE,CAAC;IACnC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;CAC5B;AAED,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAErE,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACnD,MAAM,EAAE,uBAAuB,CAAC;IAChC,MAAM,EAAE,wBAAwB,CAAC;CAClC,GAAG,gBAAgB,CAMnB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,eAAe,GAAG,gBAAgB,CA8F5E"}
|