@lannguyensi/harness 0.64.0 → 1.0.0
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 +64 -0
- package/README.md +46 -42
- package/dist/cli/add/index.js +17 -21
- package/dist/cli/add/index.js.map +1 -1
- package/dist/cli/adopt/derive.d.ts +2 -2
- package/dist/cli/adopt/derive.js +2 -19
- package/dist/cli/adopt/derive.js.map +1 -1
- package/dist/cli/adopt/index.d.ts +1 -1
- package/dist/cli/adopt/index.js +1 -12
- package/dist/cli/adopt/index.js.map +1 -1
- package/dist/cli/apply/apply.d.ts +20 -35
- package/dist/cli/apply/apply.js +61 -136
- package/dist/cli/apply/apply.js.map +1 -1
- package/dist/cli/apply/generate-codex-config.js +10 -58
- package/dist/cli/apply/generate-codex-config.js.map +1 -1
- package/dist/cli/apply/generate-memory-index.js +1 -2
- package/dist/cli/apply/generate-memory-index.js.map +1 -1
- package/dist/cli/apply/generate-opencode-config.d.ts +2 -10
- package/dist/cli/apply/generate-opencode-config.js +74 -113
- package/dist/cli/apply/generate-opencode-config.js.map +1 -1
- package/dist/cli/apply/generate-settings.d.ts +11 -64
- package/dist/cli/apply/generate-settings.js +27 -132
- package/dist/cli/apply/generate-settings.js.map +1 -1
- package/dist/cli/apply/index.d.ts +1 -1
- package/dist/cli/apply/index.js +1 -1
- package/dist/cli/apply/index.js.map +1 -1
- package/dist/cli/apply/install-codex-config.d.ts +153 -1
- package/dist/cli/apply/install-codex-config.js +445 -70
- package/dist/cli/apply/install-codex-config.js.map +1 -1
- package/dist/cli/apply/next-steps.d.ts +7 -0
- package/dist/cli/apply/next-steps.js +13 -1
- package/dist/cli/apply/next-steps.js.map +1 -1
- package/dist/cli/bounded-stdin.d.ts +0 -23
- package/dist/cli/bounded-stdin.js +2 -49
- package/dist/cli/bounded-stdin.js.map +1 -1
- package/dist/cli/describe.d.ts +1 -1
- package/dist/cli/describe.js +0 -3
- package/dist/cli/describe.js.map +1 -1
- package/dist/cli/diff/engine.d.ts +0 -11
- package/dist/cli/diff/engine.js +1 -17
- package/dist/cli/diff/engine.js.map +1 -1
- package/dist/cli/diff/index.js +14 -25
- package/dist/cli/diff/index.js.map +1 -1
- package/dist/cli/doctor/claude-mcp.d.ts +4 -19
- package/dist/cli/doctor/claude-mcp.js +11 -22
- package/dist/cli/doctor/claude-mcp.js.map +1 -1
- package/dist/cli/doctor/codex.d.ts +12 -14
- package/dist/cli/doctor/codex.js +31 -144
- package/dist/cli/doctor/codex.js.map +1 -1
- package/dist/cli/doctor/format.js +23 -345
- package/dist/cli/doctor/format.js.map +1 -1
- package/dist/cli/doctor/hook-liveness.d.ts +56 -0
- package/dist/cli/doctor/hook-liveness.js +455 -0
- package/dist/cli/doctor/hook-liveness.js.map +1 -0
- package/dist/cli/doctor/index.d.ts +13 -87
- package/dist/cli/doctor/index.js +57 -713
- package/dist/cli/doctor/index.js.map +1 -1
- package/dist/cli/doctor/opencode.d.ts +2 -1
- package/dist/cli/doctor/opencode.js.map +1 -1
- package/dist/cli/doctor/types.d.ts +21 -387
- package/dist/cli/doctor/types.js.map +1 -1
- package/dist/cli/drain-stdio.d.ts +31 -0
- package/dist/cli/drain-stdio.js +76 -0
- package/dist/cli/drain-stdio.js.map +1 -0
- package/dist/cli/export.d.ts +3 -1
- package/dist/cli/export.js +7 -16
- package/dist/cli/export.js.map +1 -1
- package/dist/cli/gate/codex-disable.d.ts +29 -0
- package/dist/cli/gate/codex-disable.js +195 -0
- package/dist/cli/gate/codex-disable.js.map +1 -0
- package/dist/cli/gate/codex-enable.d.ts +41 -0
- package/dist/cli/gate/codex-enable.js +127 -0
- package/dist/cli/gate/codex-enable.js.map +1 -0
- package/dist/cli/gate/codex-snapshot.d.ts +208 -0
- package/dist/cli/gate/codex-snapshot.js +402 -0
- package/dist/cli/gate/codex-snapshot.js.map +1 -0
- package/dist/cli/gate/disable.d.ts +9 -0
- package/dist/cli/gate/disable.js +263 -28
- package/dist/cli/gate/disable.js.map +1 -1
- package/dist/cli/gate/enable.d.ts +26 -6
- package/dist/cli/gate/enable.js +152 -80
- package/dist/cli/gate/enable.js.map +1 -1
- package/dist/cli/gate/link-chain.d.ts +53 -0
- package/dist/cli/gate/link-chain.js +122 -0
- package/dist/cli/gate/link-chain.js.map +1 -0
- package/dist/cli/gate/snapshot.d.ts +289 -12
- package/dist/cli/gate/snapshot.js +481 -22
- package/dist/cli/gate/snapshot.js.map +1 -1
- package/dist/cli/index.d.ts +0 -9
- package/dist/cli/index.js +9 -2131
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init/composer.d.ts +3 -6
- package/dist/cli/init/composer.js +6 -370
- package/dist/cli/init/composer.js.map +1 -1
- package/dist/cli/init/dependencies.d.ts +1 -2
- package/dist/cli/init/dependencies.js +4 -80
- package/dist/cli/init/dependencies.js.map +1 -1
- package/dist/cli/init/detect.js +5 -4
- package/dist/cli/init/detect.js.map +1 -1
- package/dist/cli/init/interactive.d.ts +1 -23
- package/dist/cli/init/interactive.js +33 -247
- package/dist/cli/init/interactive.js.map +1 -1
- package/dist/cli/init/profiles.d.ts +2 -2
- package/dist/cli/init/profiles.js +51 -245
- package/dist/cli/init/profiles.js.map +1 -1
- package/dist/cli/init/templates.d.ts +2 -37
- package/dist/cli/init/templates.js +25 -1237
- package/dist/cli/init/templates.js.map +1 -1
- package/dist/cli/list.d.ts +1 -1
- package/dist/cli/list.js +1 -38
- package/dist/cli/list.js.map +1 -1
- package/dist/cli/loader.d.ts +15 -1
- package/dist/cli/loader.js +56 -39
- package/dist/cli/loader.js.map +1 -1
- package/dist/cli/main.js +7 -2
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/migrate-home/index.js +2 -2
- package/dist/cli/migrate-home/index.js.map +1 -1
- package/dist/cli/pack/add.js +1 -1
- package/dist/cli/pack/add.js.map +1 -1
- package/dist/cli/pack/hook-bootstrap.d.ts +5 -164
- package/dist/cli/pack/hook-bootstrap.js +15 -291
- package/dist/cli/pack/hook-bootstrap.js.map +1 -1
- package/dist/cli/pack/hook-branch-protection.d.ts +28 -21
- package/dist/cli/pack/hook-branch-protection.js +365 -340
- package/dist/cli/pack/hook-branch-protection.js.map +1 -1
- package/dist/cli/pack/index.d.ts +0 -1
- package/dist/cli/pack/index.js +0 -1
- package/dist/cli/pack/index.js.map +1 -1
- package/dist/cli/pack/list.js +1 -6
- package/dist/cli/pack/list.js.map +1 -1
- package/dist/cli/pack/mutate.d.ts +7 -9
- package/dist/cli/pack/mutate.js +6 -9
- package/dist/cli/pack/mutate.js.map +1 -1
- package/dist/cli/pack/reseed.d.ts +2 -2
- package/dist/cli/pack/reseed.js +16 -22
- package/dist/cli/pack/reseed.js.map +1 -1
- package/dist/cli/{delegate/register.d.ts → register-gate-group.d.ts} +1 -1
- package/dist/cli/register-gate-group.js +348 -0
- package/dist/cli/register-gate-group.js.map +1 -0
- package/dist/cli/register-inspect-group.d.ts +6 -0
- package/dist/cli/register-inspect-group.js +189 -0
- package/dist/cli/register-inspect-group.js.map +1 -0
- package/dist/cli/register-operator-lifecycle.d.ts +1 -1
- package/dist/cli/register-operator-lifecycle.js +3 -100
- package/dist/cli/register-operator-lifecycle.js.map +1 -1
- package/dist/cli/register-pack-group.d.ts +5 -0
- package/dist/cli/register-pack-group.js +134 -0
- package/dist/cli/register-pack-group.js.map +1 -0
- package/dist/cli/{register-audit-group.d.ts → register-setup-group.d.ts} +1 -1
- package/dist/cli/register-setup-group.js +495 -0
- package/dist/cli/register-setup-group.js.map +1 -0
- package/dist/cli/remove/index.d.ts +0 -14
- package/dist/cli/remove/index.js +2 -115
- package/dist/cli/remove/index.js.map +1 -1
- package/dist/cli/remove/mutate.d.ts +0 -2
- package/dist/cli/remove/mutate.js +1 -19
- package/dist/cli/remove/mutate.js.map +1 -1
- package/dist/cli/remove/register.js +2 -19
- package/dist/cli/remove/register.js.map +1 -1
- package/dist/cli/shell-quote.d.ts +7 -0
- package/dist/cli/shell-quote.js +17 -0
- package/dist/cli/shell-quote.js.map +1 -0
- package/dist/cli/uninstall/index.d.ts +4 -2
- package/dist/cli/uninstall/index.js +15 -7
- package/dist/cli/uninstall/index.js.map +1 -1
- package/dist/cli/uninstall/register.js +6 -4
- package/dist/cli/uninstall/register.js.map +1 -1
- package/dist/cli/uninstall/snapshot.d.ts +15 -0
- package/dist/cli/uninstall/snapshot.js +38 -0
- package/dist/cli/uninstall/snapshot.js.map +1 -1
- package/dist/cli/validate/checks.d.ts +0 -77
- package/dist/cli/validate/checks.js +3 -1049
- package/dist/cli/validate/checks.js.map +1 -1
- package/dist/cli/validate/index.js +19 -15
- package/dist/cli/validate/index.js.map +1 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.js +0 -3
- package/dist/index.js.map +1 -1
- package/dist/io/claude-mcp.d.ts +1 -1
- package/dist/io/claude-mcp.js +27 -14
- package/dist/io/claude-mcp.js.map +1 -1
- package/dist/io/harness-lock.js +2 -2
- package/dist/io/harness-lock.js.map +1 -1
- package/dist/io/lock.d.ts +0 -26
- package/dist/io/lock.js +10 -27
- package/dist/io/lock.js.map +1 -1
- package/dist/io/merge-settings.js +6 -4
- package/dist/io/merge-settings.js.map +1 -1
- package/dist/io/project-name.d.ts +22 -39
- package/dist/io/project-name.js +25 -42
- package/dist/io/project-name.js.map +1 -1
- package/dist/io/read-regular-file.d.ts +103 -40
- package/dist/io/read-regular-file.js +196 -35
- package/dist/io/read-regular-file.js.map +1 -1
- package/dist/io/restart-hints.js +3 -6
- package/dist/io/restart-hints.js.map +1 -1
- package/dist/io/version-compare.d.ts +1 -3
- package/dist/io/version-compare.js +1 -3
- package/dist/io/version-compare.js.map +1 -1
- package/dist/io/write-regular-file.d.ts +30 -0
- package/dist/io/write-regular-file.js +85 -0
- package/dist/io/write-regular-file.js.map +1 -0
- package/dist/overrides/index.d.ts +1 -0
- package/dist/overrides/index.js +1 -0
- package/dist/overrides/index.js.map +1 -1
- package/dist/overrides/merge-layers.d.ts +43 -0
- package/dist/overrides/merge-layers.js +76 -0
- package/dist/overrides/merge-layers.js.map +1 -0
- package/dist/overrides/merge.d.ts +16 -0
- package/dist/overrides/merge.js +21 -8
- package/dist/overrides/merge.js.map +1 -1
- package/dist/policy-packs/builtin/branch-protection-runtime.d.ts +4 -69
- package/dist/policy-packs/builtin/branch-protection-runtime.js +12 -84
- package/dist/policy-packs/builtin/branch-protection-runtime.js.map +1 -1
- package/dist/policy-packs/builtin/branch-protection.d.ts +7 -30
- package/dist/policy-packs/builtin/branch-protection.js +56 -89
- package/dist/policy-packs/builtin/branch-protection.js.map +1 -1
- package/dist/policy-packs/config-check.d.ts +7 -5
- package/dist/policy-packs/config-check.js +2 -2
- package/dist/policy-packs/config-check.js.map +1 -1
- package/dist/policy-packs/expand.d.ts +1 -3
- package/dist/policy-packs/expand.js +5 -42
- package/dist/policy-packs/expand.js.map +1 -1
- package/dist/policy-packs/index.d.ts +3 -3
- package/dist/policy-packs/index.js +2 -2
- package/dist/policy-packs/index.js.map +1 -1
- package/dist/policy-packs/registry.d.ts +9 -38
- package/dist/policy-packs/registry.js +5 -65
- package/dist/policy-packs/registry.js.map +1 -1
- package/dist/policy-packs/runtime.d.ts +0 -4
- package/dist/policy-packs/runtime.js +9 -22
- package/dist/policy-packs/runtime.js.map +1 -1
- package/dist/policy-packs/types.d.ts +0 -19
- package/dist/policy-packs/ux-compare.d.ts +1 -11
- package/dist/policy-packs/ux-compare.js +6 -42
- package/dist/policy-packs/ux-compare.js.map +1 -1
- package/dist/policy-packs/ux-drift-check.d.ts +5 -5
- package/dist/policy-packs/ux-drift-check.js +17 -22
- package/dist/policy-packs/ux-drift-check.js.map +1 -1
- package/dist/policy-packs/version-check.d.ts +5 -26
- package/dist/policy-packs/version-check.js +19 -74
- package/dist/policy-packs/version-check.js.map +1 -1
- package/dist/probes/memory.d.ts +1 -1
- package/dist/probes/memory.js +1 -1
- package/dist/probes/memory.js.map +1 -1
- package/dist/runtime/agent-facing.d.ts +9 -0
- package/dist/runtime/agent-facing.js +28 -14
- package/dist/runtime/agent-facing.js.map +1 -1
- package/dist/runtime/bounded-text.d.ts +15 -0
- package/dist/runtime/bounded-text.js +27 -0
- package/dist/runtime/bounded-text.js.map +1 -0
- package/dist/runtime/git-branch.d.ts +125 -0
- package/dist/runtime/git-branch.js +381 -0
- package/dist/runtime/git-branch.js.map +1 -0
- package/dist/runtime/hermetic-spawn-guard.d.ts +2 -2
- package/dist/runtime/hermetic-spawn-guard.js +24 -34
- package/dist/runtime/hermetic-spawn-guard.js.map +1 -1
- package/dist/runtime/home-dir.js +3 -2
- package/dist/runtime/home-dir.js.map +1 -1
- package/dist/runtime/tool-name-aliases.d.ts +0 -6
- package/dist/runtime/tool-name-aliases.js +5 -18
- package/dist/runtime/tool-name-aliases.js.map +1 -1
- package/dist/schema/grounding.d.ts +7 -54
- package/dist/schema/grounding.js +10 -12
- package/dist/schema/grounding.js.map +1 -1
- package/dist/schema/hooks.d.ts +39 -136
- package/dist/schema/hooks.js +3 -6
- package/dist/schema/hooks.js.map +1 -1
- package/dist/schema/index.d.ts +114 -3828
- package/dist/schema/index.js +41 -80
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/memory.d.ts +54 -131
- package/dist/schema/memory.js +2 -2
- package/dist/schema/memory.js.map +1 -1
- package/dist/schema/policy-packs.d.ts +3 -45
- package/dist/schema/policy-packs.js +7 -13
- package/dist/schema/policy-packs.js.map +1 -1
- package/dist/schema/policy-ux.d.ts +7 -0
- package/dist/schema/policy-ux.js +18 -0
- package/dist/schema/policy-ux.js.map +1 -0
- package/dist/schema/removed-keys.d.ts +185 -0
- package/dist/schema/removed-keys.js +531 -0
- package/dist/schema/removed-keys.js.map +1 -0
- package/dist/schema/tools.d.ts +30 -268
- package/dist/schema/tools.js +4 -4
- package/dist/schema/tools.js.map +1 -1
- package/package.json +5 -16
- package/dist/cli/approve/branch-protection.d.ts +0 -69
- package/dist/cli/approve/branch-protection.js +0 -144
- package/dist/cli/approve/branch-protection.js.map +0 -1
- package/dist/cli/approve/risk.d.ts +0 -112
- package/dist/cli/approve/risk.js +0 -197
- package/dist/cli/approve/risk.js.map +0 -1
- package/dist/cli/approve/stdin-report.d.ts +0 -57
- package/dist/cli/approve/stdin-report.js +0 -145
- package/dist/cli/approve/stdin-report.js.map +0 -1
- package/dist/cli/approve/understanding.d.ts +0 -410
- package/dist/cli/approve/understanding.js +0 -996
- package/dist/cli/approve/understanding.js.map +0 -1
- package/dist/cli/audit.d.ts +0 -80
- package/dist/cli/audit.js +0 -252
- package/dist/cli/audit.js.map +0 -1
- package/dist/cli/delegate/index.d.ts +0 -76
- package/dist/cli/delegate/index.js +0 -444
- package/dist/cli/delegate/index.js.map +0 -1
- package/dist/cli/delegate/register.js +0 -90
- package/dist/cli/delegate/register.js.map +0 -1
- package/dist/cli/doctor/auto-approve-mode.d.ts +0 -37
- package/dist/cli/doctor/auto-approve-mode.js +0 -80
- package/dist/cli/doctor/auto-approve-mode.js.map +0 -1
- package/dist/cli/doctor/bypass-without-auto-approve.d.ts +0 -38
- package/dist/cli/doctor/bypass-without-auto-approve.js +0 -95
- package/dist/cli/doctor/bypass-without-auto-approve.js.map +0 -1
- package/dist/cli/doctor/codex-config-drift.d.ts +0 -28
- package/dist/cli/doctor/codex-config-drift.js +0 -240
- package/dist/cli/doctor/codex-config-drift.js.map +0 -1
- package/dist/cli/doctor/expire-on-tool-match.d.ts +0 -15
- package/dist/cli/doctor/expire-on-tool-match.js +0 -58
- package/dist/cli/doctor/expire-on-tool-match.js.map +0 -1
- package/dist/cli/doctor/rogue-ledger.d.ts +0 -53
- package/dist/cli/doctor/rogue-ledger.js +0 -153
- package/dist/cli/doctor/rogue-ledger.js.map +0 -1
- package/dist/cli/doctor/session-start-preflight-setup-version.d.ts +0 -83
- package/dist/cli/doctor/session-start-preflight-setup-version.js +0 -114
- package/dist/cli/doctor/session-start-preflight-setup-version.js.map +0 -1
- package/dist/cli/doctor/settings-drift.d.ts +0 -25
- package/dist/cli/doctor/settings-drift.js +0 -213
- package/dist/cli/doctor/settings-drift.js.map +0 -1
- package/dist/cli/doctor/toolchain-parity.d.ts +0 -63
- package/dist/cli/doctor/toolchain-parity.js +0 -154
- package/dist/cli/doctor/toolchain-parity.js.map +0 -1
- package/dist/cli/doctor/ug-auto-approvals.d.ts +0 -40
- package/dist/cli/doctor/ug-auto-approvals.js +0 -91
- package/dist/cli/doctor/ug-auto-approvals.js.map +0 -1
- package/dist/cli/doctor/ug-delegations.d.ts +0 -26
- package/dist/cli/doctor/ug-delegations.js +0 -121
- package/dist/cli/doctor/ug-delegations.js.map +0 -1
- package/dist/cli/doctor/ug-inflight.d.ts +0 -35
- package/dist/cli/doctor/ug-inflight.js +0 -57
- package/dist/cli/doctor/ug-inflight.js.map +0 -1
- package/dist/cli/doctor/understanding-mode-env.d.ts +0 -51
- package/dist/cli/doctor/understanding-mode-env.js +0 -98
- package/dist/cli/doctor/understanding-mode-env.js.map +0 -1
- package/dist/cli/dry-run.d.ts +0 -58
- package/dist/cli/dry-run.js +0 -283
- package/dist/cli/dry-run.js.map +0 -1
- package/dist/cli/enriched-event.d.ts +0 -35
- package/dist/cli/enriched-event.js +0 -60
- package/dist/cli/enriched-event.js.map +0 -1
- package/dist/cli/event-input.d.ts +0 -28
- package/dist/cli/event-input.js +0 -73
- package/dist/cli/event-input.js.map +0 -1
- package/dist/cli/explain-action.d.ts +0 -25
- package/dist/cli/explain-action.js +0 -57
- package/dist/cli/explain-action.js.map +0 -1
- package/dist/cli/explain-policy.d.ts +0 -147
- package/dist/cli/explain-policy.js +0 -248
- package/dist/cli/explain-policy.js.map +0 -1
- package/dist/cli/explain.d.ts +0 -31
- package/dist/cli/explain.js +0 -159
- package/dist/cli/explain.js.map +0 -1
- package/dist/cli/gc/index.d.ts +0 -63
- package/dist/cli/gc/index.js +0 -566
- package/dist/cli/gc/index.js.map +0 -1
- package/dist/cli/pack/approve-escape.d.ts +0 -19
- package/dist/cli/pack/approve-escape.js +0 -190
- package/dist/cli/pack/approve-escape.js.map +0 -1
- package/dist/cli/pack/auto-approve-path.d.ts +0 -146
- package/dist/cli/pack/auto-approve-path.js +0 -462
- package/dist/cli/pack/auto-approve-path.js.map +0 -1
- package/dist/cli/pack/hook-codex-post-tool-use.d.ts +0 -25
- package/dist/cli/pack/hook-codex-post-tool-use.js +0 -160
- package/dist/cli/pack/hook-codex-post-tool-use.js.map +0 -1
- package/dist/cli/pack/hook-codex-pre-tool-use.d.ts +0 -48
- package/dist/cli/pack/hook-codex-pre-tool-use.js +0 -474
- package/dist/cli/pack/hook-codex-pre-tool-use.js.map +0 -1
- package/dist/cli/pack/hook-codex-stop.d.ts +0 -35
- package/dist/cli/pack/hook-codex-stop.js +0 -329
- package/dist/cli/pack/hook-codex-stop.js.map +0 -1
- package/dist/cli/pack/hook-codex-user-prompt-submit.d.ts +0 -24
- package/dist/cli/pack/hook-codex-user-prompt-submit.js +0 -93
- package/dist/cli/pack/hook-codex-user-prompt-submit.js.map +0 -1
- package/dist/cli/pack/hook-post-merge-gate-record.d.ts +0 -37
- package/dist/cli/pack/hook-post-merge-gate-record.js +0 -190
- package/dist/cli/pack/hook-post-merge-gate-record.js.map +0 -1
- package/dist/cli/pack/hook-post-merge-gate.d.ts +0 -34
- package/dist/cli/pack/hook-post-merge-gate.js +0 -277
- package/dist/cli/pack/hook-post-merge-gate.js.map +0 -1
- package/dist/cli/pack/hook-post-tool-use.d.ts +0 -45
- package/dist/cli/pack/hook-post-tool-use.js +0 -137
- package/dist/cli/pack/hook-post-tool-use.js.map +0 -1
- package/dist/cli/pack/hook-pre-tool-use.d.ts +0 -92
- package/dist/cli/pack/hook-pre-tool-use.js +0 -1328
- package/dist/cli/pack/hook-pre-tool-use.js.map +0 -1
- package/dist/cli/pack/hook-runtime-reality.d.ts +0 -63
- package/dist/cli/pack/hook-runtime-reality.js +0 -210
- package/dist/cli/pack/hook-runtime-reality.js.map +0 -1
- package/dist/cli/pack/hook-solution-acceptance-writeguard.d.ts +0 -32
- package/dist/cli/pack/hook-solution-acceptance-writeguard.js +0 -438
- package/dist/cli/pack/hook-solution-acceptance-writeguard.js.map +0 -1
- package/dist/cli/pack/hook-solution-acceptance.d.ts +0 -157
- package/dist/cli/pack/hook-solution-acceptance.js +0 -530
- package/dist/cli/pack/hook-solution-acceptance.js.map +0 -1
- package/dist/cli/pack/hook-stay-in-scope.d.ts +0 -37
- package/dist/cli/pack/hook-stay-in-scope.js +0 -128
- package/dist/cli/pack/hook-stay-in-scope.js.map +0 -1
- package/dist/cli/pack/hook-subagent-start.d.ts +0 -23
- package/dist/cli/pack/hook-subagent-start.js +0 -88
- package/dist/cli/pack/hook-subagent-start.js.map +0 -1
- package/dist/cli/pack/hook-subagent-stop.d.ts +0 -19
- package/dist/cli/pack/hook-subagent-stop.js +0 -41
- package/dist/cli/pack/hook-subagent-stop.js.map +0 -1
- package/dist/cli/pack/hook-track-active-claim.d.ts +0 -27
- package/dist/cli/pack/hook-track-active-claim.js +0 -275
- package/dist/cli/pack/hook-track-active-claim.js.map +0 -1
- package/dist/cli/pack/transcript-report-scan.d.ts +0 -71
- package/dist/cli/pack/transcript-report-scan.js +0 -359
- package/dist/cli/pack/transcript-report-scan.js.map +0 -1
- package/dist/cli/pack/understanding-report-schema-hint.d.ts +0 -26
- package/dist/cli/pack/understanding-report-schema-hint.js +0 -120
- package/dist/cli/pack/understanding-report-schema-hint.js.map +0 -1
- package/dist/cli/pack/upgrade.d.ts +0 -32
- package/dist/cli/pack/upgrade.js +0 -273
- package/dist/cli/pack/upgrade.js.map +0 -1
- package/dist/cli/pause/index.d.ts +0 -113
- package/dist/cli/pause/index.js +0 -251
- package/dist/cli/pause/index.js.map +0 -1
- package/dist/cli/pause-check.d.ts +0 -22
- package/dist/cli/pause-check.js +0 -54
- package/dist/cli/pause-check.js.map +0 -1
- package/dist/cli/policy/intercept.d.ts +0 -233
- package/dist/cli/policy/intercept.js +0 -1022
- package/dist/cli/policy/intercept.js.map +0 -1
- package/dist/cli/policy/risk-envelope-enrichment.d.ts +0 -40
- package/dist/cli/policy/risk-envelope-enrichment.js +0 -110
- package/dist/cli/policy/risk-envelope-enrichment.js.map +0 -1
- package/dist/cli/record/index.d.ts +0 -81
- package/dist/cli/record/index.js +0 -348
- package/dist/cli/record/index.js.map +0 -1
- package/dist/cli/register-audit-group.js +0 -91
- package/dist/cli/register-audit-group.js.map +0 -1
- package/dist/cli/resolve-env.d.ts +0 -32
- package/dist/cli/resolve-env.js +0 -46
- package/dist/cli/resolve-env.js.map +0 -1
- package/dist/cli/session-export/index.d.ts +0 -46
- package/dist/cli/session-export/index.js +0 -169
- package/dist/cli/session-export/index.js.map +0 -1
- package/dist/cli/session-export/redact.d.ts +0 -22
- package/dist/cli/session-export/redact.js +0 -47
- package/dist/cli/session-export/redact.js.map +0 -1
- package/dist/cli/session-export/transcript.d.ts +0 -24
- package/dist/cli/session-export/transcript.js +0 -164
- package/dist/cli/session-export/transcript.js.map +0 -1
- package/dist/cli/session-start/branch-check.d.ts +0 -18
- package/dist/cli/session-start/branch-check.js +0 -140
- package/dist/cli/session-start/branch-check.js.map +0 -1
- package/dist/cli/session-start/index.d.ts +0 -121
- package/dist/cli/session-start/index.js +0 -591
- package/dist/cli/session-start/index.js.map +0 -1
- package/dist/cli/session-start/shared-options.d.ts +0 -103
- package/dist/cli/session-start/shared-options.js +0 -107
- package/dist/cli/session-start/shared-options.js.map +0 -1
- package/dist/cli/session-start/stale-base-check.d.ts +0 -46
- package/dist/cli/session-start/stale-base-check.js +0 -352
- package/dist/cli/session-start/stale-base-check.js.map +0 -1
- package/dist/cli/session-start/toolchain-parity.d.ts +0 -267
- package/dist/cli/session-start/toolchain-parity.js +0 -797
- package/dist/cli/session-start/toolchain-parity.js.map +0 -1
- package/dist/cli/smoke/assertions.d.ts +0 -46
- package/dist/cli/smoke/assertions.js +0 -170
- package/dist/cli/smoke/assertions.js.map +0 -1
- package/dist/cli/smoke/index.d.ts +0 -76
- package/dist/cli/smoke/index.js +0 -245
- package/dist/cli/smoke/index.js.map +0 -1
- package/dist/cli/smoke/runner.d.ts +0 -55
- package/dist/cli/smoke/runner.js +0 -134
- package/dist/cli/smoke/runner.js.map +0 -1
- package/dist/cli/smoke/stream-parser.d.ts +0 -65
- package/dist/cli/smoke/stream-parser.js +0 -115
- package/dist/cli/smoke/stream-parser.js.map +0 -1
- package/dist/cli/test-risk.d.ts +0 -27
- package/dist/cli/test-risk.js +0 -38
- package/dist/cli/test-risk.js.map +0 -1
- package/dist/io/display-path.d.ts +0 -11
- package/dist/io/display-path.js +0 -29
- package/dist/io/display-path.js.map +0 -1
- package/dist/io/duration.d.ts +0 -5
- package/dist/io/duration.js +0 -50
- package/dist/io/duration.js.map +0 -1
- package/dist/io/extract.d.ts +0 -79
- package/dist/io/extract.js +0 -226
- package/dist/io/extract.js.map +0 -1
- package/dist/io/ledger-record.d.ts +0 -83
- package/dist/io/ledger-record.js +0 -301
- package/dist/io/ledger-record.js.map +0 -1
- package/dist/io/read-json-dir-entries.d.ts +0 -36
- package/dist/io/read-json-dir-entries.js +0 -48
- package/dist/io/read-json-dir-entries.js.map +0 -1
- package/dist/io/safe-json-parse.d.ts +0 -5
- package/dist/io/safe-json-parse.js +0 -21
- package/dist/io/safe-json-parse.js.map +0 -1
- package/dist/policies/index.d.ts +0 -5
- package/dist/policies/index.js +0 -6
- package/dist/policies/index.js.map +0 -1
- package/dist/policies/ledger-client.d.ts +0 -113
- package/dist/policies/ledger-client.js +0 -500
- package/dist/policies/ledger-client.js.map +0 -1
- package/dist/policies/producers.d.ts +0 -12
- package/dist/policies/producers.js +0 -61
- package/dist/policies/producers.js.map +0 -1
- package/dist/policies/requires.d.ts +0 -75
- package/dist/policies/requires.js +0 -240
- package/dist/policies/requires.js.map +0 -1
- package/dist/policies/timestamp.d.ts +0 -14
- package/dist/policies/timestamp.js +0 -36
- package/dist/policies/timestamp.js.map +0 -1
- package/dist/policy-packs/builtin/permission-profiles.d.ts +0 -11
- package/dist/policy-packs/builtin/permission-profiles.js +0 -74
- package/dist/policy-packs/builtin/permission-profiles.js.map +0 -1
- package/dist/policy-packs/builtin/post-merge-gate-runtime.d.ts +0 -286
- package/dist/policy-packs/builtin/post-merge-gate-runtime.js +0 -397
- package/dist/policy-packs/builtin/post-merge-gate-runtime.js.map +0 -1
- package/dist/policy-packs/builtin/post-merge-gate.d.ts +0 -56
- package/dist/policy-packs/builtin/post-merge-gate.js +0 -347
- package/dist/policy-packs/builtin/post-merge-gate.js.map +0 -1
- package/dist/policy-packs/builtin/solution-acceptance-reconnect.d.ts +0 -50
- package/dist/policy-packs/builtin/solution-acceptance-reconnect.js +0 -151
- package/dist/policy-packs/builtin/solution-acceptance-reconnect.js.map +0 -1
- package/dist/policy-packs/builtin/solution-acceptance-runtime.d.ts +0 -323
- package/dist/policy-packs/builtin/solution-acceptance-runtime.js +0 -672
- package/dist/policy-packs/builtin/solution-acceptance-runtime.js.map +0 -1
- package/dist/policy-packs/builtin/solution-acceptance.d.ts +0 -45
- package/dist/policy-packs/builtin/solution-acceptance.js +0 -226
- package/dist/policy-packs/builtin/solution-acceptance.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/active-claim.d.ts +0 -25
- package/dist/policy-packs/builtin/understanding-before-execution/active-claim.js +0 -94
- package/dist/policy-packs/builtin/understanding-before-execution/active-claim.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/auto-approve-default.d.ts +0 -35
- package/dist/policy-packs/builtin/understanding-before-execution/auto-approve-default.js +0 -86
- package/dist/policy-packs/builtin/understanding-before-execution/auto-approve-default.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/auto-approve.d.ts +0 -210
- package/dist/policy-packs/builtin/understanding-before-execution/auto-approve.js +0 -361
- package/dist/policy-packs/builtin/understanding-before-execution/auto-approve.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.d.ts +0 -304
- package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js +0 -734
- package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/expiry-reason.d.ts +0 -36
- package/dist/policy-packs/builtin/understanding-before-execution/expiry-reason.js +0 -73
- package/dist/policy-packs/builtin/understanding-before-execution/expiry-reason.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/index.d.ts +0 -19
- package/dist/policy-packs/builtin/understanding-before-execution/index.js +0 -83
- package/dist/policy-packs/builtin/understanding-before-execution/index.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.d.ts +0 -135
- package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.js +0 -643
- package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/ledger.d.ts +0 -25
- package/dist/policy-packs/builtin/understanding-before-execution/ledger.js +0 -56
- package/dist/policy-packs/builtin/understanding-before-execution/ledger.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/lifecycle.d.ts +0 -20
- package/dist/policy-packs/builtin/understanding-before-execution/lifecycle.js +0 -106
- package/dist/policy-packs/builtin/understanding-before-execution/lifecycle.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/markers.d.ts +0 -126
- package/dist/policy-packs/builtin/understanding-before-execution/markers.js +0 -245
- package/dist/policy-packs/builtin/understanding-before-execution/markers.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/measured-permission-modes.d.ts +0 -29
- package/dist/policy-packs/builtin/understanding-before-execution/measured-permission-modes.js +0 -82
- package/dist/policy-packs/builtin/understanding-before-execution/measured-permission-modes.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.d.ts +0 -71
- package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.js +0 -175
- package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/persisted-reports.d.ts +0 -625
- package/dist/policy-packs/builtin/understanding-before-execution/persisted-reports.js +0 -1076
- package/dist/policy-packs/builtin/understanding-before-execution/persisted-reports.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.d.ts +0 -128
- package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js +0 -213
- package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.d.ts +0 -129
- package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.js +0 -166
- package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution/task-markers.d.ts +0 -164
- package/dist/policy-packs/builtin/understanding-before-execution/task-markers.js +0 -275
- package/dist/policy-packs/builtin/understanding-before-execution/task-markers.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution-runtime.d.ts +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution-runtime.js +0 -10
- package/dist/policy-packs/builtin/understanding-before-execution-runtime.js.map +0 -1
- package/dist/policy-packs/builtin/understanding-before-execution.d.ts +0 -526
- package/dist/policy-packs/builtin/understanding-before-execution.js +0 -1078
- package/dist/policy-packs/builtin/understanding-before-execution.js.map +0 -1
- package/dist/policy-packs/permission-translator.d.ts +0 -9
- package/dist/policy-packs/permission-translator.js +0 -76
- package/dist/policy-packs/permission-translator.js.map +0 -1
- package/dist/runtime/action-envelope.d.ts +0 -64
- package/dist/runtime/action-envelope.js +0 -46
- package/dist/runtime/action-envelope.js.map +0 -1
- package/dist/runtime/approval-signing.d.ts +0 -111
- package/dist/runtime/approval-signing.js +0 -384
- package/dist/runtime/approval-signing.js.map +0 -1
- package/dist/runtime/bash-match-facts.d.ts +0 -60
- package/dist/runtime/bash-match-facts.js +0 -196
- package/dist/runtime/bash-match-facts.js.map +0 -1
- package/dist/runtime/bash-match-registry.d.ts +0 -112
- package/dist/runtime/bash-match-registry.js +0 -406
- package/dist/runtime/bash-match-registry.js.map +0 -1
- package/dist/runtime/bash-prefix-parse.d.ts +0 -31
- package/dist/runtime/bash-prefix-parse.js +0 -576
- package/dist/runtime/bash-prefix-parse.js.map +0 -1
- package/dist/runtime/command-normalize.d.ts +0 -658
- package/dist/runtime/command-normalize.js +0 -2410
- package/dist/runtime/command-normalize.js.map +0 -1
- package/dist/runtime/deletion-target-resolve.d.ts +0 -28
- package/dist/runtime/deletion-target-resolve.js +0 -1078
- package/dist/runtime/deletion-target-resolve.js.map +0 -1
- package/dist/runtime/destructive-shell-floor.d.ts +0 -19
- package/dist/runtime/destructive-shell-floor.js +0 -611
- package/dist/runtime/destructive-shell-floor.js.map +0 -1
- package/dist/runtime/environment-resolver.d.ts +0 -36
- package/dist/runtime/environment-resolver.js +0 -138
- package/dist/runtime/environment-resolver.js.map +0 -1
- package/dist/runtime/git-context.d.ts +0 -201
- package/dist/runtime/git-context.js +0 -422
- package/dist/runtime/git-context.js.map +0 -1
- package/dist/runtime/index.d.ts +0 -12
- package/dist/runtime/index.js +0 -13
- package/dist/runtime/index.js.map +0 -1
- package/dist/runtime/intercept.d.ts +0 -623
- package/dist/runtime/intercept.js +0 -1384
- package/dist/runtime/intercept.js.map +0 -1
- package/dist/runtime/kube-context.d.ts +0 -16
- package/dist/runtime/kube-context.js +0 -63
- package/dist/runtime/kube-context.js.map +0 -1
- package/dist/runtime/kubectl-target-parse.d.ts +0 -31
- package/dist/runtime/kubectl-target-parse.js +0 -249
- package/dist/runtime/kubectl-target-parse.js.map +0 -1
- package/dist/runtime/ledger-add.d.ts +0 -16
- package/dist/runtime/ledger-add.js +0 -150
- package/dist/runtime/ledger-add.js.map +0 -1
- package/dist/runtime/ledger-writer.d.ts +0 -27
- package/dist/runtime/ledger-writer.js +0 -46
- package/dist/runtime/ledger-writer.js.map +0 -1
- package/dist/runtime/pause-sentinel.d.ts +0 -60
- package/dist/runtime/pause-sentinel.js +0 -156
- package/dist/runtime/pause-sentinel.js.map +0 -1
- package/dist/runtime/pending-approval.d.ts +0 -23
- package/dist/runtime/pending-approval.js +0 -67
- package/dist/runtime/pending-approval.js.map +0 -1
- package/dist/runtime/read-only-bash.d.ts +0 -141
- package/dist/runtime/read-only-bash.js +0 -2204
- package/dist/runtime/read-only-bash.js.map +0 -1
- package/dist/runtime/recovery-git-commit.d.ts +0 -22
- package/dist/runtime/recovery-git-commit.js +0 -284
- package/dist/runtime/recovery-git-commit.js.map +0 -1
- package/dist/runtime/reject-malformed-session-id.d.ts +0 -8
- package/dist/runtime/reject-malformed-session-id.js +0 -16
- package/dist/runtime/reject-malformed-session-id.js.map +0 -1
- package/dist/runtime/risk-classifier.d.ts +0 -38
- package/dist/runtime/risk-classifier.js +0 -311
- package/dist/runtime/risk-classifier.js.map +0 -1
- package/dist/runtime/session-id.d.ts +0 -113
- package/dist/runtime/session-id.js +0 -193
- package/dist/runtime/session-id.js.map +0 -1
- package/dist/runtime/shell-word.d.ts +0 -62
- package/dist/runtime/shell-word.js +0 -410
- package/dist/runtime/shell-word.js.map +0 -1
- package/dist/runtime/task-providers/agent-tasks.d.ts +0 -105
- package/dist/runtime/task-providers/agent-tasks.js +0 -247
- package/dist/runtime/task-providers/agent-tasks.js.map +0 -1
- package/dist/runtime/when-eval.d.ts +0 -62
- package/dist/runtime/when-eval.js +0 -212
- package/dist/runtime/when-eval.js.map +0 -1
- package/dist/runtime/workflow-policies.d.ts +0 -207
- package/dist/runtime/workflow-policies.js +0 -596
- package/dist/runtime/workflow-policies.js.map +0 -1
- package/dist/schema/audit.d.ts +0 -71
- package/dist/schema/audit.js +0 -32
- package/dist/schema/audit.js.map +0 -1
- package/dist/schema/doctor.d.ts +0 -25
- package/dist/schema/doctor.js +0 -23
- package/dist/schema/doctor.js.map +0 -1
- package/dist/schema/environments.d.ts +0 -215
- package/dist/schema/environments.js +0 -101
- package/dist/schema/environments.js.map +0 -1
- package/dist/schema/extract.d.ts +0 -9
- package/dist/schema/extract.js +0 -86
- package/dist/schema/extract.js.map +0 -1
- package/dist/schema/permission-profiles.d.ts +0 -2292
- package/dist/schema/permission-profiles.js +0 -60
- package/dist/schema/permission-profiles.js.map +0 -1
- package/dist/schema/policies.d.ts +0 -974
- package/dist/schema/policies.js +0 -298
- package/dist/schema/policies.js.map +0 -1
- package/dist/schema/requires.d.ts +0 -131
- package/dist/schema/requires.js +0 -88
- package/dist/schema/requires.js.map +0 -1
- package/dist/schema/risk.d.ts +0 -144
- package/dist/schema/risk.js +0 -194
- package/dist/schema/risk.js.map +0 -1
- package/dist/schema/session-start-preflight.d.ts +0 -10
- package/dist/schema/session-start-preflight.js +0 -106
- package/dist/schema/session-start-preflight.js.map +0 -1
- package/dist/schema/stale-base-check.d.ts +0 -18
- package/dist/schema/stale-base-check.js +0 -37
- package/dist/schema/stale-base-check.js.map +0 -1
- package/dist/schema/toolchain-parity.d.ts +0 -21
- package/dist/schema/toolchain-parity.js +0 -48
- package/dist/schema/toolchain-parity.js.map +0 -1
- package/dist/schema/workflows.d.ts +0 -519
- package/dist/schema/workflows.js +0 -81
- package/dist/schema/workflows.js.map +0 -1
- package/scripts/runtime-reality-docker-probe.mjs +0 -71
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
import type { z } from "zod";
|
|
2
|
-
import type { PolicyPack, PolicyUx
|
|
3
|
-
import { type ResolvePackOptions } from "./builtin/understanding-before-execution.js";
|
|
2
|
+
import type { PolicyPack, PolicyUx } from "../schema/index.js";
|
|
4
3
|
import { type Runtime } from "./runtime.js";
|
|
5
4
|
import type { PackContribution } from "./types.js";
|
|
6
|
-
export declare const KNOWN_BUILTIN_PACKS: readonly ["
|
|
5
|
+
export declare const KNOWN_BUILTIN_PACKS: readonly ["branch-protection"];
|
|
7
6
|
export type BuiltinPackName = (typeof KNOWN_BUILTIN_PACKS)[number];
|
|
8
7
|
export declare function isBuiltinPackName(name: string): name is BuiltinPackName;
|
|
9
8
|
export interface ResolveBuiltinResult {
|
|
10
9
|
contribution: PackContribution;
|
|
11
10
|
warnings: string[];
|
|
12
11
|
}
|
|
13
|
-
export declare function resolveBuiltin(pack: PolicyPack, runtime?: Runtime
|
|
12
|
+
export declare function resolveBuiltin(pack: PolicyPack, runtime?: Runtime): ResolveBuiltinResult | null;
|
|
14
13
|
/**
|
|
15
14
|
* Per-builtin `config:` schema lookup. Returns null when the pack name
|
|
16
15
|
* is not a builtin (caller should already have flagged that via
|
|
@@ -18,47 +17,19 @@ export declare function resolveBuiltin(pack: PolicyPack, runtime?: Runtime, opts
|
|
|
18
17
|
* Consumed by `checkPolicyPackConfigs` so `harness validate` /
|
|
19
18
|
* `harness doctor` catch typo'd keys at lint time.
|
|
20
19
|
*/
|
|
21
|
-
export declare function resolveBuiltinConfigSchema(packName: string): z.
|
|
20
|
+
export declare function resolveBuiltinConfigSchema(packName: string): z.ZodType | null;
|
|
22
21
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
* already have flagged that via `checkPolicyPackSources`), or when the
|
|
26
|
-
* pack has no separate package-side bin (e.g. `branch-protection`'s
|
|
27
|
-
* blocker is harness itself, no external binary to probe). Consumed by
|
|
28
|
-
* `checkPolicyPackVersions` so `harness doctor` can compare the
|
|
29
|
-
* installed version against an operator-declared pack-level
|
|
30
|
-
* `min_version` floor.
|
|
31
|
-
*/
|
|
32
|
-
export declare function resolveBuiltinVersionCommand(packName: string): readonly [string, string] | null;
|
|
33
|
-
/**
|
|
34
|
-
* The shipped-template `config.ux` / `config.producers` for a builtin pack,
|
|
35
|
-
* as the operator's OWN pack entry would resolve them today (e.g. `ux`'s
|
|
36
|
-
* `required:` line is derived from the pack's currently-configured `mode`,
|
|
37
|
-
* not a hardcoded default mode — an operator on `strict` should be
|
|
38
|
-
* compared against, and reseeded with, the `strict` wording, not
|
|
39
|
-
* `grill_me`'s).
|
|
22
|
+
* The shipped-template `config.ux` for a builtin pack, as the operator's OWN
|
|
23
|
+
* pack entry would resolve it today.
|
|
40
24
|
*
|
|
41
25
|
* Returns `null` when the pack name is not a builtin, or when the pack
|
|
42
|
-
* has no canonical shipped default to compare/reseed against
|
|
43
|
-
*
|
|
44
|
-
* block in any init template). Consumed by `checkPolicyPackUxDrift`
|
|
26
|
+
* has no canonical shipped default to compare/reseed against. Every
|
|
27
|
+
* remaining builtin ships one. Consumed by `checkPolicyPackUxDrift`
|
|
45
28
|
* (`harness doctor`'s divergence warning) and `harness pack reseed`
|
|
46
29
|
* (task 68b9ad9c) — the single source both read from so the two stay
|
|
47
30
|
* in lockstep by construction.
|
|
48
|
-
*
|
|
49
|
-
* Mode is resolved via `resolveModeFromConfig` (config.mode only, no
|
|
50
|
-
* `UNDERSTANDING_GATE_MODE` env — task 5d73d78d review HIGH-3): both
|
|
51
|
-
* consumers here compare against / reseed the MANIFEST's own declared
|
|
52
|
-
* state, the same generation-time artefact `resolve()`/`buildHooks`
|
|
53
|
-
* produce. Reading the live env here would make `harness doctor` flag
|
|
54
|
-
* false drift (or `harness pack reseed` write different content)
|
|
55
|
-
* whenever the operator happens to have the env var exported in the
|
|
56
|
-
* shell they ran the command from — the same class of apply-time/live
|
|
57
|
-
* drift `MODE_ENV`'s own doc comment (understanding-before-execution.ts)
|
|
58
|
-
* explains for the sibling generation path.
|
|
59
31
|
*/
|
|
60
32
|
export interface BuiltinDefaultConfig {
|
|
61
|
-
ux
|
|
62
|
-
producers?: Producer[];
|
|
33
|
+
ux: PolicyUx;
|
|
63
34
|
}
|
|
64
35
|
export declare function resolveBuiltinDefaultConfig(pack: PolicyPack): BuiltinDefaultConfig | null;
|
|
@@ -1,35 +1,20 @@
|
|
|
1
1
|
// Registry of builtin policy-pack names.
|
|
2
2
|
//
|
|
3
|
-
//
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
// out of scope for v1; their resolution lands in a later sub-task.
|
|
3
|
+
// One builtin pack ships: `branch-protection`. A further builtin is added by
|
|
4
|
+
// appending to `KNOWN_BUILTIN_PACKS` and a case arm in `resolveBuiltin()`.
|
|
5
|
+
// Non-builtin sources (path/npm/git) are out of scope for v1.
|
|
7
6
|
import { configSchema as branchProtectionConfigSchema, defaultUx as branchProtectionDefaultUx, PACK_NAME as BRANCH_PROTECTION, resolve as resolveBranchProtection, } from "./builtin/branch-protection.js";
|
|
8
|
-
import { configSchema as understandingBeforeExecutionConfigSchema, defaultProducers as understandingBeforeExecutionDefaultProducers, defaultUx as understandingBeforeExecutionDefaultUx, PACK_NAME as UNDERSTANDING_BEFORE_EXECUTION, resolve as resolveUnderstandingBeforeExecution, resolveModeFromConfig as resolveUnderstandingBeforeExecutionMode, VERSION_COMMAND as UNDERSTANDING_BEFORE_EXECUTION_VERSION_COMMAND, } from "./builtin/understanding-before-execution.js";
|
|
9
|
-
import { configSchema as solutionAcceptanceConfigSchema, PACK_NAME as SOLUTION_ACCEPTANCE, resolve as resolveSolutionAcceptance, } from "./builtin/solution-acceptance.js";
|
|
10
|
-
import { configSchema as postMergeGateConfigSchema, defaultUx as postMergeGateDefaultUx, PACK_NAME as POST_MERGE_GATE, resolve as resolvePostMergeGate, } from "./builtin/post-merge-gate.js";
|
|
11
7
|
import { DEFAULT_RUNTIME } from "./runtime.js";
|
|
12
|
-
export const KNOWN_BUILTIN_PACKS = [
|
|
13
|
-
UNDERSTANDING_BEFORE_EXECUTION,
|
|
14
|
-
BRANCH_PROTECTION,
|
|
15
|
-
SOLUTION_ACCEPTANCE,
|
|
16
|
-
POST_MERGE_GATE,
|
|
17
|
-
];
|
|
8
|
+
export const KNOWN_BUILTIN_PACKS = [BRANCH_PROTECTION];
|
|
18
9
|
export function isBuiltinPackName(name) {
|
|
19
10
|
return KNOWN_BUILTIN_PACKS.includes(name);
|
|
20
11
|
}
|
|
21
|
-
export function resolveBuiltin(pack, runtime = DEFAULT_RUNTIME
|
|
12
|
+
export function resolveBuiltin(pack, runtime = DEFAULT_RUNTIME) {
|
|
22
13
|
if (!isBuiltinPackName(pack.name))
|
|
23
14
|
return null;
|
|
24
15
|
switch (pack.name) {
|
|
25
|
-
case UNDERSTANDING_BEFORE_EXECUTION:
|
|
26
|
-
return resolveUnderstandingBeforeExecution(pack, runtime, opts);
|
|
27
16
|
case BRANCH_PROTECTION:
|
|
28
17
|
return resolveBranchProtection(pack, runtime);
|
|
29
|
-
case SOLUTION_ACCEPTANCE:
|
|
30
|
-
return resolveSolutionAcceptance(pack, runtime, opts);
|
|
31
|
-
case POST_MERGE_GATE:
|
|
32
|
-
return resolvePostMergeGate(pack, runtime);
|
|
33
18
|
}
|
|
34
19
|
}
|
|
35
20
|
/**
|
|
@@ -43,61 +28,16 @@ export function resolveBuiltinConfigSchema(packName) {
|
|
|
43
28
|
if (!isBuiltinPackName(packName))
|
|
44
29
|
return null;
|
|
45
30
|
switch (packName) {
|
|
46
|
-
case UNDERSTANDING_BEFORE_EXECUTION:
|
|
47
|
-
return understandingBeforeExecutionConfigSchema;
|
|
48
31
|
case BRANCH_PROTECTION:
|
|
49
32
|
return branchProtectionConfigSchema;
|
|
50
|
-
case SOLUTION_ACCEPTANCE:
|
|
51
|
-
return solutionAcceptanceConfigSchema;
|
|
52
|
-
case POST_MERGE_GATE:
|
|
53
|
-
return postMergeGateConfigSchema;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Canonical version-probe command for a builtin pack's package-side bin.
|
|
58
|
-
* Returns `null` when the pack name is not a builtin (caller should
|
|
59
|
-
* already have flagged that via `checkPolicyPackSources`), or when the
|
|
60
|
-
* pack has no separate package-side bin (e.g. `branch-protection`'s
|
|
61
|
-
* blocker is harness itself, no external binary to probe). Consumed by
|
|
62
|
-
* `checkPolicyPackVersions` so `harness doctor` can compare the
|
|
63
|
-
* installed version against an operator-declared pack-level
|
|
64
|
-
* `min_version` floor.
|
|
65
|
-
*/
|
|
66
|
-
export function resolveBuiltinVersionCommand(packName) {
|
|
67
|
-
if (!isBuiltinPackName(packName))
|
|
68
|
-
return null;
|
|
69
|
-
switch (packName) {
|
|
70
|
-
case UNDERSTANDING_BEFORE_EXECUTION:
|
|
71
|
-
return UNDERSTANDING_BEFORE_EXECUTION_VERSION_COMMAND;
|
|
72
|
-
case BRANCH_PROTECTION:
|
|
73
|
-
return null;
|
|
74
|
-
case SOLUTION_ACCEPTANCE:
|
|
75
|
-
// Blocker is harness itself; the producer (grounding-mcp) is probed
|
|
76
|
-
// via its tools.mcp min_version, not a pack-side bin.
|
|
77
|
-
return null;
|
|
78
|
-
case POST_MERGE_GATE:
|
|
79
|
-
// Both the producer and the blocker are harness itself; no
|
|
80
|
-
// separate package-side bin to probe.
|
|
81
|
-
return null;
|
|
82
33
|
}
|
|
83
34
|
}
|
|
84
35
|
export function resolveBuiltinDefaultConfig(pack) {
|
|
85
36
|
if (!isBuiltinPackName(pack.name))
|
|
86
37
|
return null;
|
|
87
38
|
switch (pack.name) {
|
|
88
|
-
case UNDERSTANDING_BEFORE_EXECUTION: {
|
|
89
|
-
const { mode } = resolveUnderstandingBeforeExecutionMode(pack);
|
|
90
|
-
return {
|
|
91
|
-
ux: understandingBeforeExecutionDefaultUx(mode),
|
|
92
|
-
producers: understandingBeforeExecutionDefaultProducers(),
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
39
|
case BRANCH_PROTECTION:
|
|
96
40
|
return { ux: branchProtectionDefaultUx() };
|
|
97
|
-
case SOLUTION_ACCEPTANCE:
|
|
98
|
-
return null;
|
|
99
|
-
case POST_MERGE_GATE:
|
|
100
|
-
return { ux: postMergeGateDefaultUx() };
|
|
101
41
|
}
|
|
102
42
|
}
|
|
103
43
|
//# sourceMappingURL=registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/policy-packs/registry.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/policy-packs/registry.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,6EAA6E;AAC7E,2EAA2E;AAC3E,8DAA8D;AAI9D,OAAO,EACL,YAAY,IAAI,4BAA4B,EAC5C,SAAS,IAAI,yBAAyB,EACtC,SAAS,IAAI,iBAAiB,EAC9B,OAAO,IAAI,uBAAuB,GACnC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,eAAe,EAAgB,MAAM,cAAc,CAAC;AAG7D,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,iBAAiB,CAAU,CAAC;AAGhE,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAQ,mBAAyC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACnE,CAAC;AAOD,MAAM,UAAU,cAAc,CAC5B,IAAgB,EAChB,UAAmB,eAAe;IAElC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/C,QAAQ,IAAI,CAAC,IAAuB,EAAE,CAAC;QACrC,KAAK,iBAAiB;YACpB,OAAO,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAAgB;IAEhB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,QAAQ,QAA2B,EAAE,CAAC;QACpC,KAAK,iBAAiB;YACpB,OAAO,4BAA4B,CAAC;IACxC,CAAC;AACH,CAAC;AAiBD,MAAM,UAAU,2BAA2B,CACzC,IAAgB;IAEhB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/C,QAAQ,IAAI,CAAC,IAAuB,EAAE,CAAC;QACrC,KAAK,iBAAiB;YACpB,OAAO,EAAE,EAAE,EAAE,yBAAyB,EAAE,EAAE,CAAC;IAC/C,CAAC;AACH,CAAC"}
|
|
@@ -2,7 +2,3 @@ export declare const KNOWN_RUNTIMES: readonly ["claude-code", "codex", "opencode
|
|
|
2
2
|
export type Runtime = (typeof KNOWN_RUNTIMES)[number];
|
|
3
3
|
export declare const DEFAULT_RUNTIME: Runtime;
|
|
4
4
|
export declare function isRuntime(value: unknown): value is Runtime;
|
|
5
|
-
export declare function parseRuntime(raw: string | undefined): {
|
|
6
|
-
runtime: Runtime;
|
|
7
|
-
warning: string | null;
|
|
8
|
-
};
|
|
@@ -1,17 +1,14 @@
|
|
|
1
1
|
// Phase 6 #6 — runtime target identifier threaded through policy-pack
|
|
2
2
|
// expansion. Selects which adapter shape a pack emits.
|
|
3
3
|
//
|
|
4
|
-
// `claude-code` (default): hook commands point at the
|
|
5
|
-
//
|
|
6
|
-
//
|
|
7
|
-
// `harness.generated/settings.json`.
|
|
4
|
+
// `claude-code` (default): hook commands point at the harness PreToolUse
|
|
5
|
+
// blocker. Output of `harness apply` is the Claude Code `settings.json`
|
|
6
|
+
// shape under `harness.generated/settings.json`.
|
|
8
7
|
//
|
|
9
|
-
// `codex`: hook commands point at the
|
|
10
|
-
//
|
|
11
|
-
//
|
|
12
|
-
//
|
|
13
|
-
// understanding-before-execution pack; cross-pack and additional
|
|
14
|
-
// runtimes are out of v1 scope.
|
|
8
|
+
// `codex`: hook commands point at the Codex adapter commands the pack
|
|
9
|
+
// emits. Output of `harness apply` is a Codex-flavoured config artefact
|
|
10
|
+
// under `harness.generated/codex/`. The branch-protection pack is the only
|
|
11
|
+
// builtin; additional runtimes are out of v1 scope.
|
|
15
12
|
//
|
|
16
13
|
// `opencode`: unlike `codex`, this runtime does NOT get its own hook
|
|
17
14
|
// command shape from `expandPolicyPacks` (task f34eb233 / batch18) --
|
|
@@ -19,21 +16,11 @@
|
|
|
19
16
|
// there is nothing for a pack to emit commands for. Output of `harness
|
|
20
17
|
// apply --runtime opencode` is `harness.generated/opencode/opencode.json`,
|
|
21
18
|
// which projects `tools.mcp[]` only. See
|
|
22
|
-
// `src/cli/apply/generate-opencode-config.ts`'s header for the
|
|
23
|
-
//
|
|
19
|
+
// `src/cli/apply/generate-opencode-config.ts`'s header for the
|
|
20
|
+
// projection rules (mcp projected, hooks and permission not projected).
|
|
24
21
|
export const KNOWN_RUNTIMES = ["claude-code", "codex", "opencode"];
|
|
25
22
|
export const DEFAULT_RUNTIME = "claude-code";
|
|
26
23
|
export function isRuntime(value) {
|
|
27
24
|
return typeof value === "string" && KNOWN_RUNTIMES.includes(value);
|
|
28
25
|
}
|
|
29
|
-
export function parseRuntime(raw) {
|
|
30
|
-
if (raw === undefined)
|
|
31
|
-
return { runtime: DEFAULT_RUNTIME, warning: null };
|
|
32
|
-
if (isRuntime(raw))
|
|
33
|
-
return { runtime: raw, warning: null };
|
|
34
|
-
return {
|
|
35
|
-
runtime: DEFAULT_RUNTIME,
|
|
36
|
-
warning: `unrecognised runtime ${JSON.stringify(raw)}, falling back to "${DEFAULT_RUNTIME}". Allowed: ${KNOWN_RUNTIMES.join(", ")}.`,
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
26
|
//# sourceMappingURL=runtime.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/policy-packs/runtime.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,uDAAuD;AACvD,EAAE;AACF,
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/policy-packs/runtime.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,uDAAuD;AACvD,EAAE;AACF,yEAAyE;AACzE,wEAAwE;AACxE,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,wEAAwE;AACxE,2EAA2E;AAC3E,oDAAoD;AACpD,EAAE;AACF,qEAAqE;AACrE,sEAAsE;AACtE,wEAAwE;AACxE,uEAAuE;AACvE,2EAA2E;AAC3E,yCAAyC;AACzC,+DAA+D;AAC/D,wEAAwE;AAExE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE,UAAU,CAAU,CAAC;AAE5E,MAAM,CAAC,MAAM,eAAe,GAAY,aAAa,CAAC;AAEtD,MAAM,UAAU,SAAS,CAAC,KAAc;IACtC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,cAAoC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC5F,CAAC"}
|
|
@@ -4,36 +4,17 @@ export interface PackContributionFile {
|
|
|
4
4
|
relativePath: string;
|
|
5
5
|
content: string;
|
|
6
6
|
}
|
|
7
|
-
/**
|
|
8
|
-
* Phase 6 #5 — permissions contributed by a pack's selected
|
|
9
|
-
* permission profile. Translated downstream into the Claude Code
|
|
10
|
-
* settings.json `permissions` block.
|
|
11
|
-
*/
|
|
12
|
-
export interface PackPermissionsContribution {
|
|
13
|
-
allow: string[];
|
|
14
|
-
ask: string[];
|
|
15
|
-
deny: string[];
|
|
16
|
-
}
|
|
17
7
|
export interface PackContribution {
|
|
18
8
|
/** Hooks to merge into the manifest before settings.json generation. */
|
|
19
9
|
hooks: Hook[];
|
|
20
10
|
/** Files to write under `harness.generated/`. */
|
|
21
11
|
files: PackContributionFile[];
|
|
22
|
-
/** Optional permission contribution (Phase 6 #5). */
|
|
23
|
-
permissions?: PackPermissionsContribution;
|
|
24
12
|
}
|
|
25
13
|
export interface PackExpansionResult {
|
|
26
14
|
/** Combined hooks contributed by every enabled, resolvable pack. */
|
|
27
15
|
hooks: Hook[];
|
|
28
16
|
/** Combined files contributed by every enabled, resolvable pack. */
|
|
29
17
|
files: PackContributionFile[];
|
|
30
|
-
/**
|
|
31
|
-
* Combined permissions contributed by every enabled, resolvable
|
|
32
|
-
* pack (set-union per bucket; later contributions cannot relax a
|
|
33
|
-
* deny from an earlier pack). undefined when no pack contributed
|
|
34
|
-
* any permission entries.
|
|
35
|
-
*/
|
|
36
|
-
permissions?: PackPermissionsContribution;
|
|
37
18
|
/** Non-fatal expansion warnings (e.g. unknown source, unknown name on a non-strict path). */
|
|
38
19
|
warnings: string[];
|
|
39
20
|
/** Names of packs that were skipped because `enabled: false`. */
|
|
@@ -1,14 +1,4 @@
|
|
|
1
|
-
import type { PolicyUx
|
|
1
|
+
import type { PolicyUx } from "../schema/index.js";
|
|
2
2
|
export declare function uxEqual(a: PolicyUx, b: PolicyUx): boolean;
|
|
3
|
-
/**
|
|
4
|
-
* Structural equality over a `producers:` array. Compares each entry
|
|
5
|
-
* field-by-field per its discriminated `kind` rather than a generic deep
|
|
6
|
-
* equal — the shape is small and fixed (bash/mcp/ask), and this keeps the
|
|
7
|
-
* comparison legible instead of round-tripping through JSON.stringify
|
|
8
|
-
* (which would also be sensitive to incidental key ordering).
|
|
9
|
-
*/
|
|
10
|
-
export declare function producersEqual(a: readonly Producer[], b: readonly Producer[]): boolean;
|
|
11
3
|
/** Parses an unknown `config.ux` value; returns null on any schema rejection. */
|
|
12
4
|
export declare function safeParseUx(raw: unknown): PolicyUx | null;
|
|
13
|
-
/** Parses an unknown `config.producers` value; returns null on any schema rejection. */
|
|
14
|
-
export declare function safeParseProducers(raw: unknown): Producer[] | null;
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
// Structural comparison + safe-parse helpers for `config.ux`
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
|
|
7
|
-
import { z } from "zod";
|
|
8
|
-
import { PolicyUxSchema, ProducerSchema } from "../schema/policies.js";
|
|
9
|
-
const ProducersArraySchema = z.array(ProducerSchema);
|
|
1
|
+
// Structural comparison + safe-parse helpers for `config.ux` (task
|
|
2
|
+
// 68b9ad9c). Shared by `checkPolicyPackUxDrift` (the `harness doctor`
|
|
3
|
+
// read-side warning, ux-drift-check.ts) and `harness pack reseed` (the
|
|
4
|
+
// opt-in write-side fix, src/cli/pack/reseed.ts) so the two can never
|
|
5
|
+
// independently drift on what "matches the shipped template" means.
|
|
6
|
+
import { PolicyUxSchema } from "../schema/policy-ux.js";
|
|
10
7
|
function stringArrayEqual(a, b) {
|
|
11
8
|
if (a.length !== b.length)
|
|
12
9
|
return false;
|
|
@@ -17,42 +14,9 @@ export function uxEqual(a, b) {
|
|
|
17
14
|
stringArrayEqual(a.required, b.required) &&
|
|
18
15
|
stringArrayEqual(a.run, b.run));
|
|
19
16
|
}
|
|
20
|
-
/**
|
|
21
|
-
* Structural equality over a `producers:` array. Compares each entry
|
|
22
|
-
* field-by-field per its discriminated `kind` rather than a generic deep
|
|
23
|
-
* equal — the shape is small and fixed (bash/mcp/ask), and this keeps the
|
|
24
|
-
* comparison legible instead of round-tripping through JSON.stringify
|
|
25
|
-
* (which would also be sensitive to incidental key ordering).
|
|
26
|
-
*/
|
|
27
|
-
export function producersEqual(a, b) {
|
|
28
|
-
if (a.length !== b.length)
|
|
29
|
-
return false;
|
|
30
|
-
return a.every((entryA, i) => {
|
|
31
|
-
const entryB = b[i];
|
|
32
|
-
if (!entryB || entryA.kind !== entryB.kind)
|
|
33
|
-
return false;
|
|
34
|
-
if (entryA.kind === "bash" && entryB.kind === "bash") {
|
|
35
|
-
return entryA.command === entryB.command && entryA.description === entryB.description;
|
|
36
|
-
}
|
|
37
|
-
if (entryA.kind === "ask" && entryB.kind === "ask") {
|
|
38
|
-
return entryA.command === entryB.command && entryA.description === entryB.description;
|
|
39
|
-
}
|
|
40
|
-
if (entryA.kind === "mcp" && entryB.kind === "mcp") {
|
|
41
|
-
return (entryA.verb === entryB.verb &&
|
|
42
|
-
entryA.example === entryB.example &&
|
|
43
|
-
entryA.description === entryB.description);
|
|
44
|
-
}
|
|
45
|
-
return false;
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
17
|
/** Parses an unknown `config.ux` value; returns null on any schema rejection. */
|
|
49
18
|
export function safeParseUx(raw) {
|
|
50
19
|
const result = PolicyUxSchema.safeParse(raw);
|
|
51
20
|
return result.success ? result.data : null;
|
|
52
21
|
}
|
|
53
|
-
/** Parses an unknown `config.producers` value; returns null on any schema rejection. */
|
|
54
|
-
export function safeParseProducers(raw) {
|
|
55
|
-
const result = ProducersArraySchema.safeParse(raw);
|
|
56
|
-
return result.success ? result.data : null;
|
|
57
|
-
}
|
|
58
22
|
//# sourceMappingURL=ux-compare.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ux-compare.js","sourceRoot":"","sources":["../../src/policy-packs/ux-compare.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ux-compare.js","sourceRoot":"","sources":["../../src/policy-packs/ux-compare.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,sEAAsE;AACtE,uEAAuE;AACvE,sEAAsE;AACtE,oEAAoE;AAEpE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD,SAAS,gBAAgB,CAAC,CAAoB,EAAE,CAAoB;IAClE,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACxC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,CAAW,EAAE,CAAW;IAC9C,OAAO,CACL,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QACrB,gBAAgB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC;QACxC,gBAAgB,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAC/B,CAAC;AACJ,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,WAAW,CAAC,GAAY;IACtC,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7C,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Manifest } from "../schema/index.js";
|
|
2
|
-
export type PolicyPackUxDriftField = "ux"
|
|
2
|
+
export type PolicyPackUxDriftField = "ux";
|
|
3
3
|
export interface PolicyPackUxDrift {
|
|
4
4
|
packIndex: number;
|
|
5
5
|
packName: string;
|
|
@@ -11,16 +11,16 @@ export interface PolicyPackUxDrift {
|
|
|
11
11
|
* Walks `manifest.policy_packs` in declared order. For each enabled
|
|
12
12
|
* builtin pack that has a registered shipped default (see
|
|
13
13
|
* `resolveBuiltinDefaultConfig`), compares the operator's declared
|
|
14
|
-
* `config.ux`
|
|
15
|
-
*
|
|
14
|
+
* `config.ux` (when present) against that default and reports a
|
|
15
|
+
* divergence when it differs.
|
|
16
16
|
*
|
|
17
|
-
* A pack that never declared `config.ux`
|
|
17
|
+
* A pack that never declared `config.ux` at all
|
|
18
18
|
* is NOT flagged here: that is a distinct, pre-existing gap (the pack
|
|
19
19
|
* falls back to its legacy engine-vocabulary deny text) rather than a
|
|
20
20
|
* stale COPY of the shipped text, and is out of scope for this check —
|
|
21
21
|
* see task 68b9ad9c's framing (an operator whose manifest predates a
|
|
22
22
|
* wording fix has a STALE `ux.run`, not a MISSING one). A malformed
|
|
23
|
-
* `config.ux`
|
|
23
|
+
* `config.ux` (already reported separately by
|
|
24
24
|
* `checkPolicyPackConfigs`) is treated as diverging here too, rather
|
|
25
25
|
* than being silently skipped.
|
|
26
26
|
*/
|
|
@@ -1,17 +1,18 @@
|
|
|
1
|
-
// Per-pack `config.ux`
|
|
1
|
+
// Per-pack `config.ux` divergence check (task
|
|
2
2
|
// 68b9ad9c). Used by `harness doctor` to warn when an enabled builtin
|
|
3
3
|
// pack's agent-facing deny-message text no longer matches the shipped
|
|
4
4
|
// template for that pack.
|
|
5
5
|
//
|
|
6
|
-
// Motivation (dogfood 2026-07-10, harness 0.40.0):
|
|
7
|
-
// deny message is entirely driven by
|
|
8
|
-
//
|
|
9
|
-
//
|
|
10
|
-
//
|
|
11
|
-
//
|
|
12
|
-
//
|
|
13
|
-
//
|
|
14
|
-
//
|
|
6
|
+
// Motivation (dogfood 2026-07-10, harness 0.40.0): an enabled builtin
|
|
7
|
+
// pack's agent-facing deny message is entirely driven by its
|
|
8
|
+
// `config.ux` when the operator has declared one. The shipped init
|
|
9
|
+
// templates (Solo/Team/Full/Custom) pick up wording fixes over time,
|
|
10
|
+
// but a fix only reaches manifests generated AFTER it landed. An
|
|
11
|
+
// operator who installed before the fix keeps an on-disk `config.ux`
|
|
12
|
+
// that still carries the old deny text, and nothing short of a
|
|
13
|
+
// hand-edit ever updated it: `harness apply` projects the manifest OUT
|
|
14
|
+
// to settings.json, it never re-seeds pack config FROM the shipped
|
|
15
|
+
// template back INTO the manifest.
|
|
15
16
|
//
|
|
16
17
|
// This check is the read side of that gap (the warning); `harness pack
|
|
17
18
|
// reseed <name>` (src/cli/pack/reseed.ts) is the opt-in write side. Both
|
|
@@ -23,21 +24,21 @@
|
|
|
23
24
|
// `checkPolicyPackVersions`: this is an informational nudge about
|
|
24
25
|
// wording that still functions, not a schema violation.
|
|
25
26
|
import { resolveBuiltinDefaultConfig } from "./registry.js";
|
|
26
|
-
import {
|
|
27
|
+
import { safeParseUx, uxEqual } from "./ux-compare.js";
|
|
27
28
|
/**
|
|
28
29
|
* Walks `manifest.policy_packs` in declared order. For each enabled
|
|
29
30
|
* builtin pack that has a registered shipped default (see
|
|
30
31
|
* `resolveBuiltinDefaultConfig`), compares the operator's declared
|
|
31
|
-
* `config.ux`
|
|
32
|
-
*
|
|
32
|
+
* `config.ux` (when present) against that default and reports a
|
|
33
|
+
* divergence when it differs.
|
|
33
34
|
*
|
|
34
|
-
* A pack that never declared `config.ux`
|
|
35
|
+
* A pack that never declared `config.ux` at all
|
|
35
36
|
* is NOT flagged here: that is a distinct, pre-existing gap (the pack
|
|
36
37
|
* falls back to its legacy engine-vocabulary deny text) rather than a
|
|
37
38
|
* stale COPY of the shipped text, and is out of scope for this check —
|
|
38
39
|
* see task 68b9ad9c's framing (an operator whose manifest predates a
|
|
39
40
|
* wording fix has a STALE `ux.run`, not a MISSING one). A malformed
|
|
40
|
-
* `config.ux`
|
|
41
|
+
* `config.ux` (already reported separately by
|
|
41
42
|
* `checkPolicyPackConfigs`) is treated as diverging here too, rather
|
|
42
43
|
* than being silently skipped.
|
|
43
44
|
*/
|
|
@@ -51,17 +52,11 @@ export function checkPolicyPackUxDrift(manifest) {
|
|
|
51
52
|
return;
|
|
52
53
|
const fields = [];
|
|
53
54
|
const currentUx = pack.config["ux"];
|
|
54
|
-
if (
|
|
55
|
+
if (currentUx !== undefined) {
|
|
55
56
|
const parsed = safeParseUx(currentUx);
|
|
56
57
|
if (!parsed || !uxEqual(parsed, canonical.ux))
|
|
57
58
|
fields.push("ux");
|
|
58
59
|
}
|
|
59
|
-
const currentProducers = pack.config["producers"];
|
|
60
|
-
if (canonical.producers && currentProducers !== undefined) {
|
|
61
|
-
const parsed = safeParseProducers(currentProducers);
|
|
62
|
-
if (!parsed || !producersEqual(parsed, canonical.producers))
|
|
63
|
-
fields.push("producers");
|
|
64
|
-
}
|
|
65
60
|
if (fields.length === 0)
|
|
66
61
|
return;
|
|
67
62
|
out.push({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ux-drift-check.js","sourceRoot":"","sources":["../../src/policy-packs/ux-drift-check.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"ux-drift-check.js","sourceRoot":"","sources":["../../src/policy-packs/ux-drift-check.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,sEAAsE;AACtE,sEAAsE;AACtE,0BAA0B;AAC1B,EAAE;AACF,sEAAsE;AACtE,6DAA6D;AAC7D,mEAAmE;AACnE,qEAAqE;AACrE,iEAAiE;AACjE,qEAAqE;AACrE,+DAA+D;AAC/D,uEAAuE;AACvE,mEAAmE;AACnE,mCAAmC;AACnC,EAAE;AACF,uEAAuE;AACvE,yEAAyE;AACzE,wEAAwE;AACxE,qEAAqE;AACrE,4DAA4D;AAC5D,EAAE;AACF,+DAA+D;AAC/D,kEAAkE;AAClE,wDAAwD;AAExD,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAavD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAAkB;IACvD,MAAM,GAAG,GAAwB,EAAE,CAAC;IACpC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE;QAChD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,MAAM,SAAS,GAAG,2BAA2B,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,SAAS;YAAE,OAAO;QAEvB,MAAM,MAAM,GAA6B,EAAE,CAAC;QAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;YACtC,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAEhC,GAAG,CAAC,IAAI,CAAC;YACP,SAAS;YACT,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,MAAM;YACN,OAAO,EACL,SAAS,IAAI,CAAC,IAAI,YAAY,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,6BAA6B;gBACpF,2DAA2D;gBAC3D,yBAAyB,IAAI,CAAC,IAAI,qDAAqD,IAAI,CAAC,IAAI,KAAK;SACxG,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -1,44 +1,23 @@
|
|
|
1
1
|
import type { Manifest } from "../schema/index.js";
|
|
2
2
|
export type PolicyPackVersionGapKind =
|
|
3
3
|
/** Pack declares min_version but no version probe is registered (warn). */
|
|
4
|
-
"no_probe_registered"
|
|
5
|
-
/** Version probe returned null (binary missing / failed to launch). */
|
|
6
|
-
| "probe_failed"
|
|
7
|
-
/** Probe stdout did not match a `digit(.digit)*` token. */
|
|
8
|
-
| "parse_failed"
|
|
9
|
-
/** Probed version is below the declared floor. */
|
|
10
|
-
| "below_floor";
|
|
4
|
+
"no_probe_registered";
|
|
11
5
|
export interface PolicyPackVersionGap {
|
|
12
6
|
packIndex: number;
|
|
13
7
|
packName: string;
|
|
14
8
|
/** The declared floor from `policy_packs[i].min_version`. */
|
|
15
9
|
declaredMinVersion: string;
|
|
16
|
-
/**
|
|
17
|
-
* The version probe command that was (or would have been) invoked.
|
|
18
|
-
* Empty array when no probe is registered for the pack.
|
|
19
|
-
*/
|
|
20
|
-
versionCommand: readonly string[];
|
|
21
|
-
/**
|
|
22
|
-
* Parsed version when the probe succeeded; otherwise null. Always the
|
|
23
|
-
* NUMERIC run (`parseProbedVersion`'s `version` field), never the probed
|
|
24
|
-
* prerelease or build suffix: for a `below_floor` gap caused by a
|
|
25
|
-
* prerelease of the floor (probed "0.3.1-rc.1" against a "0.3.1"
|
|
26
|
-
* `min_version`) this field equals `declaredMinVersion`; `message`
|
|
27
|
-
* carries the full probed token for the human-facing distinction.
|
|
28
|
-
*/
|
|
29
|
-
actualVersion: string | null;
|
|
30
10
|
kind: PolicyPackVersionGapKind;
|
|
31
11
|
message: string;
|
|
32
12
|
}
|
|
33
13
|
/**
|
|
34
14
|
* Walks `manifest.policy_packs` in declared order. For each enabled
|
|
35
|
-
* builtin pack that carries an explicit `min_version`,
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
* green ones produce nothing.
|
|
15
|
+
* builtin pack that carries an explicit `min_version`, flags that no
|
|
16
|
+
* probe exists to enforce it. Returns one gap per offending pack; packs
|
|
17
|
+
* without a declared floor produce nothing.
|
|
39
18
|
*
|
|
40
19
|
* `enabled: false` packs are skipped (consistent with the source +
|
|
41
20
|
* config helpers). Non-builtin pack names are skipped: the source
|
|
42
21
|
* check is the source of truth for "this pack does not resolve".
|
|
43
22
|
*/
|
|
44
|
-
export declare function checkPolicyPackVersions(manifest: Manifest
|
|
23
|
+
export declare function checkPolicyPackVersions(manifest: Manifest): PolicyPackVersionGap[];
|