@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
package/dist/schema/risk.d.ts
DELETED
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
export declare const RiskSeveritySchema: z.ZodEnum<["low", "medium", "high", "critical"]>;
|
|
3
|
-
export declare const RiskCategorySchema: z.ZodEnum<["destructive", "data_loss", "production_mutation", "credential_access", "secret_exfiltration", "network_exfiltration", "deployment_change", "infrastructure_change", "privilege_escalation", "irreversible_action", "mass_update"]>;
|
|
4
|
-
export declare const RiskClassifierSchema: z.ZodObject<{
|
|
5
|
-
name: z.ZodString;
|
|
6
|
-
tool: z.ZodString;
|
|
7
|
-
patterns: z.ZodArray<z.ZodEffects<z.ZodObject<{
|
|
8
|
-
pattern: z.ZodString;
|
|
9
|
-
categories: z.ZodArray<z.ZodEnum<["destructive", "data_loss", "production_mutation", "credential_access", "secret_exfiltration", "network_exfiltration", "deployment_change", "infrastructure_change", "privilege_escalation", "irreversible_action", "mass_update"]>, "many">;
|
|
10
|
-
severity: z.ZodEnum<["low", "medium", "high", "critical"]>;
|
|
11
|
-
}, "strict", z.ZodTypeAny, {
|
|
12
|
-
pattern: string;
|
|
13
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
14
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
15
|
-
}, {
|
|
16
|
-
pattern: string;
|
|
17
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
18
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
19
|
-
}>, {
|
|
20
|
-
pattern: string;
|
|
21
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
22
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
23
|
-
}, {
|
|
24
|
-
pattern: string;
|
|
25
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
26
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
27
|
-
}>, "many">;
|
|
28
|
-
}, "strict", z.ZodTypeAny, {
|
|
29
|
-
patterns: {
|
|
30
|
-
pattern: string;
|
|
31
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
32
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
33
|
-
}[];
|
|
34
|
-
name: string;
|
|
35
|
-
tool: string;
|
|
36
|
-
}, {
|
|
37
|
-
patterns: {
|
|
38
|
-
pattern: string;
|
|
39
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
40
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
41
|
-
}[];
|
|
42
|
-
name: string;
|
|
43
|
-
tool: string;
|
|
44
|
-
}>;
|
|
45
|
-
export declare const DegradedFailPostureSchema: z.ZodEnum<["preserve_enforcement", "fail_open"]>;
|
|
46
|
-
export declare const DEFAULT_SAFE_DELETION_ROOTS: string[];
|
|
47
|
-
export declare const RiskSchema: z.ZodEffects<z.ZodObject<{
|
|
48
|
-
classifiers: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
49
|
-
name: z.ZodString;
|
|
50
|
-
tool: z.ZodString;
|
|
51
|
-
patterns: z.ZodArray<z.ZodEffects<z.ZodObject<{
|
|
52
|
-
pattern: z.ZodString;
|
|
53
|
-
categories: z.ZodArray<z.ZodEnum<["destructive", "data_loss", "production_mutation", "credential_access", "secret_exfiltration", "network_exfiltration", "deployment_change", "infrastructure_change", "privilege_escalation", "irreversible_action", "mass_update"]>, "many">;
|
|
54
|
-
severity: z.ZodEnum<["low", "medium", "high", "critical"]>;
|
|
55
|
-
}, "strict", z.ZodTypeAny, {
|
|
56
|
-
pattern: string;
|
|
57
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
58
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
59
|
-
}, {
|
|
60
|
-
pattern: string;
|
|
61
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
62
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
63
|
-
}>, {
|
|
64
|
-
pattern: string;
|
|
65
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
66
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
67
|
-
}, {
|
|
68
|
-
pattern: string;
|
|
69
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
70
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
71
|
-
}>, "many">;
|
|
72
|
-
}, "strict", z.ZodTypeAny, {
|
|
73
|
-
patterns: {
|
|
74
|
-
pattern: string;
|
|
75
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
76
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
77
|
-
}[];
|
|
78
|
-
name: string;
|
|
79
|
-
tool: string;
|
|
80
|
-
}, {
|
|
81
|
-
patterns: {
|
|
82
|
-
pattern: string;
|
|
83
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
84
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
85
|
-
}[];
|
|
86
|
-
name: string;
|
|
87
|
-
tool: string;
|
|
88
|
-
}>, "many">>;
|
|
89
|
-
degraded_fail_posture: z.ZodDefault<z.ZodEnum<["preserve_enforcement", "fail_open"]>>;
|
|
90
|
-
safe_deletion_roots: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
91
|
-
}, "strict", z.ZodTypeAny, {
|
|
92
|
-
classifiers: {
|
|
93
|
-
patterns: {
|
|
94
|
-
pattern: string;
|
|
95
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
96
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
97
|
-
}[];
|
|
98
|
-
name: string;
|
|
99
|
-
tool: string;
|
|
100
|
-
}[];
|
|
101
|
-
degraded_fail_posture: "preserve_enforcement" | "fail_open";
|
|
102
|
-
safe_deletion_roots: string[];
|
|
103
|
-
}, {
|
|
104
|
-
classifiers?: {
|
|
105
|
-
patterns: {
|
|
106
|
-
pattern: string;
|
|
107
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
108
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
109
|
-
}[];
|
|
110
|
-
name: string;
|
|
111
|
-
tool: string;
|
|
112
|
-
}[] | undefined;
|
|
113
|
-
degraded_fail_posture?: "preserve_enforcement" | "fail_open" | undefined;
|
|
114
|
-
safe_deletion_roots?: string[] | undefined;
|
|
115
|
-
}>, {
|
|
116
|
-
classifiers: {
|
|
117
|
-
patterns: {
|
|
118
|
-
pattern: string;
|
|
119
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
120
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
121
|
-
}[];
|
|
122
|
-
name: string;
|
|
123
|
-
tool: string;
|
|
124
|
-
}[];
|
|
125
|
-
degraded_fail_posture: "preserve_enforcement" | "fail_open";
|
|
126
|
-
safe_deletion_roots: string[];
|
|
127
|
-
}, {
|
|
128
|
-
classifiers?: {
|
|
129
|
-
patterns: {
|
|
130
|
-
pattern: string;
|
|
131
|
-
categories: ("destructive" | "data_loss" | "production_mutation" | "credential_access" | "secret_exfiltration" | "network_exfiltration" | "deployment_change" | "infrastructure_change" | "privilege_escalation" | "irreversible_action" | "mass_update")[];
|
|
132
|
-
severity: "low" | "medium" | "high" | "critical";
|
|
133
|
-
}[];
|
|
134
|
-
name: string;
|
|
135
|
-
tool: string;
|
|
136
|
-
}[] | undefined;
|
|
137
|
-
degraded_fail_posture?: "preserve_enforcement" | "fail_open" | undefined;
|
|
138
|
-
safe_deletion_roots?: string[] | undefined;
|
|
139
|
-
}>;
|
|
140
|
-
export type DegradedFailPosture = z.infer<typeof DegradedFailPostureSchema>;
|
|
141
|
-
export type RiskSeverity = z.infer<typeof RiskSeveritySchema>;
|
|
142
|
-
export type RiskCategory = z.infer<typeof RiskCategorySchema>;
|
|
143
|
-
export type RiskClassifier = z.infer<typeof RiskClassifierSchema>;
|
|
144
|
-
export type RiskConfig = z.infer<typeof RiskSchema>;
|
package/dist/schema/risk.js
DELETED
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
// Risk Gate vocabulary — Phase 7 #1 anchor.
|
|
3
|
-
//
|
|
4
|
-
// STATUS: LIVE (corrected 2026-07-02, task 50a94127; this header
|
|
5
|
-
// previously still said "no runtime surface reads it yet" long after
|
|
6
|
-
// that stopped being true). `risk.classifiers[]` is consumed by the
|
|
7
|
-
// Risk Classifier (`classifyRisk`, runtime/risk-classifier.ts) invoked
|
|
8
|
-
// from runtime/intercept.ts on every PreToolUse once the manifest
|
|
9
|
-
// declares at least one `when:`-bearing policy (the riskGateActive
|
|
10
|
-
// guard), and policies consume the classification through `when.risk.*`
|
|
11
|
-
// clauses evaluated in runtime/when-eval.ts (Phase 7 #5). A declared
|
|
12
|
-
// `risk:` block is enforced configuration, not decoration. See
|
|
13
|
-
// docs/risk-gate.md.
|
|
14
|
-
//
|
|
15
|
-
// Design source: lava-ice-logs/2026-04-30/harness-risk-gate-extension.md.
|
|
16
|
-
// Severity is an ordered scale: a future `when.risk.severity_at_least:
|
|
17
|
-
// high` clause matches `high` and `critical`. The ordering is the enum
|
|
18
|
-
// declaration order — the Phase 7 #5 evaluator derives the comparison
|
|
19
|
-
// from `RiskSeveritySchema.options`. This anchor only fixes the set.
|
|
20
|
-
export const RiskSeveritySchema = z.enum(["low", "medium", "high", "critical"]);
|
|
21
|
-
// Closed category vocabulary. Phase 7 #1 deliberately ships a fixed set
|
|
22
|
-
// rather than a free-form string: a typo (`data-loss` for `data_loss`)
|
|
23
|
-
// is then a validate-time error instead of a clause that silently never
|
|
24
|
-
// matches, and `when.risk.category_in` stays statically checkable. New
|
|
25
|
-
// categories are a schema addition, not operator config — see
|
|
26
|
-
// docs/risk-gate.md for the rationale and the v2 escape hatch.
|
|
27
|
-
export const RiskCategorySchema = z.enum([
|
|
28
|
-
"destructive",
|
|
29
|
-
"data_loss",
|
|
30
|
-
"production_mutation",
|
|
31
|
-
"credential_access",
|
|
32
|
-
"secret_exfiltration",
|
|
33
|
-
"network_exfiltration",
|
|
34
|
-
"deployment_change",
|
|
35
|
-
"infrastructure_change",
|
|
36
|
-
"privilege_escalation",
|
|
37
|
-
"irreversible_action",
|
|
38
|
-
"mass_update",
|
|
39
|
-
]);
|
|
40
|
-
// One pattern → (categories, severity) assignment. `pattern` is a
|
|
41
|
-
// regular expression matched against the classified tool's raw input
|
|
42
|
-
// (the exact field and match semantics are the Phase 7 #3 classifier's
|
|
43
|
-
// concern; the anchor only stores and regex-validates the string).
|
|
44
|
-
const RiskPatternSchema = z
|
|
45
|
-
.object({
|
|
46
|
-
pattern: z.string().min(1),
|
|
47
|
-
categories: z.array(RiskCategorySchema).min(1),
|
|
48
|
-
severity: RiskSeveritySchema,
|
|
49
|
-
})
|
|
50
|
-
.strict()
|
|
51
|
-
.superRefine((rule, ctx) => {
|
|
52
|
-
try {
|
|
53
|
-
new RegExp(rule.pattern);
|
|
54
|
-
}
|
|
55
|
-
catch (err) {
|
|
56
|
-
ctx.addIssue({
|
|
57
|
-
code: z.ZodIssueCode.custom,
|
|
58
|
-
path: ["pattern"],
|
|
59
|
-
message: `invalid regex: ${err.message}`,
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
export const RiskClassifierSchema = z
|
|
64
|
-
.object({
|
|
65
|
-
name: z.string().min(1),
|
|
66
|
-
// The tool name whose input the classifier's patterns run against
|
|
67
|
-
// (e.g. `Bash`). The matcher that binds a classifier to a live tool
|
|
68
|
-
// event is Phase 7 #3; the anchor only records the binding.
|
|
69
|
-
tool: z.string().min(1),
|
|
70
|
-
patterns: z.array(RiskPatternSchema).min(1),
|
|
71
|
-
})
|
|
72
|
-
.strict();
|
|
73
|
-
// Fail posture of block/require_approval policies when their evidence
|
|
74
|
-
// source is DEGRADED (ledger timeout, spawn failure, unresolved template,
|
|
75
|
-
// invalid `within`, thrown evaluator) — i.e. the evaluator could not form
|
|
76
|
-
// a real verdict at all (task f1aea826).
|
|
77
|
-
//
|
|
78
|
-
// preserve_enforcement (default) — a policy whose enforcement is
|
|
79
|
-
// `block` or `require_approval` fails CLOSED (`deny-degraded`): the
|
|
80
|
-
// gate exists to prevent a specific irreversible incident, so "could
|
|
81
|
-
// not read the evidence" must not open it. `warn` policies keep the
|
|
82
|
-
// availability-first `warn-degraded` (never blocks).
|
|
83
|
-
// fail_open — the pre-0.45 behaviour: EVERY degraded evaluation maps
|
|
84
|
-
// to the non-blocking `warn-degraded`, regardless of enforcement.
|
|
85
|
-
// Explicit operator opt-out for availability-first setups.
|
|
86
|
-
//
|
|
87
|
-
// This knob covers only the policy engine's own degraded paths. The
|
|
88
|
-
// OUTER hook-budget layer (a hook that exceeds its budget is allow by
|
|
89
|
-
// harness contract) is a separate fail-open surface this schema cannot
|
|
90
|
-
// reach — see docs/okf/gate-fail-posture-matrix.md.
|
|
91
|
-
export const DegradedFailPostureSchema = z.enum([
|
|
92
|
-
"preserve_enforcement",
|
|
93
|
-
"fail_open",
|
|
94
|
-
]);
|
|
95
|
-
// Safe-deletion-root allowlist (task d03af8f6). `src/runtime/
|
|
96
|
-
// deletion-target-resolve.ts` statically resolves the target(s) of a
|
|
97
|
-
// deletion-verb command (`rm -r*`/`-f*`, `find ... -delete`/`-exec*`/
|
|
98
|
-
// `-execdir` with an `rm` payload, `git clean -f*`) and treats a target
|
|
99
|
-
// as safe only when it is an ABSOLUTE path that lies STRICTLY INSIDE one
|
|
100
|
-
// of these roots (a plain directory-prefix match against `root + "/"`;
|
|
101
|
-
// the root itself does not count, for EVERY verb alike — `find`'s own
|
|
102
|
-
// start point is removed by `-delete`/`-exec` the same way `rm`'s
|
|
103
|
-
// operand is, so it gets no root-equality exception either). An
|
|
104
|
-
// optional trailing `/**` or `/*` on an entry is stripped
|
|
105
|
-
// as documentation sugar before matching — it is not a real glob
|
|
106
|
-
// engine. A target the
|
|
107
|
-
// resolver cannot statically prove absolute and prefix-matched — an
|
|
108
|
-
// unexpanded `$VAR`/`${VAR}` reference, a `~`-relative path, a relative
|
|
109
|
-
// path, or a `..`-traversal that normalizes outside every root — is
|
|
110
|
-
// treated as UNRESOLVABLE, never guessed safe. The defaults cover the
|
|
111
|
-
// two spellings this harness's own scratchpad convention can use: a
|
|
112
|
-
// symlinked `/tmp` and its `/private/tmp` realpath (macOS); an operator
|
|
113
|
-
// who overrides this list REPLACES it, it does not merge with the
|
|
114
|
-
// default. See docs/risk-gate.md.
|
|
115
|
-
// Exported (not just used as the schema `.default()`) so runtime call
|
|
116
|
-
// sites can fall back to the same list for a hand-built `Manifest` that
|
|
117
|
-
// bypassed schema parsing entirely (every test fixture that constructs
|
|
118
|
-
// `{ risk: { classifiers: [...] } }` directly, without going through
|
|
119
|
-
// `RiskSchema.parse`) — see `src/runtime/intercept.ts` and
|
|
120
|
-
// `src/cli/explain-policy.ts`.
|
|
121
|
-
export const DEFAULT_SAFE_DELETION_ROOTS = ["/tmp", "/private/tmp"];
|
|
122
|
-
export const RiskSchema = z
|
|
123
|
-
.object({
|
|
124
|
-
classifiers: z.array(RiskClassifierSchema).default([]),
|
|
125
|
-
degraded_fail_posture: DegradedFailPostureSchema.default("preserve_enforcement"),
|
|
126
|
-
safe_deletion_roots: z
|
|
127
|
-
.array(z.string().min(1))
|
|
128
|
-
.default(DEFAULT_SAFE_DELETION_ROOTS),
|
|
129
|
-
})
|
|
130
|
-
.strict()
|
|
131
|
-
.superRefine((risk, ctx) => {
|
|
132
|
-
const seen = new Set();
|
|
133
|
-
risk.classifiers.forEach((c, i) => {
|
|
134
|
-
if (seen.has(c.name)) {
|
|
135
|
-
ctx.addIssue({
|
|
136
|
-
code: z.ZodIssueCode.custom,
|
|
137
|
-
path: ["classifiers", i, "name"],
|
|
138
|
-
message: `duplicate risk classifier name: ${c.name}`,
|
|
139
|
-
});
|
|
140
|
-
}
|
|
141
|
-
seen.add(c.name);
|
|
142
|
-
});
|
|
143
|
-
// A filesystem-root entry — bare `/`, or anything that lexically
|
|
144
|
-
// NORMALIZES to `/` (`/.`, `/./`, `/tmp/..` — task d03af8f6, review
|
|
145
|
-
// round 3, LOW (d), widening review round 2 LOW (a)'s bare-`/`-only
|
|
146
|
-
// check) — would match every absolute path as "inside" it via the
|
|
147
|
-
// resolver's own `target.startsWith(root + "/")` prefix check —
|
|
148
|
-
// silently defeating the entire point of an allowlist. Rejected at
|
|
149
|
-
// parse time with a message rather than special-cased to "matches
|
|
150
|
-
// everything" at runtime, since an operator who wrote one of these
|
|
151
|
-
// spellings almost certainly meant a specific subdirectory.
|
|
152
|
-
// Non-absolute entries and ones containing `$`/`~` are a `harness
|
|
153
|
-
// validate` LINT instead (a warning, not a parse-time error) — see
|
|
154
|
-
// `checkSafeDeletionRootsSyntax` in `src/cli/validate/checks.ts`.
|
|
155
|
-
risk.safe_deletion_roots.forEach((root, i) => {
|
|
156
|
-
if (normalizesToFilesystemRoot(root)) {
|
|
157
|
-
ctx.addIssue({
|
|
158
|
-
code: z.ZodIssueCode.custom,
|
|
159
|
-
path: ["safe_deletion_roots", i],
|
|
160
|
-
message: `risk.safe_deletion_roots entry "${root}" normalizes to the filesystem root and can ` +
|
|
161
|
-
`never be a meaningful allowlist entry: every absolute deletion target would match ` +
|
|
162
|
-
`it as "inside," defeating the allowlist. Declare specific subdirectories instead ` +
|
|
163
|
-
`(e.g. "/tmp").`,
|
|
164
|
-
});
|
|
165
|
-
}
|
|
166
|
-
});
|
|
167
|
-
});
|
|
168
|
-
/**
|
|
169
|
-
* `true` when `root` (trimmed) lexically collapses to the filesystem
|
|
170
|
-
* root `/` — bare `/`, any run of bare `/` characters, `/.`, `/./`, or a
|
|
171
|
-
* `..`-traversal that pops back to `/` (`/tmp/..`). Lexical only (no
|
|
172
|
-
* filesystem I/O, mirrors `deletion-target-resolve.ts`'s own
|
|
173
|
-
* `normalizePosixPath` in spirit — not imported from there: this is a
|
|
174
|
-
* schema-time validation, `deletion-target-resolve.ts` is a runtime
|
|
175
|
-
* module, and neither layer should depend on the other for a check this
|
|
176
|
-
* small).
|
|
177
|
-
*/
|
|
178
|
-
function normalizesToFilesystemRoot(root) {
|
|
179
|
-
const trimmed = root.trim();
|
|
180
|
-
if (!trimmed.startsWith("/"))
|
|
181
|
-
return false;
|
|
182
|
-
const out = [];
|
|
183
|
-
for (const part of trimmed.split("/")) {
|
|
184
|
-
if (part === "" || part === ".")
|
|
185
|
-
continue;
|
|
186
|
-
if (part === "..") {
|
|
187
|
-
out.pop();
|
|
188
|
-
continue;
|
|
189
|
-
}
|
|
190
|
-
out.push(part);
|
|
191
|
-
}
|
|
192
|
-
return out.length === 0;
|
|
193
|
-
}
|
|
194
|
-
//# sourceMappingURL=risk.js.map
|
package/dist/schema/risk.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"risk.js","sourceRoot":"","sources":["../../src/schema/risk.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
export declare const SESSION_START_PREFLIGHT_SETUP_BUILD_MIN_VERSION = "0.6.0";
|
|
3
|
-
export declare const SessionStartPreflightSchema: z.ZodObject<{
|
|
4
|
-
setup: z.ZodDefault<z.ZodBoolean>;
|
|
5
|
-
}, "strict", z.ZodTypeAny, {
|
|
6
|
-
setup: boolean;
|
|
7
|
-
}, {
|
|
8
|
-
setup?: boolean | undefined;
|
|
9
|
-
}>;
|
|
10
|
-
export type SessionStartPreflightConfig = z.infer<typeof SessionStartPreflightSchema>;
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
// `session_start_preflight` (task 30183330): optional, default-OFF
|
|
3
|
-
// config block for `harness session-start preflight` (and its
|
|
4
|
-
// top-level alias `harness preflight`). The producer itself lives in
|
|
5
|
-
// src/cli/session-start/index.ts; this schema only carries the
|
|
6
|
-
// manifest-declared knob it reads.
|
|
7
|
-
//
|
|
8
|
-
// `setup` gates whether the companion passes `--setup` through to the
|
|
9
|
-
// `preflight run --json <cwd>` invocation it spawns. Defaults to
|
|
10
|
-
// `false`: an ABSENT `session_start_preflight:` block and a
|
|
11
|
-
// PRESENT-but-`setup: false` block behave identically (both invoke
|
|
12
|
-
// `preflight run` with no `--setup`), matching every sibling
|
|
13
|
-
// SessionStart companion's opt-in convention (see ./toolchain-parity.ts,
|
|
14
|
-
// ./stale-base-check.ts); existing manifests parse unchanged and this
|
|
15
|
-
// knob never surprises an operator with new install/build work inside a
|
|
16
|
-
// SessionStart hook until they explicitly ask for it.
|
|
17
|
-
//
|
|
18
|
-
// `--setup` runs a dependency install and, on the agent-preflight build
|
|
19
|
-
// this schema was authored against, a conditional `npm run build` when
|
|
20
|
-
// the target repo's own `.github/workflows/ci.yml` shows a build step
|
|
21
|
-
// before the test step (agent-preflight PR #72; released as of
|
|
22
|
-
// agent-preflight 0.5.0, `--setup` there is install-only, no build
|
|
23
|
-
// step). Either way, the whole `preflight run` child is still bounded
|
|
24
|
-
// by the SAME `--timeout` / `preflightTimeoutMs` that already bounds
|
|
25
|
-
// the companion's subprocess (`DEFAULT_PREFLIGHT_TIMEOUT_MS`,
|
|
26
|
-
// src/cli/session-start/index.ts); enabling `setup` on a workspaces
|
|
27
|
-
// monorepo whose install+build routinely runs long should come with an
|
|
28
|
-
// explicit `--timeout` raise; neither this schema nor the producer ever
|
|
29
|
-
// raises it automatically. agent-preflight's own build step gets a
|
|
30
|
-
// SEPARATE, larger budget (`DEFAULT_SETUP_BUILD_TIMEOUT_MS`, 300000ms,
|
|
31
|
-
// agent-preflight's `src/checks/shared.ts`) than this producer's default
|
|
32
|
-
// `--timeout` (60000ms), and `execFile`'s timeout only kills the
|
|
33
|
-
// `preflight` process itself, not its process group: an `npm ci` /
|
|
34
|
-
// build still in flight when that kill lands keeps writing into the
|
|
35
|
-
// target repo after this hook has already exited 0. Raise `--timeout`
|
|
36
|
-
// (or the target repo's own `.preflight.json` `setup.buildTimeoutMs`)
|
|
37
|
-
// together when enabling `setup` on a slow workspace.
|
|
38
|
-
//
|
|
39
|
-
// SECURITY: `--setup` is not inert on untrusted repository content. Its
|
|
40
|
-
// dependency install runs `npm ci`, which executes that repo's package
|
|
41
|
-
// lifecycle scripts, and its conditional build decision is read out of
|
|
42
|
-
// the TARGET repo's own `.github/workflows/ci.yml` `run:` lines; both
|
|
43
|
-
// are attacker-controlled if the repo is not already trusted (mirrors
|
|
44
|
-
// agent-preflight's own README warning around its MCP server's `--setup`
|
|
45
|
-
// / `setup.enabled` section: "a `run:` line in the target repo's own
|
|
46
|
-
// `.github/workflows/ci.yml` ... decides whether that repo's `build`
|
|
47
|
-
// script is executed on your machine ... `--setup` belongs only on
|
|
48
|
-
// repositories you already trust to run"). Enable this knob only for
|
|
49
|
-
// repositories you already trust to run their own install/build.
|
|
50
|
-
//
|
|
51
|
-
// SCOPE (task c88461c1): resolved from the base manifest, any applicable
|
|
52
|
-
// machine-override layers, and a per-repo project-override layer. The
|
|
53
|
-
// generated hook still invokes `harness session-start preflight` with no
|
|
54
|
-
// `--project` (one static hook command cannot name a different project
|
|
55
|
-
// per repository), but the producer itself derives a project name from
|
|
56
|
-
// its own cwd and feeds it through the EXISTING `LoaderOptions.project`
|
|
57
|
-
// mechanism `--project <name>` also uses, so
|
|
58
|
-
// `<home>/projects/<name>/harness.overrides.yaml`, when present, narrows
|
|
59
|
-
// this key to that one repository. An explicit `--project` (where a
|
|
60
|
-
// caller passes one) still wins outright; a repo with no such layer on
|
|
61
|
-
// disk keeps the host-wide base/machine-override value unchanged.
|
|
62
|
-
//
|
|
63
|
-
// REPOSITORY IDENTITY (review round 2, decision D-021a): the derived
|
|
64
|
-
// name is the basename of the MAIN checkout (the directory containing
|
|
65
|
-
// the repository's shared git common dir, `resolveCommonDir` /
|
|
66
|
-
// `deriveProjectName` in `src/runtime/git-context.ts`), NOT the cwd's
|
|
67
|
-
// own checkout directory, every linked worktree (`git worktree add`)
|
|
68
|
-
// of one repository resolves the identical project layer this way. A
|
|
69
|
-
// bare repository has no `.git` wrapper to step up from, so its own
|
|
70
|
-
// directory's basename applies directly. This is deliberately a
|
|
71
|
-
// DIFFERENT value than the `repo` the `preflight:${REPO}` ledger tag
|
|
72
|
-
// uses (that tag stays scoped to the checkout directory itself; see
|
|
73
|
-
// `resolveGitContext` in the same module). `harness explain-policy` and
|
|
74
|
-
// `harness doctor` derive the project name from the SAME
|
|
75
|
-
// `deriveProjectName` helper (decision D-021b), so all three consumers
|
|
76
|
-
// of this key agree on which layer applies to a given cwd.
|
|
77
|
-
//
|
|
78
|
-
// The full scope, degradation, timeout and version notes live in ONE
|
|
79
|
-
// place, docs/CLI.md under `session_start_preflight.setup`, pinned by
|
|
80
|
-
// the tests named there; this header deliberately does not repeat them.
|
|
81
|
-
//
|
|
82
|
-
// VERSION CAVEAT (task 6993d9b5): agent-preflight 0.5.0's `--setup` was
|
|
83
|
-
// install-only (no conditional build, see the prose above). The build
|
|
84
|
-
// step described above shipped in agent-preflight 0.6.0 (tag v0.6.0,
|
|
85
|
-
// merge commit 2062831).
|
|
86
|
-
//
|
|
87
|
-
// SPLIT (task 65952a0c, docs/decisions/2026-09-08-preflight-floors.md):
|
|
88
|
-
// through task 6993d9b5, `SESSION_START_PREFLIGHT_SETUP_BUILD_MIN_VERSION`
|
|
89
|
-
// below was ALSO the `init` template's `git-preflight` hook `min_version`
|
|
90
|
-
// (src/cli/init/templates.ts). The two are now independent constants:
|
|
91
|
-
// this one is the SETUP floor, read only by `harness doctor`'s
|
|
92
|
-
// session_start_preflight.setup version check
|
|
93
|
-
// (src/cli/doctor/session-start-preflight-setup-version.ts) and by the
|
|
94
|
-
// `init` wizard's dependency table (src/cli/init/dependencies.ts, via
|
|
95
|
-
// the hook floor, not this one). The hook floor itself,
|
|
96
|
-
// `GIT_PREFLIGHT_HOOK_MIN_VERSION`, now lives in
|
|
97
|
-
// src/cli/init/templates.ts. Both are `"0.6.0"` today; bump each only
|
|
98
|
-
// per its own rationale in the ADR, they are free to diverge on a
|
|
99
|
-
// future agent-preflight release that touches only one of the two.
|
|
100
|
-
export const SESSION_START_PREFLIGHT_SETUP_BUILD_MIN_VERSION = "0.6.0";
|
|
101
|
-
export const SessionStartPreflightSchema = z
|
|
102
|
-
.object({
|
|
103
|
-
setup: z.boolean().default(false),
|
|
104
|
-
})
|
|
105
|
-
.strict();
|
|
106
|
-
//# sourceMappingURL=session-start-preflight.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"session-start-preflight.js","sourceRoot":"","sources":["../../src/schema/session-start-preflight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,mEAAmE;AACnE,8DAA8D;AAC9D,qEAAqE;AACrE,+DAA+D;AAC/D,mCAAmC;AACnC,EAAE;AACF,sEAAsE;AACtE,iEAAiE;AACjE,4DAA4D;AAC5D,mEAAmE;AACnE,6DAA6D;AAC7D,yEAAyE;AACzE,sEAAsE;AACtE,wEAAwE;AACxE,sDAAsD;AACtD,EAAE;AACF,wEAAwE;AACxE,uEAAuE;AACvE,sEAAsE;AACtE,+DAA+D;AAC/D,mEAAmE;AACnE,sEAAsE;AACtE,qEAAqE;AACrE,8DAA8D;AAC9D,oEAAoE;AACpE,uEAAuE;AACvE,wEAAwE;AACxE,mEAAmE;AACnE,uEAAuE;AACvE,yEAAyE;AACzE,iEAAiE;AACjE,mEAAmE;AACnE,oEAAoE;AACpE,sEAAsE;AACtE,sEAAsE;AACtE,sDAAsD;AACtD,EAAE;AACF,wEAAwE;AACxE,uEAAuE;AACvE,uEAAuE;AACvE,sEAAsE;AACtE,sEAAsE;AACtE,yEAAyE;AACzE,qEAAqE;AACrE,qEAAqE;AACrE,mEAAmE;AACnE,qEAAqE;AACrE,iEAAiE;AACjE,EAAE;AACF,yEAAyE;AACzE,sEAAsE;AACtE,yEAAyE;AACzE,uEAAuE;AACvE,uEAAuE;AACvE,wEAAwE;AACxE,6CAA6C;AAC7C,yEAAyE;AACzE,oEAAoE;AACpE,uEAAuE;AACvE,kEAAkE;AAClE,EAAE;AACF,qEAAqE;AACrE,sEAAsE;AACtE,+DAA+D;AAC/D,sEAAsE;AACtE,qEAAqE;AACrE,qEAAqE;AACrE,oEAAoE;AACpE,gEAAgE;AAChE,qEAAqE;AACrE,oEAAoE;AACpE,wEAAwE;AACxE,yDAAyD;AACzD,uEAAuE;AACvE,2DAA2D;AAC3D,EAAE;AACF,qEAAqE;AACrE,sEAAsE;AACtE,wEAAwE;AACxE,EAAE;AACF,wEAAwE;AACxE,sEAAsE;AACtE,qEAAqE;AACrE,yBAAyB;AACzB,EAAE;AACF,wEAAwE;AACxE,2EAA2E;AAC3E,0EAA0E;AAC1E,sEAAsE;AACtE,+DAA+D;AAC/D,8CAA8C;AAC9C,uEAAuE;AACvE,sEAAsE;AACtE,wDAAwD;AACxD,iDAAiD;AACjD,sEAAsE;AACtE,kEAAkE;AAClE,mEAAmE;AACnE,MAAM,CAAC,MAAM,+CAA+C,GAAG,OAAO,CAAC;AAEvE,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC;KACzC,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CAClC,CAAC;KACD,MAAM,EAAE,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
export declare const StaleBaseCheckSchema: z.ZodObject<{
|
|
3
|
-
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
4
|
-
remote: z.ZodOptional<z.ZodString>;
|
|
5
|
-
default_branch: z.ZodOptional<z.ZodString>;
|
|
6
|
-
fetch_timeout_ms: z.ZodOptional<z.ZodNumber>;
|
|
7
|
-
}, "strict", z.ZodTypeAny, {
|
|
8
|
-
enabled: boolean;
|
|
9
|
-
remote?: string | undefined;
|
|
10
|
-
default_branch?: string | undefined;
|
|
11
|
-
fetch_timeout_ms?: number | undefined;
|
|
12
|
-
}, {
|
|
13
|
-
enabled?: boolean | undefined;
|
|
14
|
-
remote?: string | undefined;
|
|
15
|
-
default_branch?: string | undefined;
|
|
16
|
-
fetch_timeout_ms?: number | undefined;
|
|
17
|
-
}>;
|
|
18
|
-
export type StaleBaseCheckConfig = z.infer<typeof StaleBaseCheckSchema>;
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
// `stale_base_check` (task ce3903b0, incident ea8becf5) — optional,
|
|
3
|
-
// default-OFF config block for `harness session-start stale-base-check`.
|
|
4
|
-
// The producer itself lives in
|
|
5
|
-
// src/cli/session-start/stale-base-check.ts; this schema only carries the
|
|
6
|
-
// manifest-declared knobs it reads.
|
|
7
|
-
//
|
|
8
|
-
// Every field is optional: the producer resolves its own sane defaults
|
|
9
|
-
// (remote -> "origin", default_branch -> resolved from
|
|
10
|
-
// refs/remotes/origin/HEAD, fetch_timeout_ms -> 8000) when a field is
|
|
11
|
-
// omitted, so declaring `stale_base_check: { enabled: true }` alone is a
|
|
12
|
-
// complete, valid config. `enabled` itself defaults to `false`: an ABSENT
|
|
13
|
-
// `stale_base_check:` block and a PRESENT-but-`enabled: false` block
|
|
14
|
-
// behave identically (both skip, and — the point of opt-in here — neither
|
|
15
|
-
// ever spends a network round-trip), so existing manifests parse
|
|
16
|
-
// unchanged and this companion never surprises an operator with new
|
|
17
|
-
// session-start network I/O until they explicitly ask for it. See the
|
|
18
|
-
// producer module's header comment for the full WHERE/SCHÄRFE rationale.
|
|
19
|
-
export const StaleBaseCheckSchema = z
|
|
20
|
-
.object({
|
|
21
|
-
enabled: z.boolean().default(false),
|
|
22
|
-
// Remote name to fetch the live default-branch tip from. Defaults to
|
|
23
|
-
// "origin" when omitted.
|
|
24
|
-
remote: z.string().min(1).optional(),
|
|
25
|
-
// Explicit default-branch override (e.g. "main"). When omitted, the
|
|
26
|
-
// producer resolves it from `refs/remotes/origin/HEAD` on disk — that
|
|
27
|
-
// lookup is safe to trust for the branch NAME (which essentially never
|
|
28
|
-
// changes after initial repo setup), unlike trusting that ref's SHA
|
|
29
|
-
// for staleness, which is exactly the bug this task closes.
|
|
30
|
-
default_branch: z.string().min(1).optional(),
|
|
31
|
-
// Per-`git` subprocess timeout in ms (applied individually to the
|
|
32
|
-
// fetch, and to each follow-up rev-list/log call). Defaults to 8000
|
|
33
|
-
// when omitted.
|
|
34
|
-
fetch_timeout_ms: z.number().int().positive().optional(),
|
|
35
|
-
})
|
|
36
|
-
.strict();
|
|
37
|
-
//# sourceMappingURL=stale-base-check.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stale-base-check.js","sourceRoot":"","sources":["../../src/schema/stale-base-check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,oEAAoE;AACpE,yEAAyE;AACzE,+BAA+B;AAC/B,0EAA0E;AAC1E,oCAAoC;AACpC,EAAE;AACF,uEAAuE;AACvE,uDAAuD;AACvD,sEAAsE;AACtE,yEAAyE;AACzE,0EAA0E;AAC1E,qEAAqE;AACrE,0EAA0E;AAC1E,iEAAiE;AACjE,oEAAoE;AACpE,sEAAsE;AACtE,yEAAyE;AACzE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAClC,MAAM,CAAC;IACN,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACnC,qEAAqE;IACrE,yBAAyB;IACzB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACpC,oEAAoE;IACpE,sEAAsE;IACtE,uEAAuE;IACvE,oEAAoE;IACpE,4DAA4D;IAC5D,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC5C,kEAAkE;IAClE,oEAAoE;IACpE,gBAAgB;IAChB,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACzD,CAAC;KACD,MAAM,EAAE,CAAC"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
export declare const ToolchainParitySchema: z.ZodObject<{
|
|
3
|
-
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
4
|
-
machine_state_dir: z.ZodOptional<z.ZodString>;
|
|
5
|
-
profile: z.ZodOptional<z.ZodString>;
|
|
6
|
-
workspace_root: z.ZodOptional<z.ZodString>;
|
|
7
|
-
stale_after_days: z.ZodOptional<z.ZodNumber>;
|
|
8
|
-
}, "strict", z.ZodTypeAny, {
|
|
9
|
-
enabled: boolean;
|
|
10
|
-
machine_state_dir?: string | undefined;
|
|
11
|
-
profile?: string | undefined;
|
|
12
|
-
workspace_root?: string | undefined;
|
|
13
|
-
stale_after_days?: number | undefined;
|
|
14
|
-
}, {
|
|
15
|
-
enabled?: boolean | undefined;
|
|
16
|
-
machine_state_dir?: string | undefined;
|
|
17
|
-
profile?: string | undefined;
|
|
18
|
-
workspace_root?: string | undefined;
|
|
19
|
-
stale_after_days?: number | undefined;
|
|
20
|
-
}>;
|
|
21
|
-
export type ToolchainParityConfig = z.infer<typeof ToolchainParitySchema>;
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
// `toolchain_parity` (task: PATH-Shim-Vorfall 2026-07-22) — optional,
|
|
3
|
-
// default-OFF config block for `harness session-start toolchain-parity`.
|
|
4
|
-
// The producer itself lives in src/cli/session-start/toolchain-parity.ts;
|
|
5
|
-
// this schema only carries the manifest-declared knobs it reads.
|
|
6
|
-
//
|
|
7
|
-
// Every field is optional: the producer resolves its own sane defaults
|
|
8
|
-
// (machine_state_dir -> ~/.harness/machine-state, profile ->
|
|
9
|
-
// os.hostname(), workspace_root -> the session cwd) when a field is
|
|
10
|
-
// omitted, so declaring `toolchain_parity: { enabled: true }` alone is a
|
|
11
|
-
// complete, valid config. `enabled` itself defaults to `false`: an
|
|
12
|
-
// ABSENT `toolchain_parity:` block and a PRESENT-but-`enabled: false`
|
|
13
|
-
// block behave identically (both skip), so existing manifests parse
|
|
14
|
-
// unchanged and the new companion is strictly opt-in.
|
|
15
|
-
export const ToolchainParitySchema = z
|
|
16
|
-
.object({
|
|
17
|
-
enabled: z.boolean().default(false),
|
|
18
|
-
// Directory the per-machine snapshot JSON files live in. Shared by
|
|
19
|
-
// every machine that wants to compare toolchains — agent-memory-sync
|
|
20
|
-
// (agent-memory PR #64) is what actually transports files in and out
|
|
21
|
-
// of this directory across machines; this producer only reads/writes
|
|
22
|
-
// it locally.
|
|
23
|
-
machine_state_dir: z.string().min(1).optional(),
|
|
24
|
-
// This machine's own profile name — the snapshot is written to
|
|
25
|
-
// `<machine_state_dir>/<profile>.json` and every OTHER `*.json` in
|
|
26
|
-
// the directory is treated as a peer to compare against. Defaults to
|
|
27
|
-
// a filename-sanitized os.hostname() when omitted.
|
|
28
|
-
profile: z.string().min(1).optional(),
|
|
29
|
-
// Root directory `.ai/workflow/manifest.json` (the orchestrator-
|
|
30
|
-
// workflow kit's own version marker) is read from, for the OW-Kit
|
|
31
|
-
// version drift check. Defaults to the session cwd.
|
|
32
|
-
workspace_root: z.string().min(1).optional(),
|
|
33
|
-
// Advisory staleness threshold, in days, for a peer snapshot's own
|
|
34
|
-
// `timestamp` (task c1b5ade5, hardening follow-up to the initial
|
|
35
|
-
// 690fba7c drop). Undefined (default) disables the check entirely —
|
|
36
|
-
// no snapshot is ever "too old" to compare. When set, a peer whose
|
|
37
|
-
// snapshot age exceeds this threshold gets an EXTRA stderr note
|
|
38
|
-
// flagging it as stale; the comparison itself (and `driftCount`) is
|
|
39
|
-
// unchanged — staleness is a caveat on trustworthiness, not a drift
|
|
40
|
-
// finding, so it never inflates the drift count. `.finite()` (task
|
|
41
|
-
// c1b5ade5 R2, finding 5): without it, `Infinity` (reachable via YAML
|
|
42
|
-
// `.inf`) passed `.positive()` and silently turned the check into a
|
|
43
|
-
// permanent no-op (`comparison.ageMs > Infinity` is always false) —
|
|
44
|
-
// fractional values stay allowed, only non-finite ones are rejected.
|
|
45
|
-
stale_after_days: z.number().positive().finite().optional(),
|
|
46
|
-
})
|
|
47
|
-
.strict();
|
|
48
|
-
//# sourceMappingURL=toolchain-parity.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"toolchain-parity.js","sourceRoot":"","sources":["../../src/schema/toolchain-parity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,sEAAsE;AACtE,yEAAyE;AACzE,0EAA0E;AAC1E,iEAAiE;AACjE,EAAE;AACF,uEAAuE;AACvE,6DAA6D;AAC7D,oEAAoE;AACpE,yEAAyE;AACzE,mEAAmE;AACnE,sEAAsE;AACtE,oEAAoE;AACpE,sDAAsD;AACtD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC;KACnC,MAAM,CAAC;IACN,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACnC,mEAAmE;IACnE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,cAAc;IACd,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC/C,+DAA+D;IAC/D,mEAAmE;IACnE,qEAAqE;IACrE,mDAAmD;IACnD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACrC,iEAAiE;IACjE,kEAAkE;IAClE,oDAAoD;IACpD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC5C,mEAAmE;IACnE,iEAAiE;IACjE,oEAAoE;IACpE,mEAAmE;IACnE,gEAAgE;IAChE,oEAAoE;IACpE,oEAAoE;IACpE,mEAAmE;IACnE,sEAAsE;IACtE,oEAAoE;IACpE,oEAAoE;IACpE,qEAAqE;IACrE,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC5D,CAAC;KACD,MAAM,EAAE,CAAC"}
|