@productbrain/cli 0.1.0-beta.1131 → 0.1.0-beta.11313
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/README.md +14 -4
- package/dist/__tests__/adapters.test.js +79 -53
- package/dist/__tests__/adapters.test.js.map +1 -1
- package/dist/__tests__/adminConfig.test.d.ts +18 -0
- package/dist/__tests__/adminConfig.test.d.ts.map +1 -0
- package/dist/__tests__/adminConfig.test.js +221 -0
- package/dist/__tests__/adminConfig.test.js.map +1 -0
- package/dist/__tests__/batch-transformations.test.js +2 -26
- package/dist/__tests__/batch-transformations.test.js.map +1 -1
- package/dist/__tests__/capture-receipt-coaching.test.d.ts +2 -0
- package/dist/__tests__/capture-receipt-coaching.test.d.ts.map +1 -0
- package/dist/__tests__/capture-receipt-coaching.test.js +108 -0
- package/dist/__tests__/capture-receipt-coaching.test.js.map +1 -0
- package/dist/__tests__/capture-receipt-role-hint.test.d.ts +2 -0
- package/dist/__tests__/capture-receipt-role-hint.test.d.ts.map +1 -0
- package/dist/__tests__/capture-receipt-role-hint.test.js +64 -0
- package/dist/__tests__/capture-receipt-role-hint.test.js.map +1 -0
- package/dist/__tests__/capture-receipt-spine-floor.test.d.ts +2 -0
- package/dist/__tests__/capture-receipt-spine-floor.test.d.ts.map +1 -0
- package/dist/__tests__/capture-receipt-spine-floor.test.js +45 -0
- package/dist/__tests__/capture-receipt-spine-floor.test.js.map +1 -0
- package/dist/__tests__/capture.test.js +437 -231
- package/dist/__tests__/capture.test.js.map +1 -1
- package/dist/__tests__/cli-error-once.test.d.ts +2 -0
- package/dist/__tests__/cli-error-once.test.d.ts.map +1 -0
- package/dist/__tests__/cli-error-once.test.js +51 -0
- package/dist/__tests__/cli-error-once.test.js.map +1 -0
- package/dist/__tests__/client-binding-guard.test.d.ts +2 -0
- package/dist/__tests__/client-binding-guard.test.d.ts.map +1 -0
- package/dist/__tests__/client-binding-guard.test.js +84 -0
- package/dist/__tests__/client-binding-guard.test.js.map +1 -0
- package/dist/__tests__/coaching-mirror-drift.test.d.ts +2 -0
- package/dist/__tests__/coaching-mirror-drift.test.d.ts.map +1 -0
- package/dist/__tests__/coaching-mirror-drift.test.js +50 -0
- package/dist/__tests__/coaching-mirror-drift.test.js.map +1 -0
- package/dist/__tests__/codex-prep-parity.test.d.ts +2 -0
- package/dist/__tests__/codex-prep-parity.test.d.ts.map +1 -0
- package/dist/__tests__/codex-prep-parity.test.js +84 -0
- package/dist/__tests__/codex-prep-parity.test.js.map +1 -0
- package/dist/__tests__/config-prod-fallthrough.test.d.ts +2 -0
- package/dist/__tests__/config-prod-fallthrough.test.d.ts.map +1 -0
- package/dist/__tests__/config-prod-fallthrough.test.js +93 -0
- package/dist/__tests__/config-prod-fallthrough.test.js.map +1 -0
- package/dist/__tests__/config.test.js +559 -40
- package/dist/__tests__/config.test.js.map +1 -1
- package/dist/__tests__/constellation.test.js +26 -14
- package/dist/__tests__/constellation.test.js.map +1 -1
- package/dist/__tests__/conversation.test.d.ts +2 -0
- package/dist/__tests__/conversation.test.d.ts.map +1 -0
- package/dist/__tests__/conversation.test.js +113 -0
- package/dist/__tests__/conversation.test.js.map +1 -0
- package/dist/__tests__/entry-formatter.test.d.ts +2 -0
- package/dist/__tests__/entry-formatter.test.d.ts.map +1 -0
- package/dist/__tests__/entry-formatter.test.js +228 -0
- package/dist/__tests__/entry-formatter.test.js.map +1 -0
- package/dist/__tests__/entry-preflight.test.d.ts +2 -0
- package/dist/__tests__/entry-preflight.test.d.ts.map +1 -0
- package/dist/__tests__/entry-preflight.test.js +58 -0
- package/dist/__tests__/entry-preflight.test.js.map +1 -0
- package/dist/__tests__/entryAccept-batch.test.d.ts +2 -0
- package/dist/__tests__/entryAccept-batch.test.d.ts.map +1 -0
- package/dist/__tests__/entryAccept-batch.test.js +305 -0
- package/dist/__tests__/entryAccept-batch.test.js.map +1 -0
- package/dist/__tests__/entryAccept.test.d.ts +2 -0
- package/dist/__tests__/entryAccept.test.d.ts.map +1 -0
- package/dist/__tests__/entryAccept.test.js +582 -0
- package/dist/__tests__/entryAccept.test.js.map +1 -0
- package/dist/__tests__/entryDiscardResolve.test.d.ts +2 -0
- package/dist/__tests__/entryDiscardResolve.test.d.ts.map +1 -0
- package/dist/__tests__/entryDiscardResolve.test.js +28 -0
- package/dist/__tests__/entryDiscardResolve.test.js.map +1 -0
- package/dist/__tests__/entryOwn.test.d.ts +2 -0
- package/dist/__tests__/entryOwn.test.d.ts.map +1 -0
- package/dist/__tests__/entryOwn.test.js +50 -0
- package/dist/__tests__/entryOwn.test.js.map +1 -0
- package/dist/__tests__/entryTick.test.d.ts +2 -0
- package/dist/__tests__/entryTick.test.d.ts.map +1 -0
- package/dist/__tests__/entryTick.test.js +40 -0
- package/dist/__tests__/entryTick.test.js.map +1 -0
- package/dist/__tests__/envelope-contract.test.js +2 -0
- package/dist/__tests__/envelope-contract.test.js.map +1 -1
- package/dist/__tests__/errors.test.js +41 -0
- package/dist/__tests__/errors.test.js.map +1 -1
- package/dist/__tests__/fields.test.js +14 -3
- package/dist/__tests__/fields.test.js.map +1 -1
- package/dist/__tests__/gateway-dry-run-timeout.test.d.ts +2 -0
- package/dist/__tests__/gateway-dry-run-timeout.test.d.ts.map +1 -0
- package/dist/__tests__/gateway-dry-run-timeout.test.js +70 -0
- package/dist/__tests__/gateway-dry-run-timeout.test.js.map +1 -0
- package/dist/__tests__/gateway-timeout-body-phase.test.d.ts +2 -0
- package/dist/__tests__/gateway-timeout-body-phase.test.d.ts.map +1 -0
- package/dist/__tests__/gateway-timeout-body-phase.test.js +116 -0
- package/dist/__tests__/gateway-timeout-body-phase.test.js.map +1 -0
- package/dist/__tests__/glossary.test.js +10 -27
- package/dist/__tests__/glossary.test.js.map +1 -1
- package/dist/__tests__/health-gap-kinds-drift.test.d.ts +2 -0
- package/dist/__tests__/health-gap-kinds-drift.test.d.ts.map +1 -0
- package/dist/__tests__/health-gap-kinds-drift.test.js +43 -0
- package/dist/__tests__/health-gap-kinds-drift.test.js.map +1 -0
- package/dist/__tests__/hook-intents.test.js +31 -43
- package/dist/__tests__/hook-intents.test.js.map +1 -1
- package/dist/__tests__/init.test.d.ts +2 -1
- package/dist/__tests__/init.test.d.ts.map +1 -1
- package/dist/__tests__/init.test.js +159 -20
- package/dist/__tests__/init.test.js.map +1 -1
- package/dist/__tests__/kernel-value-sets-drift.test.d.ts +2 -0
- package/dist/__tests__/kernel-value-sets-drift.test.d.ts.map +1 -0
- package/dist/__tests__/kernel-value-sets-drift.test.js +46 -0
- package/dist/__tests__/kernel-value-sets-drift.test.js.map +1 -0
- package/dist/__tests__/kernel-value-sets-generator.test.d.ts +2 -0
- package/dist/__tests__/kernel-value-sets-generator.test.d.ts.map +1 -0
- package/dist/__tests__/kernel-value-sets-generator.test.js +108 -0
- package/dist/__tests__/kernel-value-sets-generator.test.js.map +1 -0
- package/dist/__tests__/login.test.js +18 -1
- package/dist/__tests__/login.test.js.map +1 -1
- package/dist/__tests__/missingPin.test.d.ts +11 -0
- package/dist/__tests__/missingPin.test.d.ts.map +1 -0
- package/dist/__tests__/missingPin.test.js +232 -0
- package/dist/__tests__/missingPin.test.js.map +1 -0
- package/dist/__tests__/notice-marker.test.js +146 -11
- package/dist/__tests__/notice-marker.test.js.map +1 -1
- package/dist/__tests__/orient.test.js +368 -38
- package/dist/__tests__/orient.test.js.map +1 -1
- package/dist/__tests__/perimeter.test.js +1 -1
- package/dist/__tests__/perimeter.test.js.map +1 -1
- package/dist/__tests__/preview-key-refresh.test.js +73 -13
- package/dist/__tests__/preview-key-refresh.test.js.map +1 -1
- package/dist/__tests__/profiles.test.js +498 -8
- package/dist/__tests__/profiles.test.js.map +1 -1
- package/dist/__tests__/prompts.test.js +18 -1
- package/dist/__tests__/prompts.test.js.map +1 -1
- package/dist/__tests__/rate-limit-resilience.test.d.ts +8 -0
- package/dist/__tests__/rate-limit-resilience.test.d.ts.map +1 -0
- package/dist/__tests__/rate-limit-resilience.test.js +191 -0
- package/dist/__tests__/rate-limit-resilience.test.js.map +1 -0
- package/dist/__tests__/read-target-notice.test.d.ts +2 -0
- package/dist/__tests__/read-target-notice.test.d.ts.map +1 -0
- package/dist/__tests__/read-target-notice.test.js +125 -0
- package/dist/__tests__/read-target-notice.test.js.map +1 -0
- package/dist/__tests__/relate.test.js +246 -14
- package/dist/__tests__/relate.test.js.map +1 -1
- package/dist/__tests__/removed-commands.test.d.ts +2 -0
- package/dist/__tests__/removed-commands.test.d.ts.map +1 -0
- package/dist/__tests__/removed-commands.test.js +99 -0
- package/dist/__tests__/removed-commands.test.js.map +1 -0
- package/dist/__tests__/reply-commands-registered.test.d.ts +2 -0
- package/dist/__tests__/reply-commands-registered.test.d.ts.map +1 -0
- package/dist/__tests__/reply-commands-registered.test.js +81 -0
- package/dist/__tests__/reply-commands-registered.test.js.map +1 -0
- package/dist/__tests__/repo-detect.test.js +18 -38
- package/dist/__tests__/repo-detect.test.js.map +1 -1
- package/dist/__tests__/reportedProfile.test.d.ts +2 -0
- package/dist/__tests__/reportedProfile.test.d.ts.map +1 -0
- package/dist/__tests__/reportedProfile.test.js +328 -0
- package/dist/__tests__/reportedProfile.test.js.map +1 -0
- package/dist/__tests__/restore.test.d.ts +2 -0
- package/dist/__tests__/restore.test.d.ts.map +1 -0
- package/dist/__tests__/restore.test.js +85 -0
- package/dist/__tests__/restore.test.js.map +1 -0
- package/dist/__tests__/route-latency-budget.test.d.ts +2 -0
- package/dist/__tests__/route-latency-budget.test.d.ts.map +1 -0
- package/dist/__tests__/route-latency-budget.test.js +107 -0
- package/dist/__tests__/route-latency-budget.test.js.map +1 -0
- package/dist/__tests__/runner.test.js +59 -44
- package/dist/__tests__/runner.test.js.map +1 -1
- package/dist/__tests__/session-binding-refusal-tenant.test.d.ts +2 -0
- package/dist/__tests__/session-binding-refusal-tenant.test.d.ts.map +1 -0
- package/dist/__tests__/session-binding-refusal-tenant.test.js +112 -0
- package/dist/__tests__/session-binding-refusal-tenant.test.js.map +1 -0
- package/dist/__tests__/session-close-conversation.test.d.ts +2 -0
- package/dist/__tests__/session-close-conversation.test.d.ts.map +1 -0
- package/dist/__tests__/session-close-conversation.test.js +75 -0
- package/dist/__tests__/session-close-conversation.test.js.map +1 -0
- package/dist/__tests__/session-close-loop.test.d.ts +2 -0
- package/dist/__tests__/session-close-loop.test.d.ts.map +1 -0
- package/dist/__tests__/session-close-loop.test.js +259 -0
- package/dist/__tests__/session-close-loop.test.js.map +1 -0
- package/dist/__tests__/session-label.test.d.ts +2 -0
- package/dist/__tests__/session-label.test.d.ts.map +1 -0
- package/dist/__tests__/session-label.test.js +46 -0
- package/dist/__tests__/session-label.test.js.map +1 -0
- package/dist/__tests__/session-list-show.test.d.ts +2 -0
- package/dist/__tests__/session-list-show.test.d.ts.map +1 -0
- package/dist/__tests__/session-list-show.test.js +173 -0
- package/dist/__tests__/session-list-show.test.js.map +1 -0
- package/dist/__tests__/session-pinned-role.test.d.ts +2 -0
- package/dist/__tests__/session-pinned-role.test.d.ts.map +1 -0
- package/dist/__tests__/session-pinned-role.test.js +305 -0
- package/dist/__tests__/session-pinned-role.test.js.map +1 -0
- package/dist/__tests__/session-reset.test.js +23 -7
- package/dist/__tests__/session-reset.test.js.map +1 -1
- package/dist/__tests__/session-resume-backstop.test.js +42 -0
- package/dist/__tests__/session-resume-backstop.test.js.map +1 -1
- package/dist/__tests__/session-role-name-sanitize.test.d.ts +2 -0
- package/dist/__tests__/session-role-name-sanitize.test.d.ts.map +1 -0
- package/dist/__tests__/session-role-name-sanitize.test.js +122 -0
- package/dist/__tests__/session-role-name-sanitize.test.js.map +1 -0
- package/dist/__tests__/session-start-key-refresh.test.js +47 -28
- package/dist/__tests__/session-start-key-refresh.test.js.map +1 -1
- package/dist/__tests__/session-state-machine.test.js +190 -9
- package/dist/__tests__/session-state-machine.test.js.map +1 -1
- package/dist/__tests__/session-switch.test.js +217 -4
- package/dist/__tests__/session-switch.test.js.map +1 -1
- package/dist/__tests__/session-touch.test.js +48 -107
- package/dist/__tests__/session-touch.test.js.map +1 -1
- package/dist/__tests__/sessionBinding.test.d.ts +2 -0
- package/dist/__tests__/sessionBinding.test.d.ts.map +1 -0
- package/dist/__tests__/sessionBinding.test.js +118 -0
- package/dist/__tests__/sessionBinding.test.js.map +1 -0
- package/dist/__tests__/sessionByIdLookup.test.d.ts +2 -0
- package/dist/__tests__/sessionByIdLookup.test.d.ts.map +1 -0
- package/dist/__tests__/sessionByIdLookup.test.js +63 -0
- package/dist/__tests__/sessionByIdLookup.test.js.map +1 -0
- package/dist/__tests__/skill-vocabulary.test.d.ts +1 -1
- package/dist/__tests__/skill-vocabulary.test.js +7 -2
- package/dist/__tests__/skill-vocabulary.test.js.map +1 -1
- package/dist/__tests__/state.test.js +21 -1
- package/dist/__tests__/state.test.js.map +1 -1
- package/dist/__tests__/stillTrue.test.d.ts +2 -0
- package/dist/__tests__/stillTrue.test.d.ts.map +1 -0
- package/dist/__tests__/stillTrue.test.js +52 -0
- package/dist/__tests__/stillTrue.test.js.map +1 -0
- package/dist/__tests__/strip.test.js +57 -3
- package/dist/__tests__/strip.test.js.map +1 -1
- package/dist/__tests__/surfaces.test.js +3 -4
- package/dist/__tests__/surfaces.test.js.map +1 -1
- package/dist/__tests__/tenant-notice-write-path.test.d.ts +2 -0
- package/dist/__tests__/tenant-notice-write-path.test.d.ts.map +1 -0
- package/dist/__tests__/tenant-notice-write-path.test.js +183 -0
- package/dist/__tests__/tenant-notice-write-path.test.js.map +1 -0
- package/dist/__tests__/update-check.test.js +21 -1
- package/dist/__tests__/update-check.test.js.map +1 -1
- package/dist/__tests__/update.test.js +470 -8
- package/dist/__tests__/update.test.js.map +1 -1
- package/dist/__tests__/verify-formatter.test.d.ts +2 -0
- package/dist/__tests__/verify-formatter.test.d.ts.map +1 -0
- package/dist/__tests__/verify-formatter.test.js +85 -0
- package/dist/__tests__/verify-formatter.test.js.map +1 -0
- package/dist/__tests__/vocabulary-leak.test.d.ts +1 -7
- package/dist/__tests__/vocabulary-leak.test.d.ts.map +1 -1
- package/dist/__tests__/vocabulary-leak.test.js +8 -115
- package/dist/__tests__/vocabulary-leak.test.js.map +1 -1
- package/dist/__tests__/workspace.test.js +11 -72
- package/dist/__tests__/workspace.test.js.map +1 -1
- package/dist/__tests__/workspaceNotice.test.d.ts +2 -0
- package/dist/__tests__/workspaceNotice.test.d.ts.map +1 -0
- package/dist/__tests__/workspaceNotice.test.js +559 -0
- package/dist/__tests__/workspaceNotice.test.js.map +1 -0
- package/dist/commands/__tests__/quality.test.d.ts +2 -0
- package/dist/commands/__tests__/quality.test.d.ts.map +1 -0
- package/dist/commands/__tests__/quality.test.js +250 -0
- package/dist/commands/__tests__/quality.test.js.map +1 -0
- package/dist/commands/__tests__/rework.test.d.ts +2 -0
- package/dist/commands/__tests__/rework.test.d.ts.map +1 -0
- package/dist/commands/__tests__/rework.test.js +149 -0
- package/dist/commands/__tests__/rework.test.js.map +1 -0
- package/dist/commands/__tests__/tensionsList.test.d.ts +2 -0
- package/dist/commands/__tests__/tensionsList.test.d.ts.map +1 -0
- package/dist/commands/__tests__/tensionsList.test.js +63 -0
- package/dist/commands/__tests__/tensionsList.test.js.map +1 -0
- package/dist/commands/accept-policy.d.ts +10 -0
- package/dist/commands/accept-policy.d.ts.map +1 -0
- package/dist/commands/accept-policy.js +107 -0
- package/dist/commands/accept-policy.js.map +1 -0
- package/dist/commands/admin/cockpit.d.ts +2 -13
- package/dist/commands/admin/cockpit.d.ts.map +1 -1
- package/dist/commands/admin/cockpit.js +5 -5
- package/dist/commands/admin/cockpit.js.map +1 -1
- package/dist/commands/admin/index.d.ts +49 -0
- package/dist/commands/admin/index.d.ts.map +1 -1
- package/dist/commands/admin/index.js +148 -29
- package/dist/commands/admin/index.js.map +1 -1
- package/dist/commands/admin/index.test.d.ts +2 -0
- package/dist/commands/admin/index.test.d.ts.map +1 -0
- package/dist/commands/admin/index.test.js +94 -0
- package/dist/commands/admin/index.test.js.map +1 -0
- package/dist/commands/admin/inspect.d.ts.map +1 -1
- package/dist/commands/admin/inspect.js +2 -7
- package/dist/commands/admin/inspect.js.map +1 -1
- package/dist/commands/admin/probe.d.ts +75 -0
- package/dist/commands/admin/probe.d.ts.map +1 -0
- package/dist/commands/admin/probe.js +224 -0
- package/dist/commands/admin/probe.js.map +1 -0
- package/dist/commands/admin/probe.test.d.ts +2 -0
- package/dist/commands/admin/probe.test.d.ts.map +1 -0
- package/dist/commands/admin/probe.test.js +193 -0
- package/dist/commands/admin/probe.test.js.map +1 -0
- package/dist/commands/admin/run.d.ts +43 -0
- package/dist/commands/admin/run.d.ts.map +1 -0
- package/dist/commands/admin/run.js +78 -0
- package/dist/commands/admin/run.js.map +1 -0
- package/dist/commands/admin/run.test.d.ts +18 -0
- package/dist/commands/admin/run.test.d.ts.map +1 -0
- package/dist/commands/admin/run.test.js +168 -0
- package/dist/commands/admin/run.test.js.map +1 -0
- package/dist/commands/admin/seed.d.ts +6 -21
- package/dist/commands/admin/seed.d.ts.map +1 -1
- package/dist/commands/admin/seed.js +41 -310
- package/dist/commands/admin/seed.js.map +1 -1
- package/dist/commands/admin/seed.test.d.ts +3 -4
- package/dist/commands/admin/seed.test.d.ts.map +1 -1
- package/dist/commands/admin/seed.test.js +26 -76
- package/dist/commands/admin/seed.test.js.map +1 -1
- package/dist/commands/admin/seedRegistryEntries.generated.d.ts.map +1 -1
- package/dist/commands/admin/seedRegistryEntries.generated.js +3 -84
- package/dist/commands/admin/seedRegistryEntries.generated.js.map +1 -1
- package/dist/commands/admin/seedRegistryEntries.test.d.ts +5 -3
- package/dist/commands/admin/seedRegistryEntries.test.d.ts.map +1 -1
- package/dist/commands/admin/seedRegistryEntries.test.js +60 -26
- package/dist/commands/admin/seedRegistryEntries.test.js.map +1 -1
- package/dist/commands/admin/seedRowType.d.ts +22 -0
- package/dist/commands/admin/seedRowType.d.ts.map +1 -0
- package/dist/commands/admin/seedRowType.js +2 -0
- package/dist/commands/admin/seedRowType.js.map +1 -0
- package/dist/commands/admin/seedStatusColor.d.ts +9 -0
- package/dist/commands/admin/seedStatusColor.d.ts.map +1 -0
- package/dist/commands/admin/seedStatusColor.js +19 -0
- package/dist/commands/admin/seedStatusColor.js.map +1 -0
- package/dist/commands/admin/seedStatusColor.test.d.ts +2 -0
- package/dist/commands/admin/seedStatusColor.test.d.ts.map +1 -0
- package/dist/commands/admin/seedStatusColor.test.js +31 -0
- package/dist/commands/admin/seedStatusColor.test.js.map +1 -0
- package/dist/commands/brief.d.ts.map +1 -1
- package/dist/commands/brief.js +24 -2
- package/dist/commands/brief.js.map +1 -1
- package/dist/commands/capture.d.ts +17 -16
- package/dist/commands/capture.d.ts.map +1 -1
- package/dist/commands/capture.js +105 -288
- package/dist/commands/capture.js.map +1 -1
- package/dist/commands/chain-walk.d.ts.map +1 -1
- package/dist/commands/chain-walk.js.map +1 -1
- package/dist/commands/changes.d.ts.map +1 -1
- package/dist/commands/changes.js.map +1 -1
- package/dist/commands/codex-prep.d.ts +11 -1
- package/dist/commands/codex-prep.d.ts.map +1 -1
- package/dist/commands/codex-prep.js +14 -83
- package/dist/commands/codex-prep.js.map +1 -1
- package/dist/commands/collections.d.ts +1 -1
- package/dist/commands/collections.d.ts.map +1 -1
- package/dist/commands/collections.js +1 -1
- package/dist/commands/collections.js.map +1 -1
- package/dist/commands/conflicts.d.ts +35 -0
- package/dist/commands/conflicts.d.ts.map +1 -0
- package/dist/commands/conflicts.js +194 -0
- package/dist/commands/conflicts.js.map +1 -0
- package/dist/commands/conflicts.test.d.ts +2 -0
- package/dist/commands/conflicts.test.d.ts.map +1 -0
- package/dist/commands/conflicts.test.js +179 -0
- package/dist/commands/conflicts.test.js.map +1 -0
- package/dist/commands/connect-config.test.js +11 -3
- package/dist/commands/connect-config.test.js.map +1 -1
- package/dist/commands/connect-decline.test.d.ts +2 -0
- package/dist/commands/connect-decline.test.d.ts.map +1 -0
- package/dist/commands/connect-decline.test.js +70 -0
- package/dist/commands/connect-decline.test.js.map +1 -0
- package/dist/commands/connect-integration.test.js +25 -12
- package/dist/commands/connect-integration.test.js.map +1 -1
- package/dist/commands/connect-legacy-migration.test.d.ts +2 -0
- package/dist/commands/connect-legacy-migration.test.d.ts.map +1 -0
- package/dist/commands/connect-legacy-migration.test.js +108 -0
- package/dist/commands/connect-legacy-migration.test.js.map +1 -0
- package/dist/commands/connect-redeem-failure.test.d.ts +2 -0
- package/dist/commands/connect-redeem-failure.test.d.ts.map +1 -0
- package/dist/commands/connect-redeem-failure.test.js +134 -0
- package/dist/commands/connect-redeem-failure.test.js.map +1 -0
- package/dist/commands/connect-screens.d.ts +16 -9
- package/dist/commands/connect-screens.d.ts.map +1 -1
- package/dist/commands/connect-screens.js +27 -36
- package/dist/commands/connect-screens.js.map +1 -1
- package/dist/commands/connect-screens.test.d.ts +2 -0
- package/dist/commands/connect-screens.test.d.ts.map +1 -0
- package/dist/commands/connect-screens.test.js +18 -0
- package/dist/commands/connect-screens.test.js.map +1 -0
- package/dist/commands/connect-seal.test.d.ts +2 -0
- package/dist/commands/connect-seal.test.d.ts.map +1 -0
- package/dist/commands/connect-seal.test.js +55 -0
- package/dist/commands/connect-seal.test.js.map +1 -0
- package/dist/commands/connect.d.ts +14 -11
- package/dist/commands/connect.d.ts.map +1 -1
- package/dist/commands/connect.js +236 -69
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/connect.test.js +226 -27
- package/dist/commands/connect.test.js.map +1 -1
- package/dist/commands/constellation.d.ts.map +1 -1
- package/dist/commands/constellation.js.map +1 -1
- package/dist/commands/context.d.ts.map +1 -1
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/cross-cut.d.ts.map +1 -1
- package/dist/commands/cross-cut.js.map +1 -1
- package/dist/commands/direction.d.ts +10 -0
- package/dist/commands/direction.d.ts.map +1 -0
- package/dist/commands/direction.js +79 -0
- package/dist/commands/direction.js.map +1 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +105 -35
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/doctor.test.js +202 -6
- package/dist/commands/doctor.test.js.map +1 -1
- package/dist/commands/entryAccept.d.ts +26 -0
- package/dist/commands/entryAccept.d.ts.map +1 -0
- package/dist/commands/entryAccept.js +309 -0
- package/dist/commands/entryAccept.js.map +1 -0
- package/dist/commands/entryDiscardResolve.d.ts +9 -0
- package/dist/commands/entryDiscardResolve.d.ts.map +1 -0
- package/dist/commands/entryDiscardResolve.js +27 -0
- package/dist/commands/entryDiscardResolve.js.map +1 -0
- package/dist/commands/entryOwn.d.ts +5 -0
- package/dist/commands/entryOwn.d.ts.map +1 -0
- package/dist/commands/entryOwn.js +17 -0
- package/dist/commands/entryOwn.js.map +1 -0
- package/dist/commands/entryPreflight.d.ts +8 -0
- package/dist/commands/entryPreflight.d.ts.map +1 -0
- package/dist/commands/entryPreflight.js +48 -0
- package/dist/commands/entryPreflight.js.map +1 -0
- package/dist/commands/entryTick.d.ts +8 -0
- package/dist/commands/entryTick.d.ts.map +1 -0
- package/dist/commands/entryTick.js +43 -0
- package/dist/commands/entryTick.js.map +1 -0
- package/dist/commands/feedback.d.ts +39 -0
- package/dist/commands/feedback.d.ts.map +1 -0
- package/dist/commands/feedback.js +176 -0
- package/dist/commands/feedback.js.map +1 -0
- package/dist/commands/feedback.test.d.ts +2 -0
- package/dist/commands/feedback.test.d.ts.map +1 -0
- package/dist/commands/feedback.test.js +117 -0
- package/dist/commands/feedback.test.js.map +1 -0
- package/dist/commands/fields.d.ts.map +1 -1
- package/dist/commands/fields.js +1 -1
- package/dist/commands/fields.js.map +1 -1
- package/dist/commands/files.d.ts +26 -0
- package/dist/commands/files.d.ts.map +1 -0
- package/dist/commands/files.js +160 -0
- package/dist/commands/files.js.map +1 -0
- package/dist/commands/files.test.d.ts +2 -0
- package/dist/commands/files.test.d.ts.map +1 -0
- package/dist/commands/files.test.js +278 -0
- package/dist/commands/files.test.js.map +1 -0
- package/dist/commands/handshakeCursorSkillCleanup.d.ts +36 -0
- package/dist/commands/handshakeCursorSkillCleanup.d.ts.map +1 -0
- package/dist/commands/handshakeCursorSkillCleanup.js +110 -0
- package/dist/commands/handshakeCursorSkillCleanup.js.map +1 -0
- package/dist/commands/handshakeDriftClassification.d.ts +33 -0
- package/dist/commands/handshakeDriftClassification.d.ts.map +1 -0
- package/dist/commands/handshakeDriftClassification.js +62 -0
- package/dist/commands/handshakeDriftClassification.js.map +1 -0
- package/dist/commands/history.d.ts +32 -0
- package/dist/commands/history.d.ts.map +1 -0
- package/dist/commands/history.js +55 -0
- package/dist/commands/history.js.map +1 -0
- package/dist/commands/history.test.d.ts +2 -0
- package/dist/commands/history.test.d.ts.map +1 -0
- package/dist/commands/history.test.js +121 -0
- package/dist/commands/history.test.js.map +1 -0
- package/dist/commands/init.d.ts +15 -2
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +112 -14
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +15 -11
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/organisation.d.ts +12 -0
- package/dist/commands/organisation.d.ts.map +1 -0
- package/dist/commands/organisation.js +146 -0
- package/dist/commands/organisation.js.map +1 -0
- package/dist/commands/organisation.test.d.ts +2 -0
- package/dist/commands/organisation.test.d.ts.map +1 -0
- package/dist/commands/organisation.test.js +116 -0
- package/dist/commands/organisation.test.js.map +1 -0
- package/dist/commands/organisationHierarchy.d.ts +15 -0
- package/dist/commands/organisationHierarchy.d.ts.map +1 -0
- package/dist/commands/organisationHierarchy.js +114 -0
- package/dist/commands/organisationHierarchy.js.map +1 -0
- package/dist/commands/organisationHierarchy.test.d.ts +2 -0
- package/dist/commands/organisationHierarchy.test.d.ts.map +1 -0
- package/dist/commands/organisationHierarchy.test.js +144 -0
- package/dist/commands/organisationHierarchy.test.js.map +1 -0
- package/dist/commands/organisationWrite.d.ts +20 -0
- package/dist/commands/organisationWrite.d.ts.map +1 -0
- package/dist/commands/organisationWrite.js +41 -0
- package/dist/commands/organisationWrite.js.map +1 -0
- package/dist/commands/orient.d.ts +45 -96
- package/dist/commands/orient.d.ts.map +1 -1
- package/dist/commands/orient.js +139 -36
- package/dist/commands/orient.js.map +1 -1
- package/dist/commands/outcome.d.ts +90 -0
- package/dist/commands/outcome.d.ts.map +1 -0
- package/dist/commands/outcome.js +201 -0
- package/dist/commands/outcome.js.map +1 -0
- package/dist/commands/outcome.test.d.ts +2 -0
- package/dist/commands/outcome.test.d.ts.map +1 -0
- package/dist/commands/outcome.test.js +320 -0
- package/dist/commands/outcome.test.js.map +1 -0
- package/dist/commands/people.d.ts +6 -0
- package/dist/commands/people.d.ts.map +1 -0
- package/dist/commands/people.js +23 -0
- package/dist/commands/people.js.map +1 -0
- package/dist/commands/people.test.d.ts +2 -0
- package/dist/commands/people.test.d.ts.map +1 -0
- package/dist/commands/people.test.js +61 -0
- package/dist/commands/people.test.js.map +1 -0
- package/dist/commands/profile.d.ts +23 -2
- package/dist/commands/profile.d.ts.map +1 -1
- package/dist/commands/profile.js +192 -35
- package/dist/commands/profile.js.map +1 -1
- package/dist/commands/quality.d.ts +28 -0
- package/dist/commands/quality.d.ts.map +1 -0
- package/dist/commands/quality.js +74 -0
- package/dist/commands/quality.js.map +1 -0
- package/dist/commands/questions.d.ts +23 -0
- package/dist/commands/questions.d.ts.map +1 -0
- package/dist/commands/questions.js +238 -0
- package/dist/commands/questions.js.map +1 -0
- package/dist/commands/questions.test.d.ts +2 -0
- package/dist/commands/questions.test.d.ts.map +1 -0
- package/dist/commands/questions.test.js +159 -0
- package/dist/commands/questions.test.js.map +1 -0
- package/dist/commands/relate.d.ts +1 -0
- package/dist/commands/relate.d.ts.map +1 -1
- package/dist/commands/relate.js +85 -13
- package/dist/commands/relate.js.map +1 -1
- package/dist/commands/restore.d.ts +2 -0
- package/dist/commands/restore.d.ts.map +1 -0
- package/dist/commands/restore.js +83 -0
- package/dist/commands/restore.js.map +1 -0
- package/dist/commands/rework.d.ts +24 -0
- package/dist/commands/rework.d.ts.map +1 -0
- package/dist/commands/rework.js +97 -0
- package/dist/commands/rework.js.map +1 -0
- package/dist/commands/role.d.ts +88 -0
- package/dist/commands/role.d.ts.map +1 -0
- package/dist/commands/role.js +235 -0
- package/dist/commands/role.js.map +1 -0
- package/dist/commands/role.test.d.ts +2 -0
- package/dist/commands/role.test.d.ts.map +1 -0
- package/dist/commands/role.test.js +348 -0
- package/dist/commands/role.test.js.map +1 -0
- package/dist/commands/scoreboard.d.ts +26 -0
- package/dist/commands/scoreboard.d.ts.map +1 -0
- package/dist/commands/scoreboard.js +40 -0
- package/dist/commands/scoreboard.js.map +1 -0
- package/dist/commands/search.d.ts +2 -1
- package/dist/commands/search.d.ts.map +1 -1
- package/dist/commands/search.js +5 -4
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/session.d.ts +36 -5
- package/dist/commands/session.d.ts.map +1 -1
- package/dist/commands/session.js +301 -155
- package/dist/commands/session.js.map +1 -1
- package/dist/commands/status.d.ts +7 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +101 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/status.test.d.ts +2 -0
- package/dist/commands/status.test.d.ts.map +1 -0
- package/dist/commands/status.test.js +75 -0
- package/dist/commands/status.test.js.map +1 -0
- package/dist/commands/stillTrue.d.ts +14 -0
- package/dist/commands/stillTrue.d.ts.map +1 -0
- package/dist/commands/stillTrue.js +48 -0
- package/dist/commands/stillTrue.js.map +1 -0
- package/dist/commands/tensionsList.d.ts +5 -0
- package/dist/commands/tensionsList.d.ts.map +1 -0
- package/dist/commands/tensionsList.js +27 -0
- package/dist/commands/tensionsList.js.map +1 -0
- package/dist/commands/update.d.ts +21 -0
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +175 -42
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/usage.d.ts.map +1 -1
- package/dist/commands/usage.js +0 -18
- package/dist/commands/usage.js.map +1 -1
- package/dist/commands/verify.d.ts.map +1 -1
- package/dist/commands/verify.js +5 -0
- package/dist/commands/verify.js.map +1 -1
- package/dist/commands/welcome.d.ts.map +1 -1
- package/dist/commands/welcome.js +5 -2
- package/dist/commands/welcome.js.map +1 -1
- package/dist/commands/whoami.d.ts +10 -2
- package/dist/commands/whoami.d.ts.map +1 -1
- package/dist/commands/whoami.js +76 -20
- package/dist/commands/whoami.js.map +1 -1
- package/dist/commands/whoami.test.js +86 -6
- package/dist/commands/whoami.test.js.map +1 -1
- package/dist/commands/workspace.d.ts +7 -74
- package/dist/commands/workspace.d.ts.map +1 -1
- package/dist/commands/workspace.js +9 -70
- package/dist/commands/workspace.js.map +1 -1
- package/dist/formatters/__tests__/orient-plannedWorkCut.test.d.ts +2 -0
- package/dist/formatters/__tests__/orient-plannedWorkCut.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/orient-plannedWorkCut.test.js +49 -0
- package/dist/formatters/__tests__/orient-plannedWorkCut.test.js.map +1 -0
- package/dist/formatters/__tests__/orient-provenance.test.d.ts +2 -3
- package/dist/formatters/__tests__/orient-provenance.test.d.ts.map +1 -1
- package/dist/formatters/__tests__/orient-provenance.test.js +41 -176
- package/dist/formatters/__tests__/orient-provenance.test.js.map +1 -1
- package/dist/formatters/__tests__/orient-ruleLists.test.d.ts +2 -0
- package/dist/formatters/__tests__/orient-ruleLists.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/orient-ruleLists.test.js +93 -0
- package/dist/formatters/__tests__/orient-ruleLists.test.js.map +1 -0
- package/dist/formatters/__tests__/session-list-show.test.d.ts +2 -0
- package/dist/formatters/__tests__/session-list-show.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/session-list-show.test.js +195 -0
- package/dist/formatters/__tests__/session-list-show.test.js.map +1 -0
- package/dist/formatters/__tests__/session.test.js +172 -8
- package/dist/formatters/__tests__/session.test.js.map +1 -1
- package/dist/formatters/__tests__/tensionsList.test.d.ts +2 -0
- package/dist/formatters/__tests__/tensionsList.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/tensionsList.test.js +30 -0
- package/dist/formatters/__tests__/tensionsList.test.js.map +1 -0
- package/dist/formatters/brief.d.ts +6 -15
- package/dist/formatters/brief.d.ts.map +1 -1
- package/dist/formatters/brief.js +16 -14
- package/dist/formatters/brief.js.map +1 -1
- package/dist/formatters/brief.test.d.ts +2 -0
- package/dist/formatters/brief.test.d.ts.map +1 -0
- package/dist/formatters/brief.test.js +21 -0
- package/dist/formatters/brief.test.js.map +1 -0
- package/dist/formatters/capture.d.ts +24 -13
- package/dist/formatters/capture.d.ts.map +1 -1
- package/dist/formatters/capture.js +36 -14
- package/dist/formatters/capture.js.map +1 -1
- package/dist/formatters/coaching.d.ts +59 -0
- package/dist/formatters/coaching.d.ts.map +1 -0
- package/dist/formatters/coaching.js +51 -0
- package/dist/formatters/coaching.js.map +1 -0
- package/dist/formatters/collections.d.ts +0 -1
- package/dist/formatters/collections.d.ts.map +1 -1
- package/dist/formatters/collections.js +14 -5
- package/dist/formatters/collections.js.map +1 -1
- package/dist/formatters/conflicts.d.ts +71 -0
- package/dist/formatters/conflicts.d.ts.map +1 -0
- package/dist/formatters/conflicts.js +105 -0
- package/dist/formatters/conflicts.js.map +1 -0
- package/dist/formatters/conflicts.test.d.ts +2 -0
- package/dist/formatters/conflicts.test.d.ts.map +1 -0
- package/dist/formatters/conflicts.test.js +166 -0
- package/dist/formatters/conflicts.test.js.map +1 -0
- package/dist/formatters/context.d.ts +1 -1
- package/dist/formatters/context.d.ts.map +1 -1
- package/dist/formatters/context.js.map +1 -1
- package/dist/formatters/direction.d.ts +48 -0
- package/dist/formatters/direction.d.ts.map +1 -0
- package/dist/formatters/direction.js +75 -0
- package/dist/formatters/direction.js.map +1 -0
- package/dist/formatters/direction.test.d.ts +2 -0
- package/dist/formatters/direction.test.d.ts.map +1 -0
- package/dist/formatters/direction.test.js +70 -0
- package/dist/formatters/direction.test.js.map +1 -0
- package/dist/formatters/entry.d.ts +56 -3
- package/dist/formatters/entry.d.ts.map +1 -1
- package/dist/formatters/entry.js +69 -8
- package/dist/formatters/entry.js.map +1 -1
- package/dist/formatters/entryAccept.d.ts +83 -0
- package/dist/formatters/entryAccept.d.ts.map +1 -0
- package/dist/formatters/entryAccept.js +79 -0
- package/dist/formatters/entryAccept.js.map +1 -0
- package/dist/formatters/feedback.d.ts +61 -0
- package/dist/formatters/feedback.d.ts.map +1 -0
- package/dist/formatters/feedback.js +95 -0
- package/dist/formatters/feedback.js.map +1 -0
- package/dist/formatters/feedback.test.d.ts +2 -0
- package/dist/formatters/feedback.test.d.ts.map +1 -0
- package/dist/formatters/feedback.test.js +142 -0
- package/dist/formatters/feedback.test.js.map +1 -0
- package/dist/formatters/fields.d.ts +7 -1
- package/dist/formatters/fields.d.ts.map +1 -1
- package/dist/formatters/fields.js +9 -3
- package/dist/formatters/fields.js.map +1 -1
- package/dist/formatters/fields.test.d.ts +2 -0
- package/dist/formatters/fields.test.d.ts.map +1 -0
- package/dist/formatters/fields.test.js +42 -0
- package/dist/formatters/fields.test.js.map +1 -0
- package/dist/formatters/handshake.d.ts +24 -6
- package/dist/formatters/handshake.d.ts.map +1 -1
- package/dist/formatters/handshake.js +34 -15
- package/dist/formatters/handshake.js.map +1 -1
- package/dist/formatters/orient.coherencyCheckTag.test.d.ts +2 -0
- package/dist/formatters/orient.coherencyCheckTag.test.d.ts.map +1 -0
- package/dist/formatters/orient.coherencyCheckTag.test.js +22 -0
- package/dist/formatters/orient.coherencyCheckTag.test.js.map +1 -0
- package/dist/formatters/orient.d.ts +92 -145
- package/dist/formatters/orient.d.ts.map +1 -1
- package/dist/formatters/orient.js +143 -183
- package/dist/formatters/orient.js.map +1 -1
- package/dist/formatters/orient.rcrtMiss.test.d.ts +2 -0
- package/dist/formatters/orient.rcrtMiss.test.d.ts.map +1 -0
- package/dist/formatters/orient.rcrtMiss.test.js +77 -0
- package/dist/formatters/orient.rcrtMiss.test.js.map +1 -0
- package/dist/formatters/orient.rituals.test.d.ts +2 -0
- package/dist/formatters/orient.rituals.test.d.ts.map +1 -0
- package/dist/formatters/orient.rituals.test.js +72 -0
- package/dist/formatters/orient.rituals.test.js.map +1 -0
- package/dist/formatters/orientDegradation.d.ts +38 -0
- package/dist/formatters/orientDegradation.d.ts.map +1 -0
- package/dist/formatters/orientDegradation.js +50 -0
- package/dist/formatters/orientDegradation.js.map +1 -0
- package/dist/formatters/orientDegradation.test.d.ts +2 -0
- package/dist/formatters/orientDegradation.test.d.ts.map +1 -0
- package/dist/formatters/orientDegradation.test.js +28 -0
- package/dist/formatters/orientDegradation.test.js.map +1 -0
- package/dist/formatters/orientDirection.d.ts +25 -0
- package/dist/formatters/orientDirection.d.ts.map +1 -0
- package/dist/formatters/orientDirection.js +7 -0
- package/dist/formatters/orientDirection.js.map +1 -0
- package/dist/formatters/orientDirection.test.d.ts +2 -0
- package/dist/formatters/orientDirection.test.d.ts.map +1 -0
- package/dist/formatters/orientDirection.test.js +48 -0
- package/dist/formatters/orientDirection.test.js.map +1 -0
- package/dist/formatters/orientRetrievalMiss.d.ts +22 -0
- package/dist/formatters/orientRetrievalMiss.d.ts.map +1 -0
- package/dist/formatters/orientRetrievalMiss.js +17 -0
- package/dist/formatters/orientRetrievalMiss.js.map +1 -0
- package/dist/formatters/plannedWorkCounts.d.ts +19 -0
- package/dist/formatters/plannedWorkCounts.d.ts.map +1 -0
- package/dist/formatters/plannedWorkCounts.js +17 -0
- package/dist/formatters/plannedWorkCounts.js.map +1 -0
- package/dist/formatters/qualityChecks.d.ts +14 -0
- package/dist/formatters/qualityChecks.d.ts.map +1 -0
- package/dist/formatters/qualityChecks.js +97 -0
- package/dist/formatters/qualityChecks.js.map +1 -0
- package/dist/formatters/questions.d.ts +76 -0
- package/dist/formatters/questions.d.ts.map +1 -0
- package/dist/formatters/questions.js +122 -0
- package/dist/formatters/questions.js.map +1 -0
- package/dist/formatters/questions.test.d.ts +2 -0
- package/dist/formatters/questions.test.d.ts.map +1 -0
- package/dist/formatters/questions.test.js +156 -0
- package/dist/formatters/questions.test.js.map +1 -0
- package/dist/formatters/relate.d.ts +13 -2
- package/dist/formatters/relate.d.ts.map +1 -1
- package/dist/formatters/relate.js +15 -5
- package/dist/formatters/relate.js.map +1 -1
- package/dist/formatters/relate.test.d.ts +2 -0
- package/dist/formatters/relate.test.d.ts.map +1 -0
- package/dist/formatters/relate.test.js +91 -0
- package/dist/formatters/relate.test.js.map +1 -0
- package/dist/formatters/scoreboard.d.ts +11 -0
- package/dist/formatters/scoreboard.d.ts.map +1 -0
- package/dist/formatters/scoreboard.js +156 -0
- package/dist/formatters/scoreboard.js.map +1 -0
- package/dist/formatters/scoreboard.test.d.ts +2 -0
- package/dist/formatters/scoreboard.test.d.ts.map +1 -0
- package/dist/formatters/scoreboard.test.js +284 -0
- package/dist/formatters/scoreboard.test.js.map +1 -0
- package/dist/formatters/search.d.ts +24 -0
- package/dist/formatters/search.d.ts.map +1 -1
- package/dist/formatters/search.js +26 -11
- package/dist/formatters/search.js.map +1 -1
- package/dist/formatters/search.test.d.ts +2 -0
- package/dist/formatters/search.test.d.ts.map +1 -0
- package/dist/formatters/search.test.js +86 -0
- package/dist/formatters/search.test.js.map +1 -0
- package/dist/formatters/session-feedback.test.d.ts +2 -0
- package/dist/formatters/session-feedback.test.d.ts.map +1 -0
- package/dist/formatters/session-feedback.test.js +124 -0
- package/dist/formatters/session-feedback.test.js.map +1 -0
- package/dist/formatters/session.d.ts +121 -5
- package/dist/formatters/session.d.ts.map +1 -1
- package/dist/formatters/session.js +316 -31
- package/dist/formatters/session.js.map +1 -1
- package/dist/formatters/spineCheck.d.ts +14 -0
- package/dist/formatters/spineCheck.d.ts.map +1 -0
- package/dist/formatters/spineCheck.js +113 -0
- package/dist/formatters/spineCheck.js.map +1 -0
- package/dist/formatters/spineCheck.test.d.ts +2 -0
- package/dist/formatters/spineCheck.test.d.ts.map +1 -0
- package/dist/formatters/spineCheck.test.js +76 -0
- package/dist/formatters/spineCheck.test.js.map +1 -0
- package/dist/formatters/tensionsList.d.ts +17 -0
- package/dist/formatters/tensionsList.d.ts.map +1 -0
- package/dist/formatters/tensionsList.js +33 -0
- package/dist/formatters/tensionsList.js.map +1 -0
- package/dist/formatters/update.d.ts +26 -0
- package/dist/formatters/update.d.ts.map +1 -1
- package/dist/formatters/update.js +39 -7
- package/dist/formatters/update.js.map +1 -1
- package/dist/formatters/update.test.d.ts +2 -0
- package/dist/formatters/update.test.d.ts.map +1 -0
- package/dist/formatters/update.test.js +71 -0
- package/dist/formatters/update.test.js.map +1 -0
- package/dist/formatters/verify.d.ts +12 -4
- package/dist/formatters/verify.d.ts.map +1 -1
- package/dist/formatters/verify.js +20 -2
- package/dist/formatters/verify.js.map +1 -1
- package/dist/generated/healthGapKinds.generated.d.ts +12 -0
- package/dist/generated/healthGapKinds.generated.d.ts.map +1 -0
- package/dist/generated/healthGapKinds.generated.js +16 -0
- package/dist/generated/healthGapKinds.generated.js.map +1 -0
- package/dist/generated/organisationalAuthorityRefusalCodes.generated.d.ts +12 -0
- package/dist/generated/organisationalAuthorityRefusalCodes.generated.d.ts.map +1 -0
- package/dist/generated/organisationalAuthorityRefusalCodes.generated.js +11 -0
- package/dist/generated/organisationalAuthorityRefusalCodes.generated.js.map +1 -0
- package/dist/generated/routeLatencyBudget.generated.d.ts +54 -0
- package/dist/generated/routeLatencyBudget.generated.d.ts.map +1 -0
- package/dist/generated/routeLatencyBudget.generated.js +264 -0
- package/dist/generated/routeLatencyBudget.generated.js.map +1 -0
- package/dist/generated/sourceSurfaces.generated.d.ts +12 -0
- package/dist/generated/sourceSurfaces.generated.d.ts.map +1 -0
- package/dist/generated/sourceSurfaces.generated.js +11 -0
- package/dist/generated/sourceSurfaces.generated.js.map +1 -0
- package/dist/generators/adapters.d.ts +39 -6
- package/dist/generators/adapters.d.ts.map +1 -1
- package/dist/generators/adapters.js +88 -89
- package/dist/generators/adapters.js.map +1 -1
- package/dist/generators/adapters.test.js +14 -6
- package/dist/generators/adapters.test.js.map +1 -1
- package/dist/generators/briefing-projections.test.d.ts +2 -0
- package/dist/generators/briefing-projections.test.d.ts.map +1 -0
- package/dist/generators/briefing-projections.test.js +98 -0
- package/dist/generators/briefing-projections.test.js.map +1 -0
- package/dist/generators/context-md.d.ts +7 -2
- package/dist/generators/context-md.d.ts.map +1 -1
- package/dist/generators/context-md.js +14 -53
- package/dist/generators/context-md.js.map +1 -1
- package/dist/generators/everyone-rules-md.d.ts +9 -0
- package/dist/generators/everyone-rules-md.d.ts.map +1 -0
- package/dist/generators/everyone-rules-md.js +21 -0
- package/dist/generators/everyone-rules-md.js.map +1 -0
- package/dist/generators/noProjectionAssets.d.ts +15 -0
- package/dist/generators/noProjectionAssets.d.ts.map +1 -0
- package/dist/generators/noProjectionAssets.js +6 -0
- package/dist/generators/noProjectionAssets.js.map +1 -0
- package/dist/generators/portable-knowledge.d.ts +9 -26
- package/dist/generators/portable-knowledge.d.ts.map +1 -1
- package/dist/generators/portable-knowledge.js +11 -125
- package/dist/generators/portable-knowledge.js.map +1 -1
- package/dist/generators/portable-knowledge.test.js +82 -267
- package/dist/generators/portable-knowledge.test.js.map +1 -1
- package/dist/generators/region-projections.d.ts +0 -1
- package/dist/generators/region-projections.d.ts.map +1 -1
- package/dist/generators/region-projections.js +7 -5
- package/dist/generators/region-projections.js.map +1 -1
- package/dist/generators/region-projections.test.js +10 -15
- package/dist/generators/region-projections.test.js.map +1 -1
- package/dist/generators/region.test.js +9 -10
- package/dist/generators/region.test.js.map +1 -1
- package/dist/generators/retired-projections.d.ts +12 -0
- package/dist/generators/retired-projections.d.ts.map +1 -0
- package/dist/generators/retired-projections.js +75 -0
- package/dist/generators/retired-projections.js.map +1 -0
- package/dist/generators/retired-projections.test.d.ts +2 -0
- package/dist/generators/retired-projections.test.d.ts.map +1 -0
- package/dist/generators/retired-projections.test.js +64 -0
- package/dist/generators/retired-projections.test.js.map +1 -0
- package/dist/handleCliError.d.ts +30 -0
- package/dist/handleCliError.d.ts.map +1 -0
- package/dist/handleCliError.js +91 -0
- package/dist/handleCliError.js.map +1 -0
- package/dist/index.d.ts +0 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +166 -608
- package/dist/index.js.map +1 -1
- package/dist/lib/__tests__/parseFields.test.d.ts +2 -0
- package/dist/lib/__tests__/parseFields.test.d.ts.map +1 -0
- package/dist/lib/__tests__/parseFields.test.js +40 -0
- package/dist/lib/__tests__/parseFields.test.js.map +1 -0
- package/dist/lib/adminConfig.d.ts +48 -0
- package/dist/lib/adminConfig.d.ts.map +1 -0
- package/dist/lib/adminConfig.js +130 -0
- package/dist/lib/adminConfig.js.map +1 -0
- package/dist/lib/canonicalRefs.d.ts +27 -8
- package/dist/lib/canonicalRefs.d.ts.map +1 -1
- package/dist/lib/canonicalRefs.js +25 -6
- package/dist/lib/canonicalRefs.js.map +1 -1
- package/dist/lib/captureLink.d.ts +7 -0
- package/dist/lib/captureLink.d.ts.map +1 -0
- package/dist/lib/captureLink.js +29 -0
- package/dist/lib/captureLink.js.map +1 -0
- package/dist/lib/checklist.d.ts +32 -0
- package/dist/lib/checklist.d.ts.map +1 -0
- package/dist/lib/checklist.js +79 -0
- package/dist/lib/checklist.js.map +1 -0
- package/dist/lib/client.d.ts +38 -24
- package/dist/lib/client.d.ts.map +1 -1
- package/dist/lib/client.js +209 -102
- package/dist/lib/client.js.map +1 -1
- package/dist/lib/commanderOptions.d.ts +8 -0
- package/dist/lib/commanderOptions.d.ts.map +1 -0
- package/dist/lib/commanderOptions.js +10 -0
- package/dist/lib/commanderOptions.js.map +1 -0
- package/dist/lib/compose-wrapup-view.d.ts +68 -0
- package/dist/lib/compose-wrapup-view.d.ts.map +1 -0
- package/dist/lib/compose-wrapup-view.js +40 -0
- package/dist/lib/compose-wrapup-view.js.map +1 -0
- package/dist/lib/config.d.ts +43 -111
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +103 -309
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/configResult.d.ts +102 -0
- package/dist/lib/configResult.d.ts.map +1 -0
- package/dist/lib/configResult.js +179 -0
- package/dist/lib/configResult.js.map +1 -0
- package/dist/lib/connectProfileName.d.ts +36 -0
- package/dist/lib/connectProfileName.d.ts.map +1 -0
- package/dist/lib/connectProfileName.js +72 -0
- package/dist/lib/connectProfileName.js.map +1 -0
- package/dist/lib/connectProfileName.test.d.ts +2 -0
- package/dist/lib/connectProfileName.test.d.ts.map +1 -0
- package/dist/lib/connectProfileName.test.js +100 -0
- package/dist/lib/connectProfileName.test.js.map +1 -0
- package/dist/lib/constants.d.ts +3 -0
- package/dist/lib/constants.d.ts.map +1 -1
- package/dist/lib/constants.js +3 -0
- package/dist/lib/constants.js.map +1 -1
- package/dist/lib/conversation.d.ts +36 -0
- package/dist/lib/conversation.d.ts.map +1 -0
- package/dist/lib/conversation.js +66 -0
- package/dist/lib/conversation.js.map +1 -0
- package/dist/lib/createEntryResult.d.ts +34 -0
- package/dist/lib/createEntryResult.d.ts.map +1 -0
- package/dist/lib/createEntryResult.js +12 -0
- package/dist/lib/createEntryResult.js.map +1 -0
- package/dist/lib/deployment.js +2 -2
- package/dist/lib/deployment.js.map +1 -1
- package/dist/lib/deployment.test.js +20 -1
- package/dist/lib/deployment.test.js.map +1 -1
- package/dist/lib/envKeySnapshot.d.ts +10 -0
- package/dist/lib/envKeySnapshot.d.ts.map +1 -0
- package/dist/lib/envKeySnapshot.js +30 -0
- package/dist/lib/envKeySnapshot.js.map +1 -0
- package/dist/lib/errors.d.ts +90 -0
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +83 -0
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/frontmatter.d.ts +55 -0
- package/dist/lib/frontmatter.d.ts.map +1 -0
- package/dist/lib/frontmatter.js +92 -0
- package/dist/lib/frontmatter.js.map +1 -0
- package/dist/lib/frontmatter.test.d.ts +15 -0
- package/dist/lib/frontmatter.test.d.ts.map +1 -0
- package/dist/lib/frontmatter.test.js +98 -0
- package/dist/lib/frontmatter.test.js.map +1 -0
- package/dist/lib/gatewayTimeout.d.ts +88 -0
- package/dist/lib/gatewayTimeout.d.ts.map +1 -0
- package/dist/lib/gatewayTimeout.js +118 -0
- package/dist/lib/gatewayTimeout.js.map +1 -0
- package/dist/lib/gitEnvLeakKeysParity.test.d.ts +2 -0
- package/dist/lib/gitEnvLeakKeysParity.test.d.ts.map +1 -0
- package/dist/lib/gitEnvLeakKeysParity.test.js +73 -0
- package/dist/lib/gitEnvLeakKeysParity.test.js.map +1 -0
- package/dist/lib/glossary.d.ts +3 -15
- package/dist/lib/glossary.d.ts.map +1 -1
- package/dist/lib/glossary.js +6 -47
- package/dist/lib/glossary.js.map +1 -1
- package/dist/lib/hook-intents.d.ts +9 -4
- package/dist/lib/hook-intents.d.ts.map +1 -1
- package/dist/lib/hook-intents.js +10 -11
- package/dist/lib/hook-intents.js.map +1 -1
- package/dist/lib/judgeWait.d.ts +50 -0
- package/dist/lib/judgeWait.d.ts.map +1 -0
- package/dist/lib/judgeWait.js +64 -0
- package/dist/lib/judgeWait.js.map +1 -0
- package/dist/lib/kernelEnvelope.d.ts +42 -0
- package/dist/lib/kernelEnvelope.d.ts.map +1 -0
- package/dist/lib/kernelEnvelope.js +67 -0
- package/dist/lib/kernelEnvelope.js.map +1 -0
- package/dist/lib/localBinding.d.ts +86 -0
- package/dist/lib/localBinding.d.ts.map +1 -0
- package/dist/lib/localBinding.js +173 -0
- package/dist/lib/localBinding.js.map +1 -0
- package/dist/lib/normalizeMaterializedFilename.d.ts +3 -3
- package/dist/lib/normalizeMaterializedFilename.js +3 -3
- package/dist/lib/notice-marker.d.ts.map +1 -1
- package/dist/lib/notice-marker.js +186 -16
- package/dist/lib/notice-marker.js.map +1 -1
- package/dist/lib/outcomeObjectiveLines.d.ts +30 -0
- package/dist/lib/outcomeObjectiveLines.d.ts.map +1 -0
- package/dist/lib/outcomeObjectiveLines.js +29 -0
- package/dist/lib/outcomeObjectiveLines.js.map +1 -0
- package/dist/lib/ownerLine.d.ts +90 -0
- package/dist/lib/ownerLine.d.ts.map +1 -0
- package/dist/lib/ownerLine.js +77 -0
- package/dist/lib/ownerLine.js.map +1 -0
- package/dist/lib/parseFields.d.ts +19 -0
- package/dist/lib/parseFields.d.ts.map +1 -0
- package/dist/lib/parseFields.js +49 -0
- package/dist/lib/parseFields.js.map +1 -0
- package/dist/lib/pinnedRole.d.ts +28 -0
- package/dist/lib/pinnedRole.d.ts.map +1 -0
- package/dist/lib/pinnedRole.js +106 -0
- package/dist/lib/pinnedRole.js.map +1 -0
- package/dist/lib/platformGlossary.d.ts +22 -0
- package/dist/lib/platformGlossary.d.ts.map +1 -0
- package/dist/lib/platformGlossary.js +26 -0
- package/dist/lib/platformGlossary.js.map +1 -0
- package/dist/lib/previewBanner.d.ts +9 -0
- package/dist/lib/previewBanner.d.ts.map +1 -0
- package/dist/lib/previewBanner.js +36 -0
- package/dist/lib/previewBanner.js.map +1 -0
- package/dist/lib/productbrain-files.d.ts +108 -0
- package/dist/lib/productbrain-files.d.ts.map +1 -0
- package/dist/lib/productbrain-files.js +240 -0
- package/dist/lib/productbrain-files.js.map +1 -0
- package/dist/lib/productbrain-files.test.d.ts +2 -0
- package/dist/lib/productbrain-files.test.d.ts.map +1 -0
- package/dist/lib/productbrain-files.test.js +518 -0
- package/dist/lib/productbrain-files.test.js.map +1 -0
- package/dist/lib/profiles.d.ts +52 -4
- package/dist/lib/profiles.d.ts.map +1 -1
- package/dist/lib/profiles.js +72 -21
- package/dist/lib/profiles.js.map +1 -1
- package/dist/lib/projectConfig.d.ts +121 -0
- package/dist/lib/projectConfig.d.ts.map +1 -0
- package/dist/lib/projectConfig.js +226 -0
- package/dist/lib/projectConfig.js.map +1 -0
- package/dist/lib/prompts.d.ts +2 -0
- package/dist/lib/prompts.d.ts.map +1 -1
- package/dist/lib/prompts.js +2 -0
- package/dist/lib/prompts.js.map +1 -1
- package/dist/lib/proseBody.d.ts +14 -0
- package/dist/lib/proseBody.d.ts.map +1 -0
- package/dist/lib/proseBody.js +25 -0
- package/dist/lib/proseBody.js.map +1 -0
- package/dist/lib/rate-limit.d.ts +34 -0
- package/dist/lib/rate-limit.d.ts.map +1 -0
- package/dist/lib/rate-limit.js +89 -0
- package/dist/lib/rate-limit.js.map +1 -0
- package/dist/lib/readinessNotices.d.ts +12 -0
- package/dist/lib/readinessNotices.d.ts.map +1 -0
- package/dist/lib/readinessNotices.js +15 -0
- package/dist/lib/readinessNotices.js.map +1 -0
- package/dist/lib/repo-detect.d.ts +8 -2
- package/dist/lib/repo-detect.d.ts.map +1 -1
- package/dist/lib/repo-detect.js +11 -6
- package/dist/lib/repo-detect.js.map +1 -1
- package/dist/lib/reportedProfile.d.ts +18 -0
- package/dist/lib/reportedProfile.d.ts.map +1 -0
- package/dist/lib/reportedProfile.js +144 -0
- package/dist/lib/reportedProfile.js.map +1 -0
- package/dist/lib/restsOn.d.ts +33 -0
- package/dist/lib/restsOn.d.ts.map +1 -0
- package/dist/lib/restsOn.js +34 -0
- package/dist/lib/restsOn.js.map +1 -0
- package/dist/lib/ruleListRender.d.ts +268 -0
- package/dist/lib/ruleListRender.d.ts.map +1 -0
- package/dist/lib/ruleListRender.js +350 -0
- package/dist/lib/ruleListRender.js.map +1 -0
- package/dist/lib/runner.d.ts +9 -1
- package/dist/lib/runner.d.ts.map +1 -1
- package/dist/lib/runner.js +30 -4
- package/dist/lib/runner.js.map +1 -1
- package/dist/lib/seatSentence.d.ts +62 -0
- package/dist/lib/seatSentence.d.ts.map +1 -0
- package/dist/lib/seatSentence.js +82 -0
- package/dist/lib/seatSentence.js.map +1 -0
- package/dist/lib/session.d.ts +86 -12
- package/dist/lib/session.d.ts.map +1 -1
- package/dist/lib/session.js +243 -24
- package/dist/lib/session.js.map +1 -1
- package/dist/lib/sessionBinding.d.ts +61 -0
- package/dist/lib/sessionBinding.d.ts.map +1 -0
- package/dist/lib/sessionBinding.js +125 -0
- package/dist/lib/sessionBinding.js.map +1 -0
- package/dist/lib/sessionNotices.d.ts +54 -0
- package/dist/lib/sessionNotices.d.ts.map +1 -0
- package/dist/lib/sessionNotices.js +132 -0
- package/dist/lib/sessionNotices.js.map +1 -0
- package/dist/lib/sessionNotices.test.d.ts +2 -0
- package/dist/lib/sessionNotices.test.d.ts.map +1 -0
- package/dist/lib/sessionNotices.test.js +53 -0
- package/dist/lib/sessionNotices.test.js.map +1 -0
- package/dist/lib/spineVerdictRead.d.ts +70 -0
- package/dist/lib/spineVerdictRead.d.ts.map +1 -0
- package/dist/lib/spineVerdictRead.js +73 -0
- package/dist/lib/spineVerdictRead.js.map +1 -0
- package/dist/lib/spinner.js +2 -2
- package/dist/lib/spinner.js.map +1 -1
- package/dist/lib/startup-resolution-signals.d.ts +34 -0
- package/dist/lib/startup-resolution-signals.d.ts.map +1 -0
- package/dist/lib/startup-resolution-signals.js +116 -0
- package/dist/lib/startup-resolution-signals.js.map +1 -0
- package/dist/lib/startup-resolution-signals.test.d.ts +2 -0
- package/dist/lib/startup-resolution-signals.test.d.ts.map +1 -0
- package/dist/lib/startup-resolution-signals.test.js +113 -0
- package/dist/lib/startup-resolution-signals.test.js.map +1 -0
- package/dist/lib/startup-signals.d.ts +12 -0
- package/dist/lib/startup-signals.d.ts.map +1 -0
- package/dist/lib/startup-signals.js +179 -0
- package/dist/lib/startup-signals.js.map +1 -0
- package/dist/lib/startup-signals.test.d.ts +2 -0
- package/dist/lib/startup-signals.test.d.ts.map +1 -0
- package/dist/lib/startup-signals.test.js +165 -0
- package/dist/lib/startup-signals.test.js.map +1 -0
- package/dist/lib/state.d.ts +11 -2
- package/dist/lib/state.d.ts.map +1 -1
- package/dist/lib/state.js +11 -4
- package/dist/lib/state.js.map +1 -1
- package/dist/lib/statusCategories.d.ts +162 -0
- package/dist/lib/statusCategories.d.ts.map +1 -0
- package/dist/lib/statusCategories.js +286 -0
- package/dist/lib/statusCategories.js.map +1 -0
- package/dist/lib/strip.d.ts +17 -0
- package/dist/lib/strip.d.ts.map +1 -1
- package/dist/lib/strip.js +48 -1
- package/dist/lib/strip.js.map +1 -1
- package/dist/lib/style.d.ts +8 -2
- package/dist/lib/style.d.ts.map +1 -1
- package/dist/lib/style.js +24 -17
- package/dist/lib/style.js.map +1 -1
- package/dist/lib/update-check.d.ts +3 -2
- package/dist/lib/update-check.d.ts.map +1 -1
- package/dist/lib/update-check.js +10 -4
- package/dist/lib/update-check.js.map +1 -1
- package/dist/lib/workspaceNotice.d.ts +202 -0
- package/dist/lib/workspaceNotice.d.ts.map +1 -0
- package/dist/lib/workspaceNotice.js +345 -0
- package/dist/lib/workspaceNotice.js.map +1 -0
- package/dist/lib/writePerimeter.d.ts +72 -0
- package/dist/lib/writePerimeter.d.ts.map +1 -0
- package/dist/lib/writePerimeter.js +128 -0
- package/dist/lib/writePerimeter.js.map +1 -0
- package/dist/registerEntryCommands.d.ts +18 -0
- package/dist/registerEntryCommands.d.ts.map +1 -0
- package/dist/registerEntryCommands.js +122 -0
- package/dist/registerEntryCommands.js.map +1 -0
- package/dist/registerHistoryCommand.d.ts +8 -0
- package/dist/registerHistoryCommand.d.ts.map +1 -0
- package/dist/registerHistoryCommand.js +14 -0
- package/dist/registerHistoryCommand.js.map +1 -0
- package/dist/registerOutcomeCommands.d.ts +27 -0
- package/dist/registerOutcomeCommands.d.ts.map +1 -0
- package/dist/registerOutcomeCommands.js +27 -0
- package/dist/registerOutcomeCommands.js.map +1 -0
- package/dist/registerRoleCommands.d.ts +11 -0
- package/dist/registerRoleCommands.d.ts.map +1 -0
- package/dist/registerRoleCommands.js +42 -0
- package/dist/registerRoleCommands.js.map +1 -0
- package/dist/registerTensionsCommands.d.ts +10 -0
- package/dist/registerTensionsCommands.d.ts.map +1 -0
- package/dist/registerTensionsCommands.js +15 -0
- package/dist/registerTensionsCommands.js.map +1 -0
- package/dist/scoreboard/diagnose.d.ts +185 -0
- package/dist/scoreboard/diagnose.d.ts.map +1 -0
- package/dist/scoreboard/diagnose.js +282 -0
- package/dist/scoreboard/diagnose.js.map +1 -0
- package/dist/scoreboard/diagnose.test.d.ts +15 -0
- package/dist/scoreboard/diagnose.test.d.ts.map +1 -0
- package/dist/scoreboard/diagnose.test.js +288 -0
- package/dist/scoreboard/diagnose.test.js.map +1 -0
- package/dist/scoreboard/floors.d.ts +47 -0
- package/dist/scoreboard/floors.d.ts.map +1 -0
- package/dist/scoreboard/floors.js +33 -0
- package/dist/scoreboard/floors.js.map +1 -0
- package/dist/scoreboard/localDrift.d.ts +23 -0
- package/dist/scoreboard/localDrift.d.ts.map +1 -0
- package/dist/scoreboard/localDrift.js +111 -0
- package/dist/scoreboard/localDrift.js.map +1 -0
- package/dist/scoreboard/localDrift.test.d.ts +9 -0
- package/dist/scoreboard/localDrift.test.d.ts.map +1 -0
- package/dist/scoreboard/localDrift.test.js +82 -0
- package/dist/scoreboard/localDrift.test.js.map +1 -0
- package/dist/surfaces/__tests__/adapter.test.js +2 -6
- package/dist/surfaces/__tests__/adapter.test.js.map +1 -1
- package/dist/surfaces/__tests__/claude-skill-pointer-drift.test.d.ts +2 -0
- package/dist/surfaces/__tests__/claude-skill-pointer-drift.test.d.ts.map +1 -0
- package/dist/surfaces/__tests__/claude-skill-pointer-drift.test.js +180 -0
- package/dist/surfaces/__tests__/claude-skill-pointer-drift.test.js.map +1 -0
- package/dist/surfaces/adapters/claude.d.ts.map +1 -1
- package/dist/surfaces/adapters/claude.js +30 -25
- package/dist/surfaces/adapters/claude.js.map +1 -1
- package/dist/surfaces/registry.js +1 -1
- package/dist/surfaces/registry.js.map +1 -1
- package/package.json +9 -9
- package/dist/__tests__/audit.test.d.ts +0 -2
- package/dist/__tests__/audit.test.d.ts.map +0 -1
- package/dist/__tests__/audit.test.js +0 -399
- package/dist/__tests__/audit.test.js.map +0 -1
- package/dist/__tests__/authority-domains.test.d.ts +0 -2
- package/dist/__tests__/authority-domains.test.d.ts.map +0 -1
- package/dist/__tests__/authority-domains.test.js +0 -48
- package/dist/__tests__/authority-domains.test.js.map +0 -1
- package/dist/__tests__/handshake-augment.test.d.ts +0 -2
- package/dist/__tests__/handshake-augment.test.d.ts.map +0 -1
- package/dist/__tests__/handshake-augment.test.js +0 -423
- package/dist/__tests__/handshake-augment.test.js.map +0 -1
- package/dist/__tests__/handshake-dormancy.test.d.ts +0 -2
- package/dist/__tests__/handshake-dormancy.test.d.ts.map +0 -1
- package/dist/__tests__/handshake-dormancy.test.js +0 -207
- package/dist/__tests__/handshake-dormancy.test.js.map +0 -1
- package/dist/__tests__/handshake-formatter.test.d.ts +0 -2
- package/dist/__tests__/handshake-formatter.test.d.ts.map +0 -1
- package/dist/__tests__/handshake-formatter.test.js +0 -67
- package/dist/__tests__/handshake-formatter.test.js.map +0 -1
- package/dist/__tests__/handshake-preview.test.d.ts +0 -2
- package/dist/__tests__/handshake-preview.test.d.ts.map +0 -1
- package/dist/__tests__/handshake-preview.test.js +0 -841
- package/dist/__tests__/handshake-preview.test.js.map +0 -1
- package/dist/__tests__/handshake.e2e.test.d.ts +0 -2
- package/dist/__tests__/handshake.e2e.test.d.ts.map +0 -1
- package/dist/__tests__/handshake.e2e.test.js +0 -1252
- package/dist/__tests__/handshake.e2e.test.js.map +0 -1
- package/dist/__tests__/handshake.test.d.ts +0 -2
- package/dist/__tests__/handshake.test.d.ts.map +0 -1
- package/dist/__tests__/handshake.test.js +0 -805
- package/dist/__tests__/handshake.test.js.map +0 -1
- package/dist/__tests__/ingest.test.d.ts +0 -2
- package/dist/__tests__/ingest.test.d.ts.map +0 -1
- package/dist/__tests__/ingest.test.js +0 -185
- package/dist/__tests__/ingest.test.js.map +0 -1
- package/dist/__tests__/method-registry.integration.test.d.ts +0 -6
- package/dist/__tests__/method-registry.integration.test.d.ts.map +0 -1
- package/dist/__tests__/method-registry.integration.test.js +0 -18
- package/dist/__tests__/method-registry.integration.test.js.map +0 -1
- package/dist/__tests__/method-registry.test.d.ts +0 -14
- package/dist/__tests__/method-registry.test.d.ts.map +0 -1
- package/dist/__tests__/method-registry.test.js +0 -134
- package/dist/__tests__/method-registry.test.js.map +0 -1
- package/dist/__tests__/onboarding-path-b.test.d.ts +0 -2
- package/dist/__tests__/onboarding-path-b.test.d.ts.map +0 -1
- package/dist/__tests__/onboarding-path-b.test.js +0 -46
- package/dist/__tests__/onboarding-path-b.test.js.map +0 -1
- package/dist/__tests__/onboarding.test.d.ts +0 -6
- package/dist/__tests__/onboarding.test.d.ts.map +0 -1
- package/dist/__tests__/onboarding.test.js +0 -347
- package/dist/__tests__/onboarding.test.js.map +0 -1
- package/dist/__tests__/promote.test.d.ts +0 -2
- package/dist/__tests__/promote.test.d.ts.map +0 -1
- package/dist/__tests__/promote.test.js +0 -230
- package/dist/__tests__/promote.test.js.map +0 -1
- package/dist/__tests__/proposals.test.d.ts +0 -2
- package/dist/__tests__/proposals.test.d.ts.map +0 -1
- package/dist/__tests__/proposals.test.js +0 -167
- package/dist/__tests__/proposals.test.js.map +0 -1
- package/dist/__tests__/setup-ingest.test.d.ts +0 -2
- package/dist/__tests__/setup-ingest.test.d.ts.map +0 -1
- package/dist/__tests__/setup-ingest.test.js +0 -71
- package/dist/__tests__/setup-ingest.test.js.map +0 -1
- package/dist/__tests__/setup-resolver.test.d.ts +0 -14
- package/dist/__tests__/setup-resolver.test.d.ts.map +0 -1
- package/dist/__tests__/setup-resolver.test.js +0 -228
- package/dist/__tests__/setup-resolver.test.js.map +0 -1
- package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts +0 -15
- package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts.map +0 -1
- package/dist/commands/__tests__/setup-detect-surfaces.test.js +0 -149
- package/dist/commands/__tests__/setup-detect-surfaces.test.js.map +0 -1
- package/dist/commands/__tests__/setup-state.test.d.ts +0 -2
- package/dist/commands/__tests__/setup-state.test.d.ts.map +0 -1
- package/dist/commands/__tests__/setup-state.test.js +0 -194
- package/dist/commands/__tests__/setup-state.test.js.map +0 -1
- package/dist/commands/accept.d.ts +0 -18
- package/dist/commands/accept.d.ts.map +0 -1
- package/dist/commands/accept.js +0 -76
- package/dist/commands/accept.js.map +0 -1
- package/dist/commands/audit.d.ts +0 -25
- package/dist/commands/audit.d.ts.map +0 -1
- package/dist/commands/audit.js +0 -215
- package/dist/commands/audit.js.map +0 -1
- package/dist/commands/authority-domains.d.ts +0 -146
- package/dist/commands/authority-domains.d.ts.map +0 -1
- package/dist/commands/authority-domains.js +0 -283
- package/dist/commands/authority-domains.js.map +0 -1
- package/dist/commands/brand-pack.d.ts +0 -2
- package/dist/commands/brand-pack.d.ts.map +0 -1
- package/dist/commands/brand-pack.js +0 -25
- package/dist/commands/brand-pack.js.map +0 -1
- package/dist/commands/connect-context.d.ts +0 -45
- package/dist/commands/connect-context.d.ts.map +0 -1
- package/dist/commands/connect-context.js +0 -64
- package/dist/commands/connect-context.js.map +0 -1
- package/dist/commands/connect-context.test.d.ts +0 -2
- package/dist/commands/connect-context.test.d.ts.map +0 -1
- package/dist/commands/connect-context.test.js +0 -110
- package/dist/commands/connect-context.test.js.map +0 -1
- package/dist/commands/handshake.d.ts +0 -222
- package/dist/commands/handshake.d.ts.map +0 -1
- package/dist/commands/handshake.js +0 -2421
- package/dist/commands/handshake.js.map +0 -1
- package/dist/commands/ingest.d.ts +0 -14
- package/dist/commands/ingest.d.ts.map +0 -1
- package/dist/commands/ingest.js +0 -189
- package/dist/commands/ingest.js.map +0 -1
- package/dist/commands/method.d.ts +0 -99
- package/dist/commands/method.d.ts.map +0 -1
- package/dist/commands/method.js +0 -785
- package/dist/commands/method.js.map +0 -1
- package/dist/commands/migrate-setup.d.ts +0 -18
- package/dist/commands/migrate-setup.d.ts.map +0 -1
- package/dist/commands/migrate-setup.js +0 -198
- package/dist/commands/migrate-setup.js.map +0 -1
- package/dist/commands/promote.d.ts +0 -12
- package/dist/commands/promote.d.ts.map +0 -1
- package/dist/commands/promote.js +0 -113
- package/dist/commands/promote.js.map +0 -1
- package/dist/commands/proposals.d.ts +0 -9
- package/dist/commands/proposals.d.ts.map +0 -1
- package/dist/commands/proposals.js +0 -24
- package/dist/commands/proposals.js.map +0 -1
- package/dist/commands/reject.d.ts +0 -14
- package/dist/commands/reject.d.ts.map +0 -1
- package/dist/commands/reject.js +0 -44
- package/dist/commands/reject.js.map +0 -1
- package/dist/commands/setup-audit.d.ts +0 -59
- package/dist/commands/setup-audit.d.ts.map +0 -1
- package/dist/commands/setup-audit.js +0 -250
- package/dist/commands/setup-audit.js.map +0 -1
- package/dist/commands/setup-detect-surfaces.d.ts +0 -38
- package/dist/commands/setup-detect-surfaces.d.ts.map +0 -1
- package/dist/commands/setup-detect-surfaces.js +0 -76
- package/dist/commands/setup-detect-surfaces.js.map +0 -1
- package/dist/commands/setup-ingest.d.ts +0 -17
- package/dist/commands/setup-ingest.d.ts.map +0 -1
- package/dist/commands/setup-ingest.js +0 -226
- package/dist/commands/setup-ingest.js.map +0 -1
- package/dist/commands/setup-resolver.d.ts +0 -58
- package/dist/commands/setup-resolver.d.ts.map +0 -1
- package/dist/commands/setup-resolver.js +0 -150
- package/dist/commands/setup-resolver.js.map +0 -1
- package/dist/commands/setup-state.d.ts +0 -42
- package/dist/commands/setup-state.d.ts.map +0 -1
- package/dist/commands/setup-state.js +0 -93
- package/dist/commands/setup-state.js.map +0 -1
- package/dist/commands/setup.d.ts +0 -23
- package/dist/commands/setup.d.ts.map +0 -1
- package/dist/commands/setup.js +0 -69
- package/dist/commands/setup.js.map +0 -1
- package/dist/formatters/audit.d.ts +0 -52
- package/dist/formatters/audit.d.ts.map +0 -1
- package/dist/formatters/audit.js +0 -81
- package/dist/formatters/audit.js.map +0 -1
- package/dist/formatters/promote.d.ts +0 -30
- package/dist/formatters/promote.d.ts.map +0 -1
- package/dist/formatters/promote.js +0 -39
- package/dist/formatters/promote.js.map +0 -1
- package/dist/formatters/proposals.d.ts +0 -45
- package/dist/formatters/proposals.d.ts.map +0 -1
- package/dist/formatters/proposals.js +0 -62
- package/dist/formatters/proposals.js.map +0 -1
- package/dist/generators/archetypes.d.ts +0 -52
- package/dist/generators/archetypes.d.ts.map +0 -1
- package/dist/generators/archetypes.js +0 -153
- package/dist/generators/archetypes.js.map +0 -1
- package/dist/generators/archetypes.test.d.ts +0 -2
- package/dist/generators/archetypes.test.d.ts.map +0 -1
- package/dist/generators/archetypes.test.js +0 -237
- package/dist/generators/archetypes.test.js.map +0 -1
- package/dist/generators/chain-classifier.d.ts +0 -49
- package/dist/generators/chain-classifier.d.ts.map +0 -1
- package/dist/generators/chain-classifier.js +0 -180
- package/dist/generators/chain-classifier.js.map +0 -1
- package/dist/generators/chain-classifier.test.d.ts +0 -2
- package/dist/generators/chain-classifier.test.d.ts.map +0 -1
- package/dist/generators/chain-classifier.test.js +0 -257
- package/dist/generators/chain-classifier.test.js.map +0 -1
- package/dist/generators/chain-rules.d.ts +0 -42
- package/dist/generators/chain-rules.d.ts.map +0 -1
- package/dist/generators/chain-rules.js +0 -144
- package/dist/generators/chain-rules.js.map +0 -1
- package/dist/generators/chain-rules.test.d.ts +0 -2
- package/dist/generators/chain-rules.test.d.ts.map +0 -1
- package/dist/generators/chain-rules.test.js +0 -179
- package/dist/generators/chain-rules.test.js.map +0 -1
- package/dist/generators/handshake-diff.d.ts +0 -67
- package/dist/generators/handshake-diff.d.ts.map +0 -1
- package/dist/generators/handshake-diff.js +0 -183
- package/dist/generators/handshake-diff.js.map +0 -1
- package/dist/generators/handshake-diff.test.d.ts +0 -2
- package/dist/generators/handshake-diff.test.d.ts.map +0 -1
- package/dist/generators/handshake-diff.test.js +0 -264
- package/dist/generators/handshake-diff.test.js.map +0 -1
- package/dist/lib/activation.d.ts +0 -28
- package/dist/lib/activation.d.ts.map +0 -1
- package/dist/lib/activation.js +0 -57
- package/dist/lib/activation.js.map +0 -1
- package/dist/lib/activation.test.d.ts +0 -6
- package/dist/lib/activation.test.d.ts.map +0 -1
- package/dist/lib/activation.test.js +0 -121
- package/dist/lib/activation.test.js.map +0 -1
- package/dist/lib/collectionRegistry.d.ts +0 -38
- package/dist/lib/collectionRegistry.d.ts.map +0 -1
- package/dist/lib/collectionRegistry.js +0 -112
- package/dist/lib/collectionRegistry.js.map +0 -1
- package/dist/lib/conversation-engine.d.ts +0 -45
- package/dist/lib/conversation-engine.d.ts.map +0 -1
- package/dist/lib/conversation-engine.js +0 -112
- package/dist/lib/conversation-engine.js.map +0 -1
- package/dist/lib/conversation-phases.d.ts +0 -59
- package/dist/lib/conversation-phases.d.ts.map +0 -1
- package/dist/lib/conversation-phases.js +0 -11
- package/dist/lib/conversation-phases.js.map +0 -1
- package/dist/lib/conversation-signals.d.ts +0 -30
- package/dist/lib/conversation-signals.d.ts.map +0 -1
- package/dist/lib/conversation-signals.js +0 -64
- package/dist/lib/conversation-signals.js.map +0 -1
- package/dist/lib/inferSourceDate.d.ts +0 -12
- package/dist/lib/inferSourceDate.d.ts.map +0 -1
- package/dist/lib/inferSourceDate.js +0 -44
- package/dist/lib/inferSourceDate.js.map +0 -1
- package/dist/lib/method-registry.d.ts +0 -32
- package/dist/lib/method-registry.d.ts.map +0 -1
- package/dist/lib/method-registry.js +0 -53
- package/dist/lib/method-registry.js.map +0 -1
- package/dist/lib/onboarding-path-b.d.ts +0 -10
- package/dist/lib/onboarding-path-b.d.ts.map +0 -1
- package/dist/lib/onboarding-path-b.js +0 -213
- package/dist/lib/onboarding-path-b.js.map +0 -1
- package/dist/lib/onboarding-shared.d.ts +0 -80
- package/dist/lib/onboarding-shared.d.ts.map +0 -1
- package/dist/lib/onboarding-shared.js +0 -174
- package/dist/lib/onboarding-shared.js.map +0 -1
- package/dist/lib/onboarding-topics.d.ts +0 -27
- package/dist/lib/onboarding-topics.d.ts.map +0 -1
- package/dist/lib/onboarding-topics.js +0 -57
- package/dist/lib/onboarding-topics.js.map +0 -1
- package/dist/lib/onboarding.d.ts +0 -17
- package/dist/lib/onboarding.d.ts.map +0 -1
- package/dist/lib/onboarding.js +0 -350
- package/dist/lib/onboarding.js.map +0 -1
- package/dist/setup/__tests__/coach-traces.test.d.ts +0 -2
- package/dist/setup/__tests__/coach-traces.test.d.ts.map +0 -1
- package/dist/setup/__tests__/coach-traces.test.js +0 -189
- package/dist/setup/__tests__/coach-traces.test.js.map +0 -1
- package/dist/setup/__tests__/setup-commands.test.d.ts +0 -2
- package/dist/setup/__tests__/setup-commands.test.d.ts.map +0 -1
- package/dist/setup/__tests__/setup-commands.test.js +0 -177
- package/dist/setup/__tests__/setup-commands.test.js.map +0 -1
- package/dist/setup/__tests__/state-machine.test.d.ts +0 -2
- package/dist/setup/__tests__/state-machine.test.d.ts.map +0 -1
- package/dist/setup/__tests__/state-machine.test.js +0 -341
- package/dist/setup/__tests__/state-machine.test.js.map +0 -1
- package/dist/setup/detect-surfaces.d.ts +0 -21
- package/dist/setup/detect-surfaces.d.ts.map +0 -1
- package/dist/setup/detect-surfaces.js +0 -39
- package/dist/setup/detect-surfaces.js.map +0 -1
- package/dist/setup/manifest-writer.d.ts +0 -17
- package/dist/setup/manifest-writer.d.ts.map +0 -1
- package/dist/setup/manifest-writer.js +0 -153
- package/dist/setup/manifest-writer.js.map +0 -1
- package/dist/setup/perimeter.d.ts +0 -72
- package/dist/setup/perimeter.d.ts.map +0 -1
- package/dist/setup/perimeter.js +0 -128
- package/dist/setup/perimeter.js.map +0 -1
- package/dist/setup/state-machine.d.ts +0 -67
- package/dist/setup/state-machine.d.ts.map +0 -1
- package/dist/setup/state-machine.js +0 -124
- package/dist/setup/state-machine.js.map +0 -1
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts +0 -2
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts.map +0 -1
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.js +0 -132
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.js.map +0 -1
- package/templates/archetypes/boundary.md +0 -23
- package/templates/archetypes/constraint.md +0 -23
- package/templates/archetypes/convention.md +0 -23
- package/templates/archetypes/policy.md +0 -23
- package/templates/archetypes/quality-gate.md +0 -23
- package/templates/archetypes/workflow.md +0 -23
- package/templates/general/code-integrity.md +0 -11
- package/templates/general/getting-started.md +0 -12
- package/templates/method-registry.json +0 -16
- package/templates/node-ts/code-integrity.md +0 -13
- package/templates/node-ts/testing.md +0 -12
- package/templates/python/code-integrity.md +0 -13
- package/templates/python/testing.md +0 -12
package/dist/index.js
CHANGED
|
@@ -1,172 +1,82 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/**
|
|
3
|
-
* Product Brain CLI — Chain knowledge + write-back in the terminal.
|
|
4
|
-
*
|
|
5
|
-
* BET-181 Slice 0: global --json / --pretty flags for agent-native output (DEC-299).
|
|
3
|
+
* Product Brain CLI — Chain knowledge + write-back in the terminal. Read: BET-108.
|
|
4
|
+
* Write: pb session + pb capture (TEN-27, INS-80). BET-181 Slice 0: global --json / --pretty flags for agent-native output (DEC-299).
|
|
6
5
|
*/
|
|
7
6
|
import { readFileSync } from 'node:fs';
|
|
8
7
|
import { dirname, join } from 'node:path';
|
|
9
8
|
import { fileURLToPath } from 'node:url';
|
|
10
|
-
import { Command
|
|
9
|
+
import { Command } from 'commander';
|
|
11
10
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
12
11
|
const cliPackageVersion = JSON.parse(readFileSync(join(__dirname, '..', 'package.json'), 'utf8'));
|
|
13
12
|
import { setOutputMode, setQuietMode, isJsonMode } from './lib/runner.js';
|
|
14
13
|
import { CLIError, ErrorCode } from './lib/errors.js';
|
|
14
|
+
import { handleCliError as handleError, silenceCommanderErrors } from './handleCliError.js';
|
|
15
15
|
import { runContext } from './commands/context.js';
|
|
16
16
|
import { runGet, runGetMany } from './commands/get.js';
|
|
17
|
+
import { runScoreboard } from './commands/scoreboard.js';
|
|
18
|
+
import { registerHistoryCommand } from './registerHistoryCommand.js';
|
|
19
|
+
import { runReworkReport } from './commands/rework.js';
|
|
17
20
|
import { runConnect } from './commands/connect.js';
|
|
18
21
|
import { runLogin } from './commands/login.js';
|
|
19
|
-
import { runSetup } from './commands/setup.js';
|
|
20
|
-
import { runSetupDetectSurfaces, formatDetectSurfacesSummary } from './commands/setup-detect-surfaces.js';
|
|
21
|
-
import { runSetupState } from './commands/setup-state.js';
|
|
22
|
-
import { runSetupAudit } from './commands/setup-audit.js';
|
|
23
22
|
import { runOrient } from './commands/orient.js';
|
|
24
23
|
import { runSearch } from './commands/search.js';
|
|
25
|
-
import {
|
|
26
|
-
import { runSessionStart, runSessionClose, runSessionId, runSessionReset } from './commands/session.js';
|
|
24
|
+
import { runSessionStart, runSessionClose, runSessionId, runSessionReset, runSessionList, runSessionShow } from './commands/session.js';
|
|
27
25
|
import { runCapture } from './commands/capture.js';
|
|
28
26
|
import { runUpdate } from './commands/update.js';
|
|
29
|
-
import {
|
|
30
|
-
import { runIngest } from './commands/ingest.js';
|
|
27
|
+
import { runRestore } from './commands/restore.js';
|
|
31
28
|
import { runFields } from './commands/fields.js';
|
|
32
29
|
import { runConstellation } from './commands/constellation.js';
|
|
33
|
-
import {
|
|
34
|
-
import {
|
|
35
|
-
import { runAudit } from './commands/audit.js';
|
|
36
|
-
import { runProposals } from './commands/proposals.js';
|
|
37
|
-
import { runAccept } from './commands/accept.js';
|
|
38
|
-
import { runReject } from './commands/reject.js';
|
|
30
|
+
import { registerEntryCommands, registerRelateCommands } from './registerEntryCommands.js';
|
|
31
|
+
import { registerTensionsCommands } from './registerTensionsCommands.js'; // WP-768 L0: same-line combine
|
|
39
32
|
import { runChanges } from './commands/changes.js';
|
|
33
|
+
import { registerOutcomeCommands } from './registerOutcomeCommands.js';
|
|
34
|
+
import { registerRoleCommands } from './registerRoleCommands.js';
|
|
40
35
|
import { runChainWalk } from './commands/chain-walk.js';
|
|
41
36
|
import { runCrossCut } from './commands/cross-cut.js';
|
|
42
37
|
import { runBrief, runCompoundBrief, isCompoundType } from './commands/brief.js';
|
|
43
38
|
import { runVerify } from './commands/verify.js';
|
|
44
39
|
import { runCodexPrep } from './commands/codex-prep.js';
|
|
40
|
+
import { runStillTrue } from './commands/stillTrue.js'; // same-line combine, TASK-384 S1
|
|
45
41
|
import { runCollectionsList, runCollectionsGet, runCollectionsAudit, runCollectionsExport } from './commands/collections.js';
|
|
46
|
-
import { runWorkspaceVerify,
|
|
47
|
-
import { runAuthorityDomainsActivateCutover, runAuthorityDomainsDeactivateCutover, runAuthorityDomainsBenchmark, runAuthorityDomainsDiscardPending, runAuthorityDomainsPropose, runAuthorityDomainsRatify, runAuthorityDomainsReadiness, runAuthorityDomainsRecordSample, runAuthorityDomainsReject, runAuthorityDomainsReview, runAuthorityDomainsPrincipleDistribution, } from './commands/authority-domains.js';
|
|
42
|
+
import { runWorkspaceVerify, runDefinitionsDiff } from './commands/workspace.js';
|
|
48
43
|
import { runDoctor } from './commands/doctor.js';
|
|
49
44
|
import { runWhoami } from './commands/whoami.js';
|
|
45
|
+
import { runFiles } from './commands/files.js';
|
|
50
46
|
import { runUpgrade } from './commands/upgrade.js';
|
|
51
47
|
import { runProfileList, runProfileCreate, runProfileUse, runProfileDelete } from './commands/profile.js';
|
|
52
48
|
import { runInit } from './commands/init.js';
|
|
53
|
-
import {
|
|
49
|
+
import { runStatus } from './commands/status.js';
|
|
54
50
|
import { createAdminCommand } from './commands/admin/index.js';
|
|
51
|
+
import { createFeedbackCommand } from './commands/feedback.js';
|
|
52
|
+
import { createConflictsCommand } from './commands/conflicts.js';
|
|
53
|
+
import { createQuestionCommand } from './commands/questions.js';
|
|
54
|
+
import { createDirectionCommand } from './commands/direction.js';
|
|
55
|
+
import { createOrganisationCommand } from './commands/organisation.js';
|
|
56
|
+
import { createAcceptPolicyCommand } from './commands/accept-policy.js'; // WP-661 S3
|
|
55
57
|
import { runUsage } from './commands/usage.js';
|
|
56
|
-
import { runProofRun } from './commands/proof-run.js';
|
|
57
|
-
import {
|
|
58
|
-
import {
|
|
59
|
-
import {
|
|
60
|
-
import {
|
|
58
|
+
import { runProofRun } from './commands/proof-run.js'; // same-line combine
|
|
59
|
+
import { registerQualityCommands } from './commands/quality.js';
|
|
60
|
+
import { formatGlossary } from './lib/glossary.js';
|
|
61
|
+
import { PLATFORM_GLOSSARY_TERMS } from './lib/platformGlossary.js';
|
|
62
|
+
import { API_KEY_PREFIX } from './lib/tokenConstants.js'; // same-line combine
|
|
63
|
+
import { heading } from './lib/style.js';
|
|
64
|
+
import { printPreviewBanner } from './lib/previewBanner.js';
|
|
61
65
|
import { checkForUpdate } from './lib/update-check.js';
|
|
62
66
|
import { UPGRADE_COMMAND } from './lib/constants.js';
|
|
63
|
-
import { resolveSetupState, detectRenderTier } from './lib/state.js';
|
|
64
67
|
const program = new Command();
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
* addition to the PREVIEW banner. Each is registered directly on `program`, so
|
|
68
|
-
* `actionCommand.name()` matches verbatim. We gate on top-level (parent === program)
|
|
69
|
-
* to avoid false positives from nested commands whose leaf name collides
|
|
70
|
-
* (e.g. `pb workspace verify`, which is a health check, not a Chain write).
|
|
71
|
-
*/
|
|
72
|
-
const PREVIEW_WRITE_COMMANDS = new Set([
|
|
73
|
-
'capture',
|
|
74
|
-
'update',
|
|
75
|
-
'verify',
|
|
76
|
-
'promote',
|
|
77
|
-
'relate',
|
|
78
|
-
'unrelate',
|
|
79
|
-
'ingest',
|
|
80
|
-
'accept',
|
|
81
|
-
'reject',
|
|
82
|
-
]);
|
|
83
|
-
/**
|
|
84
|
-
* Print a loud PREVIEW banner to stderr when pb is bound to a throwaway preview.
|
|
85
|
-
*
|
|
86
|
-
* Writes to stderr (NOT stdout) so stdout stays clean JSON for agents — and so the
|
|
87
|
-
* banner appears even when --json or --quiet are set, which is the whole point: the
|
|
88
|
-
* agent must see it every time. Cheap + synchronous (one file read). Never throws.
|
|
89
|
-
*
|
|
90
|
-
* For every Chain-write command (see PREVIEW_WRITE_COMMANDS), also writes an
|
|
91
|
-
* advisory reminding the user that real learnings belong in the real Chain.
|
|
92
|
-
*/
|
|
93
|
-
function printPreviewBanner(actionCommand) {
|
|
94
|
-
try {
|
|
95
|
-
const binding = getPreviewBinding();
|
|
96
|
-
if (!binding)
|
|
97
|
-
return;
|
|
98
|
-
const name = binding.workspaceName ?? 'preview';
|
|
99
|
-
process.stderr.write(yellow(bold(`⚠ PREVIEW ${name} — writes are throwaway. npm run pb:real to return to the real Chain`)) + '\n');
|
|
100
|
-
const isTopLevel = actionCommand.parent?.name() === 'pb';
|
|
101
|
-
if (isTopLevel && PREVIEW_WRITE_COMMANDS.has(actionCommand.name())) {
|
|
102
|
-
process.stderr.write(` → real learnings belong in the real Chain. Switch back with: npm run pb:real\n`);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
catch {
|
|
106
|
-
// Never let the banner crash the CLI
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
/**
|
|
110
|
-
* Global error handler — single exit point for all CLI errors.
|
|
111
|
-
* CLIError: format with code + category + guidance.
|
|
112
|
-
* CommanderError: re-throw for --help / --version (exitCode 0), format others.
|
|
113
|
-
* Regular Error: wrap as INTERNAL.
|
|
114
|
-
*/
|
|
115
|
-
function handleError(err) {
|
|
116
|
-
// Commander help/version exits with code 0 — let them through
|
|
117
|
-
if (err instanceof CommanderError && err.exitCode === 0) {
|
|
118
|
-
process.exit(0);
|
|
119
|
-
}
|
|
120
|
-
const json = isJsonMode();
|
|
121
|
-
if (err instanceof CLIError) {
|
|
122
|
-
if (json) {
|
|
123
|
-
process.stderr.write(JSON.stringify(err.toJSON()) + '\n');
|
|
124
|
-
}
|
|
125
|
-
else {
|
|
126
|
-
process.stderr.write(err.message + '\n');
|
|
127
|
-
if (err.guidance) {
|
|
128
|
-
process.stderr.write(err.guidance + '\n');
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
process.exit(1);
|
|
132
|
-
}
|
|
133
|
-
// CommanderError (bad usage, missing args, etc.)
|
|
134
|
-
if (err instanceof CommanderError) {
|
|
135
|
-
const cliErr = new CLIError(err.message, {
|
|
136
|
-
code: ErrorCode.VALIDATION_FAILED,
|
|
137
|
-
category: 'validation',
|
|
138
|
-
});
|
|
139
|
-
if (json) {
|
|
140
|
-
process.stderr.write(JSON.stringify(cliErr.toJSON()) + '\n');
|
|
141
|
-
}
|
|
142
|
-
else {
|
|
143
|
-
process.stderr.write(err.message + '\n');
|
|
144
|
-
}
|
|
145
|
-
process.exit(err.exitCode);
|
|
146
|
-
}
|
|
147
|
-
// Unknown / unstructured errors
|
|
148
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
149
|
-
if (json) {
|
|
150
|
-
process.stderr.write(JSON.stringify({ error: message, code: 'INTERNAL', category: 'internal' }) + '\n');
|
|
151
|
-
}
|
|
152
|
-
else {
|
|
153
|
-
process.stderr.write(message + '\n');
|
|
154
|
-
}
|
|
155
|
-
process.exit(1);
|
|
156
|
-
}
|
|
68
|
+
// WP-753 V2 (TASK-203): the global error handler lives in ./handleCliError.ts (STD-2/DEC-1724 —
|
|
69
|
+
// kept out of this grandfathered file); imported below as handleError for the call site's own name.
|
|
157
70
|
program
|
|
158
71
|
.name('pb')
|
|
159
72
|
.description('Product Brain — Chain knowledge + write-back CLI')
|
|
160
73
|
.version(cliPackageVersion.version)
|
|
161
74
|
// Global output mode flags (DEC-299, BET-181)
|
|
162
|
-
.option('--json', 'Output machine-readable JSON (
|
|
163
|
-
.option('--pretty', 'Force human-readable output even when
|
|
75
|
+
.option('--json', 'Output machine-readable JSON (the card is the default even when piped)')
|
|
76
|
+
.option('--pretty', 'Force human-readable output even when PB_JSON=1 is set')
|
|
164
77
|
.option('-q, --quiet', 'Suppress non-essential output (banners, hints, progress)')
|
|
165
78
|
.exitOverride(); // Throw CommanderError instead of calling process.exit directly
|
|
166
|
-
// Apply global output mode BEFORE subcommand actions run
|
|
167
|
-
// Commander preAction hook signature: (hookedCommand, actionCommand)
|
|
168
|
-
// hookedCommand = the command where hook was registered (root program)
|
|
169
|
-
// actionCommand = the subcommand actually being invoked
|
|
79
|
+
// Apply global output mode BEFORE subcommand actions run. Commander preAction hook signature: (hookedCommand = root program, actionCommand = the subcommand actually invoked).
|
|
170
80
|
program.hook('preAction', (_hookedCommand, actionCommand) => {
|
|
171
81
|
const globalOpts = program.opts();
|
|
172
82
|
if (globalOpts.json) {
|
|
@@ -175,129 +85,18 @@ program.hook('preAction', (_hookedCommand, actionCommand) => {
|
|
|
175
85
|
else if (globalOpts.pretty) {
|
|
176
86
|
setOutputMode('pretty');
|
|
177
87
|
}
|
|
178
|
-
// else: 'auto' (default) — TTY
|
|
88
|
+
// else: 'auto' (default) — isJsonMode() checks PB_JSON=1, never TTY (WP-744 / 1e-B)
|
|
179
89
|
if (globalOpts.quiet) {
|
|
180
90
|
setQuietMode(true);
|
|
181
91
|
}
|
|
182
92
|
// Ambient update notification — non-blocking, suppressed in JSON mode (WP-322 S1)
|
|
183
93
|
checkForUpdate(cliPackageVersion.version);
|
|
184
|
-
// PREVIEW banner — writes to stderr so it's always visible even in --json/--quiet mode.
|
|
185
|
-
// Advisory line added for top-level Chain-write commands: real learnings belong in the real Chain.
|
|
94
|
+
// PREVIEW banner — writes to stderr so it's always visible even in --json/--quiet mode. Advisory line added for top-level Chain-write commands: real learnings belong in the real Chain.
|
|
186
95
|
printPreviewBanner(actionCommand);
|
|
187
96
|
});
|
|
188
|
-
// Default action — status dashboard when `pb` is invoked with no command.
|
|
189
|
-
// `pb --help` still works because Commander intercepts --help before the action runs.
|
|
97
|
+
// Default action — status dashboard when `pb` is invoked with no command. `pb --help` still works because Commander intercepts --help before the action runs.
|
|
190
98
|
program.action(async () => {
|
|
191
|
-
|
|
192
|
-
if (program.args.length > 0) {
|
|
193
|
-
const args = program.args;
|
|
194
|
-
// `pb start` / `pb start session` → `pb session start`
|
|
195
|
-
if (args[0] === 'start') {
|
|
196
|
-
await runSessionStart();
|
|
197
|
-
return;
|
|
198
|
-
}
|
|
199
|
-
// `pb close` / `pb close session` → `pb session close`
|
|
200
|
-
if (args[0] === 'close') {
|
|
201
|
-
await runSessionClose({});
|
|
202
|
-
return;
|
|
203
|
-
}
|
|
204
|
-
// Unknown command — show a helpful error instead of the welcome screen
|
|
205
|
-
const unknown = args[0];
|
|
206
|
-
process.stderr.write(`error: unknown command '${unknown}'\n`);
|
|
207
|
-
process.stderr.write(`Run 'pb --help' to see available commands.\n`);
|
|
208
|
-
process.exit(1);
|
|
209
|
-
}
|
|
210
|
-
const tier = detectRenderTier();
|
|
211
|
-
// JSON tier — structured status output
|
|
212
|
-
if (tier === 'json') {
|
|
213
|
-
// Check for API key first (sync, no network)
|
|
214
|
-
let hasKey = false;
|
|
215
|
-
try {
|
|
216
|
-
const { getConfig: gc } = await import('./lib/config.js');
|
|
217
|
-
gc();
|
|
218
|
-
hasKey = true;
|
|
219
|
-
}
|
|
220
|
-
catch {
|
|
221
|
-
// No valid key
|
|
222
|
-
}
|
|
223
|
-
if (!hasKey) {
|
|
224
|
-
process.stdout.write(JSON.stringify({
|
|
225
|
-
configured: false,
|
|
226
|
-
hint: 'Run pb login to configure your API key.',
|
|
227
|
-
}) + '\n');
|
|
228
|
-
return;
|
|
229
|
-
}
|
|
230
|
-
const { readSession } = await import('./lib/session.js');
|
|
231
|
-
const { probeWorkspace } = await import('./lib/workspace-probe.js');
|
|
232
|
-
const session = readSession();
|
|
233
|
-
const wsInfo = await probeWorkspace();
|
|
234
|
-
process.stdout.write(JSON.stringify({
|
|
235
|
-
configured: true,
|
|
236
|
-
workspace: wsInfo?.name ?? null,
|
|
237
|
-
session: session ? { id: session.sessionId, startedAt: session.startedAt } : null,
|
|
238
|
-
entryCount: wsInfo?.entryCount ?? null,
|
|
239
|
-
hint: 'Run pb --help for available commands.',
|
|
240
|
-
}) + '\n');
|
|
241
|
-
return;
|
|
242
|
-
}
|
|
243
|
-
// Ink tier: suppress withSpinner output before Ink mounts — spinner writes pollute the TUI canvas
|
|
244
|
-
if (tier === 'ink')
|
|
245
|
-
setQuietMode(true);
|
|
246
|
-
// Resolve state (plain and ink both need it)
|
|
247
|
-
const state = await resolveSetupState();
|
|
248
|
-
// Plain tier — console output driven by state
|
|
249
|
-
if (tier === 'plain') {
|
|
250
|
-
process.stdout.write('\n');
|
|
251
|
-
if (state.stage === 'unconfigured') {
|
|
252
|
-
process.stdout.write(`${bold('Product Brain')} ${dim('— not connected')}\n\n`);
|
|
253
|
-
process.stdout.write(`${heading('Get started')}\n\n`);
|
|
254
|
-
hint('1. pb login Save your API key');
|
|
255
|
-
hint('2. pb connect Connect a workspace');
|
|
256
|
-
hint('3. pb orient -b See what\'s happening');
|
|
257
|
-
process.stdout.write('\n');
|
|
258
|
-
hint('pb --help Show all commands');
|
|
259
|
-
process.stdout.write('\n');
|
|
260
|
-
}
|
|
261
|
-
else if (state.stage === 'authenticated') {
|
|
262
|
-
process.stdout.write(`${bold('Product Brain')} ${dim('— server unreachable')}\n\n`);
|
|
263
|
-
process.stdout.write(` ${green(icons.pass)} Key: configured\n`);
|
|
264
|
-
process.stdout.write(` ! Server: unreachable — run pb doctor to diagnose\n\n`);
|
|
265
|
-
hint('pb session start Start a write session');
|
|
266
|
-
hint('pb doctor Diagnose connection issues');
|
|
267
|
-
hint('pb --help Show all commands');
|
|
268
|
-
process.stdout.write('\n');
|
|
269
|
-
}
|
|
270
|
-
else {
|
|
271
|
-
// workspace-bound or active
|
|
272
|
-
const workspaceName = state.workspaceName ?? 'unknown';
|
|
273
|
-
const entryCount = state.entryCount ?? 0;
|
|
274
|
-
const title = `${bold('Product Brain')} ${dim('—')} ${bold(workspaceName)}`;
|
|
275
|
-
process.stdout.write(`${title}\n\n`);
|
|
276
|
-
process.stdout.write(` ${green(icons.pass)} Key: configured\n`);
|
|
277
|
-
process.stdout.write(` ${green(icons.pass)} Workspace: ${workspaceName} (${entryCount} entries)\n`);
|
|
278
|
-
if (state.sessionActive) {
|
|
279
|
-
process.stdout.write(` ${green(icons.pass)} Session: active\n`);
|
|
280
|
-
}
|
|
281
|
-
else {
|
|
282
|
-
process.stdout.write(` ${dim('- Session: none')}\n`);
|
|
283
|
-
}
|
|
284
|
-
process.stdout.write('\n');
|
|
285
|
-
if (!state.sessionActive) {
|
|
286
|
-
hint('pb session start Start a write session');
|
|
287
|
-
}
|
|
288
|
-
hint('pb orient -b Workspace overview');
|
|
289
|
-
hint('pb --help Show all commands');
|
|
290
|
-
process.stdout.write('\n');
|
|
291
|
-
}
|
|
292
|
-
return;
|
|
293
|
-
}
|
|
294
|
-
// Ink tier — interactive TUI
|
|
295
|
-
const version = cliPackageVersion.version;
|
|
296
|
-
const { render } = await import('ink');
|
|
297
|
-
const { WelcomeCockpit } = await import('./commands/welcome.js');
|
|
298
|
-
const React = await import('react');
|
|
299
|
-
const { waitUntilExit, unmount } = render(React.default.createElement(WelcomeCockpit, { state, version, onExit: () => unmount() }));
|
|
300
|
-
await waitUntilExit();
|
|
99
|
+
await runStatus({ args: program.args, version: cliPackageVersion.version });
|
|
301
100
|
});
|
|
302
101
|
program
|
|
303
102
|
.command('get <entry-id>')
|
|
@@ -309,6 +108,38 @@ program
|
|
|
309
108
|
}
|
|
310
109
|
await runGet({ entryId: entryId.trim() });
|
|
311
110
|
});
|
|
111
|
+
registerHistoryCommand(program); // WP-753 V2 (TASK-203): same-line combine, module-health shrink-only budget
|
|
112
|
+
program
|
|
113
|
+
.command('scoreboard')
|
|
114
|
+
.description('Flywheel scoreboard — M3/M4/M5 metrics + diagnosis layer (agent-primary; --json for structured consumption)')
|
|
115
|
+
.action(async () => {
|
|
116
|
+
await runScoreboard();
|
|
117
|
+
});
|
|
118
|
+
const qualityCmd = program
|
|
119
|
+
.command('quality')
|
|
120
|
+
.description('Quality-check surfaces');
|
|
121
|
+
registerQualityCommands(qualityCmd);
|
|
122
|
+
const reworkCmd = program
|
|
123
|
+
.command('rework')
|
|
124
|
+
.description('Report observed rework signals (WP-487 / FEAT-1373 — fills the M4 rework meter)');
|
|
125
|
+
reworkCmd
|
|
126
|
+
.command('report <entry-id>')
|
|
127
|
+
.description('Report a rework event attributed to a previously served governance entry (agent-native checkpoint; requires an active session)')
|
|
128
|
+
.requiredOption('--classification <kind>', 'revision | ci_review_correction | user_override')
|
|
129
|
+
.option('--via <kind>', 'How this was observed: followup_commit | ci_rerun | manual', 'manual')
|
|
130
|
+
.option('--attributable', 'Flag: this ci_review_correction is attributed to a missing/violated served decision')
|
|
131
|
+
.option('--task <text>', 'Task context this rework relates to (truncated server-side, never raw diff/comment text)')
|
|
132
|
+
.option('--conversation <id>', 'Explicit conversation override, matching `pb session start --conversation <id>` — use when the shell has no PB_CONVERSATION_ID set')
|
|
133
|
+
.action(async (entryId, opts) => {
|
|
134
|
+
await runReworkReport({
|
|
135
|
+
entryId,
|
|
136
|
+
classification: opts.classification,
|
|
137
|
+
reportedVia: opts.via,
|
|
138
|
+
attributable: opts.attributable,
|
|
139
|
+
task: opts.task,
|
|
140
|
+
conversation: opts.conversation,
|
|
141
|
+
});
|
|
142
|
+
});
|
|
312
143
|
program
|
|
313
144
|
.command('get-many <entry-ids...>')
|
|
314
145
|
.description('Fetch multiple entries in parallel (space-separated IDs)')
|
|
@@ -317,7 +148,7 @@ program
|
|
|
317
148
|
});
|
|
318
149
|
program
|
|
319
150
|
.command('context <entry-id>')
|
|
320
|
-
.description('Gather and display constellation context (
|
|
151
|
+
.description('Gather and display constellation context (human-readable card by default, even when piped — pass --json for machine-readable output)')
|
|
321
152
|
.action(async (entryId) => {
|
|
322
153
|
if (!entryId?.trim()) {
|
|
323
154
|
program.commands.find((c) => c.name() === 'context')?.help();
|
|
@@ -365,7 +196,7 @@ program
|
|
|
365
196
|
.description('Brief intelligence queries (BET-239).\n' +
|
|
366
197
|
' pb brief --skill <name> Incremental delta for a skill (E4)\n' +
|
|
367
198
|
' pb brief steering Compound: changes + structure + delta + readiness (E6)\n' +
|
|
368
|
-
' pb brief confidence Compound: changes + active
|
|
199
|
+
' pb brief confidence Compound: changes + active work packages (tensions: `pb tensions list`) (E6)\n' +
|
|
369
200
|
' pb brief delta [--since] Compound: changes + relations since timestamp (E6)')
|
|
370
201
|
.option('--skill <name>', 'Skill name for incremental brief (e.g. preflight, shaping, review)')
|
|
371
202
|
.option('--since-last', 'Compare against last brief run (incremental mode)')
|
|
@@ -399,35 +230,12 @@ program
|
|
|
399
230
|
});
|
|
400
231
|
program
|
|
401
232
|
.command('orient')
|
|
402
|
-
.description('Print
|
|
403
|
-
.option('-b, --brief', 'Compact view:
|
|
233
|
+
.description('Print all orient sections (strategic context, work packages, governance, tensions, etc.)')
|
|
234
|
+
.option('-b, --brief', 'Compact view: counts, top work packages, tensions, planned work')
|
|
404
235
|
.option('-t, --task <task>', 'Task description for task-shaped governance and context')
|
|
405
|
-
// SYNC: domain list must match TaskDomain in convex/agentKnowledge/startupResolver.ts
|
|
406
|
-
.option('-s, --scope <domain>', 'Domain scope for governance filtering. Accepts authority roots, child scopes such as product-design/ux and data/analytics, and legacy internal scopes.')
|
|
407
236
|
.option('--full', 'Full depth orient (tier=full). Use for thorough context loading.')
|
|
408
237
|
.action(async (opts) => {
|
|
409
|
-
await runOrient({ brief: opts.brief, task: opts.task?.trim() || undefined,
|
|
410
|
-
});
|
|
411
|
-
program
|
|
412
|
-
.command('handshake')
|
|
413
|
-
.description('Generate context files for AI developer tools (AGENTS.md, .codex/skills/, CLAUDE.md, .cursor/rules/, .github/copilot-instructions.md)')
|
|
414
|
-
.option('--force', 'Overwrite adapter files even if they exist without auto-generated marker')
|
|
415
|
-
.option('--apply', 'Write files (default: preview only)')
|
|
416
|
-
.option('--dry-run', 'Show what would be generated without writing files (alias for preview)')
|
|
417
|
-
.option('--init', 'Set up Claude Code integration: team hooks + personal trust level')
|
|
418
|
-
.option('--level <level>', 'With --init: trust level (guide|work|silent|full-trust). Without --init: content tier (beginner|intermediate|expert)')
|
|
419
|
-
.option('--generate', 'Fetch governance entries from the Chain and merge generated rules (BET-286)')
|
|
420
|
-
.option('--surfaces <list>', 'Comma-separated surfaces to write (cursor,claude,copilot,codex)')
|
|
421
|
-
.option('--no-prompt', 'Headless mode: refuse on tampered projection files (WP-421 S3, doneWhen #17). Always implied when stdout is not a TTY.')
|
|
422
|
-
.option('--lenient', 'WP-439 S4: continue past setup-asset body fetch failures with a warning (legacy behaviour). By default, body fetch failures are hard errors; run `pb setup-audit --repair` to fix orphaned rows.')
|
|
423
|
-
.action(async (opts) => {
|
|
424
|
-
if (opts.init) {
|
|
425
|
-
await runHandshakeInit({ level: opts.level, dryRun: opts.dryRun });
|
|
426
|
-
return;
|
|
427
|
-
}
|
|
428
|
-
// Commander turns `--no-prompt` into `prompt: false`. We invert so HandshakeOptions sees noPrompt=true.
|
|
429
|
-
const noPrompt = opts.prompt === false;
|
|
430
|
-
await runHandshake({ force: opts.force, apply: opts.apply, dryRun: opts.dryRun, level: opts.level, generate: opts.generate, surfaces: opts.surfaces?.split(','), noPrompt, lenient: opts.lenient });
|
|
238
|
+
await runOrient({ brief: opts.brief, task: opts.task?.trim() || undefined, full: opts.full });
|
|
431
239
|
});
|
|
432
240
|
program
|
|
433
241
|
.command('codex-prep <task...>')
|
|
@@ -444,21 +252,23 @@ program
|
|
|
444
252
|
});
|
|
445
253
|
program
|
|
446
254
|
.command('init')
|
|
447
|
-
.description('
|
|
448
|
-
.
|
|
449
|
-
|
|
255
|
+
.description('Install the Claude Code session hooks in this repo and check your setup (DEC-1926)')
|
|
256
|
+
.option('--dry-run', 'Print the hooks it would add without writing .claude/settings.json')
|
|
257
|
+
.action(async (opts) => {
|
|
258
|
+
await runInit({ dryRun: opts.dryRun });
|
|
450
259
|
});
|
|
451
260
|
program
|
|
452
261
|
.command('connect <token>')
|
|
453
|
-
.description('Redeem an onboarding token and save your API key locally (FEAT-958). Uses CONVEX_SITE_URL if set, otherwise the production gateway. Override with --gateway or PB_CONNECT_GATEWAY_URL.
|
|
262
|
+
.description('Redeem an onboarding token and save your API key locally (FEAT-958). Uses CONVEX_SITE_URL if set, otherwise the production gateway. Override with --gateway or PB_CONNECT_GATEWAY_URL. In a non-interactive shell (e.g. CI), pass --yes to confirm the workspace, optionally with --name to label the key.')
|
|
454
263
|
.option('--gateway <url>', 'Override redeem gateway (default: CONVEX_SITE_URL or production). Use when token came from a different Convex deployment.')
|
|
455
|
-
.option('--name <label>', 'Optional label for this API key in workspace settings.
|
|
264
|
+
.option('--name <label>', 'Optional label for this API key in workspace settings. Skips the key-label prompt when set.')
|
|
265
|
+
.option('-y, --yes', 'Skip the interactive workspace confirmation. Required to connect in a non-interactive shell (e.g. CI).')
|
|
456
266
|
.action(async (token, opts) => {
|
|
457
267
|
if (!token?.trim()) {
|
|
458
268
|
program.commands.find((c) => c.name() === 'connect')?.help();
|
|
459
269
|
return;
|
|
460
270
|
}
|
|
461
|
-
await runConnect(token.trim(), { gateway: opts.gateway, name: opts.name });
|
|
271
|
+
await runConnect(token.trim(), { gateway: opts.gateway, name: opts.name, assumeYes: opts.yes });
|
|
462
272
|
});
|
|
463
273
|
program
|
|
464
274
|
.command('login')
|
|
@@ -482,40 +292,12 @@ program
|
|
|
482
292
|
await runWhoami();
|
|
483
293
|
});
|
|
484
294
|
program
|
|
485
|
-
.command('
|
|
486
|
-
.description('
|
|
487
|
-
.
|
|
488
|
-
|
|
489
|
-
});
|
|
490
|
-
program
|
|
491
|
-
.command('setup-detect-surfaces')
|
|
492
|
-
.description('Detect local surface markers and union-merge into manifest.surfaces (STD-235 forward-only)')
|
|
493
|
-
.action(async () => {
|
|
494
|
-
const result = await runSetupDetectSurfaces();
|
|
495
|
-
if (process.stdout.isTTY) {
|
|
496
|
-
process.stdout.write(formatDetectSurfacesSummary(result) + '\n');
|
|
497
|
-
}
|
|
498
|
-
else {
|
|
499
|
-
process.stderr.write(formatDetectSurfacesSummary(result) + '\n');
|
|
500
|
-
}
|
|
501
|
-
});
|
|
502
|
-
program
|
|
503
|
-
.command('setup-state')
|
|
504
|
-
.description('Emit compact JSON of getPbSetupState (machine-readable, used by the pb-setup skill body)')
|
|
505
|
-
.action(async () => {
|
|
506
|
-
await runSetupState();
|
|
507
|
-
});
|
|
508
|
-
// WP-439 S2: setup-asset orphan audit. Read-only diagnostic; exits 1 if any
|
|
509
|
-
// setup_asset row has a broken body wiring (will fail at handshake).
|
|
510
|
-
// WP-439 S3: --repair attempts to restore class III/II orphans from STARTER_*
|
|
511
|
-
// constants. Class I (inline-only) and IV (hash drift) are NOT touched.
|
|
512
|
-
program
|
|
513
|
-
.command('setup-audit')
|
|
514
|
-
.description('Audit setup_asset rows for orphaned bodies (WP-439 S2/S3). Exits 1 if any orphan or repair-failure.')
|
|
515
|
-
.option('--json', 'Emit machine-readable JSON (overrides pretty output for this command)')
|
|
516
|
-
.option('--repair', 'Attempt to restore class III/II orphans from STARTER_* constants (WP-439 S3)')
|
|
295
|
+
.command('files')
|
|
296
|
+
.description('Show which .productbrain files are pb-owned vs committed, and what writes each.')
|
|
297
|
+
.option('--fix', 'Add any exposed pb-owned files to .gitignore (idempotent)')
|
|
298
|
+
.option('--dry-run', 'With --fix: preview the .gitignore lines without writing')
|
|
517
299
|
.action(async (opts) => {
|
|
518
|
-
await
|
|
300
|
+
await runFiles({ fix: opts.fix, dryRun: opts.dryRun });
|
|
519
301
|
});
|
|
520
302
|
// --- Write commands (require active session) ---
|
|
521
303
|
const sessionCmd = program
|
|
@@ -523,11 +305,11 @@ const sessionCmd = program
|
|
|
523
305
|
.description('Manage write sessions (DEC-9: sessions required before write access)');
|
|
524
306
|
sessionCmd
|
|
525
307
|
.command('start')
|
|
526
|
-
.description('Start a tracked write session
|
|
308
|
+
.description('Start a tracked write session')
|
|
527
309
|
.option('--json', 'Output machine-readable JSON (deprecated: use global --json flag)')
|
|
528
|
-
.
|
|
529
|
-
|
|
530
|
-
});
|
|
310
|
+
.option('--conversation <id>', 'Explicit conversation identity override (WP-479 E2) — takes priority over env-detected channels. Pair with PB_CONVERSATION_ID=<id> so later bare pb commands (orient, capture) attribute to the same conversation — they resolve identity from env only')
|
|
311
|
+
.option('--role <entry-id>', 'Role to act as this session (DEC-1715) — only needed if you hold more than one; the error lists your roles if omitted. Default: "role" in .productbrain/config.local.json (DEC-1961)').option('--team <entry-id>', 'Team the --role is held in (TASK-801) — only needed if you hold that role in more than one team') // WP-753 O1a same-line (STD-2)
|
|
312
|
+
.action(async (opts) => { await runSessionStart(opts); });
|
|
531
313
|
sessionCmd
|
|
532
314
|
.command('id')
|
|
533
315
|
.description('Print current session ID to stdout (machine-readable, TEN-707)')
|
|
@@ -536,14 +318,24 @@ sessionCmd
|
|
|
536
318
|
});
|
|
537
319
|
sessionCmd
|
|
538
320
|
.command('close')
|
|
539
|
-
.description('Close the active session (wrapup
|
|
321
|
+
.description('Close the active session (wrapup)')
|
|
540
322
|
.option('--force', 'Clear local session state even if server close fails')
|
|
541
|
-
.
|
|
542
|
-
|
|
323
|
+
.option('--conversation <id>', 'Close the session started with this --conversation <id>, so the next start on it resumes (TEN-4855)')
|
|
324
|
+
.action(async (opts) => { await runSessionClose(opts); });
|
|
325
|
+
// WP-479 E4: traceback + quota observability.
|
|
326
|
+
sessionCmd
|
|
327
|
+
.command('list')
|
|
328
|
+
.description('List active sessions (with quota gauge) + recent non-active ones (WP-479 E4)')
|
|
329
|
+
.action(async () => {
|
|
330
|
+
await runSessionList();
|
|
331
|
+
});
|
|
332
|
+
sessionCmd
|
|
333
|
+
.command('show <id-or-conversation>')
|
|
334
|
+
.description('Show a conversation\'s full session lineage + governance serves (WP-479 E4)')
|
|
335
|
+
.action(async (idOrConversation) => {
|
|
336
|
+
await runSessionShow(idOrConversation);
|
|
543
337
|
});
|
|
544
|
-
// TEN-2189 / WP-456 E2: hard-reset worktree-local session state (no resume marker)
|
|
545
|
-
// + clear the PREVIEW_MODE marker. Recovery path for a session stranded on the wrong
|
|
546
|
-
// workspace after a pb:preview/pb:real binding flip.
|
|
338
|
+
// TEN-2189 / WP-456 E2: hard-reset worktree-local session state (no resume marker) + clear the PREVIEW_MODE marker. Recovery path for a session stranded on the wrong workspace after a pb:preview/pb:real binding flip.
|
|
547
339
|
sessionCmd
|
|
548
340
|
.command('reset')
|
|
549
341
|
.description('Hard-reset local session state (discard session.json + clear PREVIEW_MODE)')
|
|
@@ -555,17 +347,18 @@ program
|
|
|
555
347
|
.command('capture [text...]')
|
|
556
348
|
.description('Capture knowledge to the Chain (requires active session)')
|
|
557
349
|
.option('-n, --name <name>', 'Entry name (defaults to capture text)')
|
|
558
|
-
.option('-d, --description <desc>', 'Entry description (defaults to capture text)')
|
|
350
|
+
.option('-d, --description <desc>', 'Entry description, in Markdown (defaults to capture text)')
|
|
559
351
|
.option('-c, --collection <slug>', 'Explicit collection (skip auto-classification)')
|
|
560
|
-
.option('-
|
|
561
|
-
.option('-
|
|
352
|
+
.option('-f, --field <key=value>', 'Set a data field (repeatable; checklist: -f doneWhen="a" -f doneWhen="b", one item per flag)', (val, prev) => [...prev, val], [])
|
|
353
|
+
.option('-l, --link <entry-id>', 'Link to an existing entry by id or name (repeatable; pairs with the -t in the same position)', (val, prev) => [...prev, val], [])
|
|
354
|
+
.option('-t, --link-type <relation-type>', 'Relation type for the -l in the same position; one per --link, no default (WP-688 S4)', (val, prev) => [...prev, val], [])
|
|
562
355
|
.option('--source-ref <ref>', 'Source reference URI (BET-240 E2: e.g. "meeting-2026-03-28.md")')
|
|
563
356
|
.option('--source-excerpt <text>', 'Verbatim source excerpt (BET-240 E2)')
|
|
564
|
-
|
|
565
|
-
.option('--draft', 'Force the entry to draft regardless of workspace governance mode (TEN-2226)')
|
|
357
|
+
.option('--draft', 'Force the entry to draft regardless of workspace governance mode — opt-in override, keeps it draft even in Open mode (TEN-2226 / WP-456 E1)')
|
|
566
358
|
.option('--json', 'Output machine-readable JSON (deprecated: use global --json flag)')
|
|
567
|
-
.option('--
|
|
568
|
-
.option('--
|
|
359
|
+
.option('--owner-role <entry-id>', 'Existing Role entry ID to create AS OWNER of (WP-513 rung 2; you must hold it, and its team is the one you hold it in: root first, else the shallowest)') // WP-753 O1b: --owner-team deleted, default owner resolves from the session's acting role.
|
|
360
|
+
.option('--team <team-ref>', 'For a role: the team it is born in. For a team: its parent. Defaults to the root team (TASK-681, DEC-1976)')
|
|
361
|
+
.option('--entry-type <canonical-key>', 'Explicit canonical type for the new entry (e.g. objective, key_result) — bypasses classification; -t/--link-type is the --link relation type (WP-684 TASK-77)')
|
|
569
362
|
.action(async (textParts = [], opts) => {
|
|
570
363
|
const text = textParts.join(' ').trim();
|
|
571
364
|
if (!text && !opts.name) {
|
|
@@ -573,117 +366,61 @@ program
|
|
|
573
366
|
return;
|
|
574
367
|
}
|
|
575
368
|
await runCapture({
|
|
576
|
-
text: text || opts.name || '',
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
collection: opts.collection,
|
|
580
|
-
link: opts.link,
|
|
581
|
-
type: opts.type,
|
|
582
|
-
sourceRef: opts.sourceRef,
|
|
583
|
-
sourceExcerpt: opts.sourceExcerpt,
|
|
584
|
-
draft: opts.draft,
|
|
585
|
-
json: opts.json,
|
|
586
|
-
suggestOnly: opts.suggestOnly,
|
|
587
|
-
strict: opts.strict,
|
|
369
|
+
text: text || opts.name || '', name: opts.name, description: opts.description, collection: opts.collection,
|
|
370
|
+
field: opts.field, link: opts.link, linkType: opts.linkType, sourceRef: opts.sourceRef, sourceExcerpt: opts.sourceExcerpt,
|
|
371
|
+
draft: opts.draft, json: opts.json, ownerRole: opts.ownerRole, entryType: opts.entryType, team: opts.team,
|
|
588
372
|
});
|
|
589
373
|
});
|
|
590
374
|
// --- Update command (TEN-703) ---
|
|
591
375
|
program
|
|
592
376
|
.command('update <entry-id>')
|
|
593
377
|
.description('Update fields on an existing Chain entry (requires active session)')
|
|
594
|
-
.option('-f, --field <key=value>', 'Set a data field (repeatable)', (val, prev) => [...prev, val], [])
|
|
378
|
+
.option('-f, --field <key=value>', 'Set a data field (repeatable; checklist: -f doneWhen="a" -f doneWhen="b", one item per flag)', (val, prev) => [...prev, val], [])
|
|
595
379
|
.option('--name <name>', 'Update entry name')
|
|
596
|
-
.option('--status <status>', 'Update entry status (draft |
|
|
380
|
+
.option('--status <status>', 'Update entry status (draft | archived) — accepted is set via `pb entry accept`; active/deprecated are legacy and refused')
|
|
597
381
|
.option('--workflow-status <status>', 'Set workflow status (server-validated)')
|
|
598
|
-
.option('--
|
|
382
|
+
.option('--type <canonical-key>', 'Reclassify a DRAFT entry to another canonical type (immutable once committed — supersede instead)')
|
|
383
|
+
.option('--note <text>', 'Change note for history').option('--change-reason <text>', 'Why what the entry promises is changing (required for a promise-field change)')
|
|
384
|
+
.option('--override-reason <text>', 'Why (≥12 chars) to clear a steering coherency block or keep a text its quality checklist failed — recorded as an override with who wrote it')
|
|
385
|
+
.option('--acknowledge <response>', 'Respond to a coherency challenge: linked | accepted-fix | diverged (WP-465)')
|
|
386
|
+
.option('--ack-entry <entry-id>', 'Authorizing entry for --acknowledge linked / accepted-fix')
|
|
387
|
+
.option('--ack-reason <text>', 'Divergence rationale (≥12 chars) for --acknowledge diverged')
|
|
388
|
+
// Commander camelCases every flag to exactly the UpdateOptions key it feeds, so the options
|
|
389
|
+
// object spreads straight through. The previous hand-written 1:1 mapping had to be edited twice
|
|
390
|
+
// per new flag (once here, once in the type) and silently dropped anything you forgot.
|
|
599
391
|
.action(async (entryId, opts) => {
|
|
600
|
-
await runUpdate({
|
|
601
|
-
entryId,
|
|
602
|
-
field: opts.field,
|
|
603
|
-
name: opts.name,
|
|
604
|
-
status: opts.status,
|
|
605
|
-
workflowStatus: opts.workflowStatus,
|
|
606
|
-
note: opts.note,
|
|
607
|
-
});
|
|
392
|
+
await runUpdate({ entryId, ...opts });
|
|
608
393
|
});
|
|
609
|
-
// ---
|
|
394
|
+
// --- Restore command (WP-514 review round 2, P1) ---
|
|
610
395
|
program
|
|
611
|
-
.command('
|
|
612
|
-
.description('
|
|
613
|
-
.action(async (entryId) => {
|
|
396
|
+
.command('restore <entry-id>')
|
|
397
|
+
.description('Restore an archived Chain entry to draft (requires active session + rung-3 authority coverage)')
|
|
398
|
+
.action(async (entryId) => { await runRestore(entryId); });
|
|
399
|
+
// --- Entry noun-scoped commands (DEC-1574, WP-640 S4) — registerEntryCommands.ts ---
|
|
400
|
+
registerEntryCommands(program);
|
|
401
|
+
registerTensionsCommands(program); // WP-768 L0: same-line combine, module-health shrink-only budget
|
|
402
|
+
// --- Promote command (Wave 2 CLI Polish) ---
|
|
403
|
+
program.command('verify <entry-id>').description('Mark an entry as verified (BET-240: source fidelity trust signal)').action(async (entryId) => {
|
|
614
404
|
if (!entryId?.trim()) {
|
|
615
405
|
program.commands.find((c) => c.name() === 'verify')?.help();
|
|
616
406
|
return;
|
|
617
407
|
}
|
|
618
408
|
await runVerify({ entryId: entryId.trim() });
|
|
619
409
|
});
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
.action(async (entryId, opts) => {
|
|
625
|
-
await runPromote({ entryId, message: opts.message });
|
|
626
|
-
});
|
|
627
|
-
// --- Relate / Unrelate commands (TEN-704) ---
|
|
628
|
-
program
|
|
629
|
-
.command('relate <from-id> <type> <to-id>')
|
|
630
|
-
.description('Add a typed relation between two entries (requires active session)')
|
|
631
|
-
.option('--if-missing', 'Only create relation if it does not already exist')
|
|
632
|
-
.action(async (fromId, type, toId, opts) => {
|
|
633
|
-
await runRelate({ fromId, type, toId, ifMissing: opts.ifMissing });
|
|
634
|
-
});
|
|
635
|
-
program
|
|
636
|
-
.command('unrelate <from-id> <type> <to-id>')
|
|
637
|
-
.description('Remove a typed relation between two entries (requires active session)')
|
|
638
|
-
.action(async (fromId, type, toId) => {
|
|
639
|
-
await runUnrelate({ fromId, type, toId });
|
|
640
|
-
});
|
|
641
|
-
// --- Ingest command (BET-81) ---
|
|
642
|
-
program
|
|
643
|
-
.command('ingest <pattern>')
|
|
644
|
-
.description('Bulk ingest documents to Chain as drafts')
|
|
645
|
-
.option('--dry-run', 'Stage entries without auto-committing. Shows summary only.')
|
|
646
|
-
.option('--resume', 'Skip files whose sourceRef is already committed in staging.')
|
|
647
|
-
.option('--concurrency <n>', 'Process up to N files in parallel (default 1, max 5).', '1')
|
|
648
|
-
.action(async (pattern, opts) => {
|
|
649
|
-
const concurrency = parseInt(opts.concurrency ?? '1', 10);
|
|
650
|
-
if (Number.isNaN(concurrency) || concurrency < 1) {
|
|
651
|
-
throw new CLIError('--concurrency must be a positive integer.', {
|
|
652
|
-
code: ErrorCode.VALIDATION_FAILED,
|
|
653
|
-
category: 'validation',
|
|
654
|
-
});
|
|
655
|
-
}
|
|
656
|
-
await runIngest({
|
|
657
|
-
pattern,
|
|
658
|
-
dryRun: opts.dryRun,
|
|
659
|
-
resume: opts.resume,
|
|
660
|
-
concurrency,
|
|
661
|
-
});
|
|
662
|
-
});
|
|
663
|
-
// --- migrate:setup command (WP-345 S0b) ---
|
|
664
|
-
program
|
|
665
|
-
.command('migrate:setup')
|
|
666
|
-
.description('Migrate .productbrain/skills|rules|hooks/*.md into the DB setup-assets collection (WP-345)')
|
|
667
|
-
.option('--dry-run', 'Show what would be migrated without writing to DB.')
|
|
668
|
-
.option('--cwd <path>', 'Override working directory (default: process.cwd())')
|
|
669
|
-
.action(async (opts) => {
|
|
670
|
-
const { runMigrateSetup } = await import('./commands/migrate-setup.js');
|
|
671
|
-
await runMigrateSetup({ dryRun: opts.dryRun, cwd: opts.cwd });
|
|
672
|
-
});
|
|
673
|
-
// --- setup:ingest command (WP-345 S3) ---
|
|
674
|
-
program
|
|
675
|
-
.command('setup:ingest <path>')
|
|
676
|
-
.description('Push a single .productbrain skill/rule/hook file to the DB setup-assets SSOT (WP-345)')
|
|
677
|
-
.option('--dry-run', 'Show what would be ingested without writing to DB.')
|
|
678
|
-
.option('--json', 'Output machine-readable JSON (deprecated: use global --json flag)')
|
|
679
|
-
.action(async (filePath, opts) => {
|
|
680
|
-
if (!filePath?.trim()) {
|
|
681
|
-
program.commands.find((c) => c.name() === 'setup:ingest')?.help();
|
|
410
|
+
// TASK-384 S1: distinct from verify (attestation) — the holder of the owning role (else the nearest seated Team Lead) confirms accuracy; no content/version change.
|
|
411
|
+
program.command('still-true <entry-id>').description('Confirm an entry is still true (the holder of the owning role, else the nearest seated Team Lead)').action(async (entryId) => {
|
|
412
|
+
if (!entryId?.trim()) {
|
|
413
|
+
program.commands.find((c) => c.name() === 'still-true')?.help();
|
|
682
414
|
return;
|
|
683
415
|
}
|
|
684
|
-
|
|
685
|
-
await runSetupIngest(filePath.trim(), { dryRun: opts.dryRun });
|
|
416
|
+
await runStillTrue({ entryId: entryId.trim() });
|
|
686
417
|
});
|
|
418
|
+
// registerProposalCommands(program) deleted (WP-776 S2a, DEC-1771) — `pb accept`/`pb reject`/`pb proposals` are gone.
|
|
419
|
+
registerOutcomeCommands(program);
|
|
420
|
+
registerRoleCommands(program); // WP-722 S2 outcome; WP-730 S2 role — registerOutcomeCommands.ts / registerRoleCommands.ts
|
|
421
|
+
// --- Relate / Unrelate commands (TEN-704) — registerEntryCommands.ts (WP-688 S2a: moved off
|
|
422
|
+
// this shrink-only file to fund the --dry-run flag) ---
|
|
423
|
+
registerRelateCommands(program);
|
|
687
424
|
// --- Fields command (BET-181 Slice 2) ---
|
|
688
425
|
program
|
|
689
426
|
.command('fields <collection>')
|
|
@@ -706,58 +443,6 @@ program
|
|
|
706
443
|
}
|
|
707
444
|
await runConstellation({ entryId: entryId.trim() });
|
|
708
445
|
});
|
|
709
|
-
// --- Audit command (BET-182 Slice 2) ---
|
|
710
|
-
program
|
|
711
|
-
.command('audit <entry-ids...>')
|
|
712
|
-
.description('Run hygiene audit on bet(s) — 13 gates (shaping) / 18 gates (handoff), exit code reflects verdict')
|
|
713
|
-
.option('--phase <phase>', 'Override phase detection (shaping | handoff)')
|
|
714
|
-
.option('--gate <name>', 'Run only specified gate(s) (repeatable)', (val, prev) => [...prev, val], [])
|
|
715
|
-
.option('--fix', 'Auto-execute exact fixes via pb update, rerun once')
|
|
716
|
-
.option('--verbose', 'Show all gates including PASS detail')
|
|
717
|
-
.action(async (entryIds, opts) => {
|
|
718
|
-
await runAudit({
|
|
719
|
-
entryIds: entryIds.map((id) => id.trim()).filter(Boolean),
|
|
720
|
-
phase: opts.phase,
|
|
721
|
-
gate: opts.gate,
|
|
722
|
-
fix: opts.fix,
|
|
723
|
-
verbose: opts.verbose,
|
|
724
|
-
});
|
|
725
|
-
});
|
|
726
|
-
program
|
|
727
|
-
.command('brand-pack')
|
|
728
|
-
.description('Internal marketing: structured community copy via OpenRouter (requires OPENROUTER_API_KEY). Forwards args to scripts/brand-pack.mjs')
|
|
729
|
-
.allowUnknownOption(true)
|
|
730
|
-
.allowExcessArguments(true)
|
|
731
|
-
.action(() => {
|
|
732
|
-
runBrandPack(process.argv);
|
|
733
|
-
});
|
|
734
|
-
// --- Governance proposal commands (BET-221 Slice 3) ---
|
|
735
|
-
program
|
|
736
|
-
.command('proposals')
|
|
737
|
-
.description('List open consent proposals with expiry countdown (BET-221)')
|
|
738
|
-
.action(async () => {
|
|
739
|
-
await runProposals();
|
|
740
|
-
});
|
|
741
|
-
program
|
|
742
|
-
.command('accept [proposal-id]')
|
|
743
|
-
.description('Approve a consent proposal by ID, or --auto to batch-approve all')
|
|
744
|
-
.option('-a, --auto', 'Auto-approve all open proposals (skip contradictions)')
|
|
745
|
-
.action(async (proposalId, opts) => {
|
|
746
|
-
if (!proposalId && !opts.auto) {
|
|
747
|
-
throw new CLIError('Usage: pb accept <proposal-id> or pb accept --auto', {
|
|
748
|
-
code: ErrorCode.VALIDATION_FAILED,
|
|
749
|
-
category: 'validation',
|
|
750
|
-
});
|
|
751
|
-
}
|
|
752
|
-
await runAccept({ proposalId, auto: opts.auto });
|
|
753
|
-
});
|
|
754
|
-
program
|
|
755
|
-
.command('reject <proposal-id>')
|
|
756
|
-
.description('Reject a consent proposal with a required reason (BR-7)')
|
|
757
|
-
.requiredOption('-r, --reason <text>', 'Reason for rejection (required)')
|
|
758
|
-
.action(async (proposalId, opts) => {
|
|
759
|
-
await runReject({ proposalId, reason: opts.reason });
|
|
760
|
-
});
|
|
761
446
|
// --- Collections command (BET-280 Slice 1) ---
|
|
762
447
|
const collectionsCmd = program
|
|
763
448
|
.command('collections')
|
|
@@ -793,109 +478,16 @@ collectionsCmd
|
|
|
793
478
|
// --- Workspace operator commands (WP-305 Slice 4) ---
|
|
794
479
|
const workspaceCmd = program
|
|
795
480
|
.command('workspace')
|
|
796
|
-
.description('Operator
|
|
481
|
+
.description('Operator command for workspace health (WP-305)');
|
|
797
482
|
workspaceCmd
|
|
798
483
|
.command('verify')
|
|
799
484
|
.description('Check workspace health — seeds, collections, glossary (admin only)')
|
|
800
485
|
.action(async () => {
|
|
801
486
|
await runWorkspaceVerify();
|
|
802
487
|
});
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
.action(async () => {
|
|
807
|
-
await runWorkspaceRepair();
|
|
808
|
-
});
|
|
809
|
-
const authorityDomainsCmd = program
|
|
810
|
-
.command('authority-domains')
|
|
811
|
-
.description('Operator commands for WP-354 authority-domain readiness and evidence');
|
|
812
|
-
authorityDomainsCmd
|
|
813
|
-
.command('propose')
|
|
814
|
-
.description('Generate authority-domain tag proposals')
|
|
815
|
-
.option('--dry-run', 'Preview without writing staging proposals')
|
|
816
|
-
.option('--limit <n>', 'Maximum governance entries to classify')
|
|
817
|
-
.option('--mock', 'Use deterministic mock classifier')
|
|
818
|
-
.action(async (opts) => {
|
|
819
|
-
await runAuthorityDomainsPropose(opts);
|
|
820
|
-
});
|
|
821
|
-
authorityDomainsCmd
|
|
822
|
-
.command('review')
|
|
823
|
-
.description('List authority-domain tag proposals')
|
|
824
|
-
.option('--status <status>', 'pending, committed, rejected, or skipped', 'pending')
|
|
825
|
-
.option('--limit <n>', 'Maximum proposals to list')
|
|
826
|
-
.option('--sample <n>', 'Return a stable proposal sample')
|
|
827
|
-
.option('--stratified', 'Stratify sample across proposed domain and source collection')
|
|
828
|
-
.action(async (opts) => {
|
|
829
|
-
await runAuthorityDomainsReview(opts);
|
|
830
|
-
});
|
|
831
|
-
const authorityDomainsSampleCmd = authorityDomainsCmd
|
|
832
|
-
.command('sample')
|
|
833
|
-
.description('Manage human-reviewed authority-domain proposal samples');
|
|
834
|
-
authorityDomainsSampleCmd
|
|
835
|
-
.command('record')
|
|
836
|
-
.description('Record human-reviewed sample accuracy for authority-domain proposals')
|
|
837
|
-
.requiredOption('--sample-id <id>', 'Stable sample identifier from the review packet')
|
|
838
|
-
.option('--run-id <id>', 'Proposal run identifier')
|
|
839
|
-
.requiredOption('--approved <n>', 'Count of sampled proposals approved as-is')
|
|
840
|
-
.requiredOption('--rejected <n>', 'Count of sampled proposals rejected')
|
|
841
|
-
.requiredOption('--corrected <n>', 'Count of sampled proposals corrected to another domain')
|
|
842
|
-
.action(async (opts) => {
|
|
843
|
-
await runAuthorityDomainsRecordSample(opts);
|
|
844
|
-
});
|
|
845
|
-
authorityDomainsCmd
|
|
846
|
-
.command('ratify <proposal-id>')
|
|
847
|
-
.description('Ratify an authority-domain tag proposal')
|
|
848
|
-
.option('--note <note>', 'Review note')
|
|
849
|
-
.action(async (proposalId, opts) => {
|
|
850
|
-
await runAuthorityDomainsRatify(proposalId, opts);
|
|
851
|
-
});
|
|
852
|
-
authorityDomainsCmd
|
|
853
|
-
.command('reject <proposal-id>')
|
|
854
|
-
.description('Reject an authority-domain tag proposal')
|
|
855
|
-
.option('--reason <reason>', 'Rejection reason')
|
|
856
|
-
.action(async (proposalId, opts) => {
|
|
857
|
-
await runAuthorityDomainsReject(proposalId, opts);
|
|
858
|
-
});
|
|
859
|
-
authorityDomainsCmd
|
|
860
|
-
.command('discard-pending')
|
|
861
|
-
.description('Reject all pending authority-domain tag proposals after a failed batch diagnosis')
|
|
862
|
-
.option('--reason <reason>', 'Discard reason')
|
|
863
|
-
.action(async (opts) => {
|
|
864
|
-
await runAuthorityDomainsDiscardPending(opts);
|
|
865
|
-
});
|
|
866
|
-
authorityDomainsCmd
|
|
867
|
-
.command('readiness')
|
|
868
|
-
.description('Show WP-354 authority-domain readiness, evidence gap, and next action')
|
|
869
|
-
.action(async () => {
|
|
870
|
-
await runAuthorityDomainsReadiness();
|
|
871
|
-
});
|
|
872
|
-
authorityDomainsCmd
|
|
873
|
-
.command('benchmark')
|
|
874
|
-
.description('Run and persist the WP-354 authority-domain benchmark')
|
|
875
|
-
.action(async () => {
|
|
876
|
-
await runAuthorityDomainsBenchmark();
|
|
877
|
-
});
|
|
878
|
-
authorityDomainsCmd
|
|
879
|
-
.command('activate-cutover')
|
|
880
|
-
.description('Activate graph retrieval after WP-354 evidence gates pass')
|
|
881
|
-
.option('--force-pre-production', 'Bypass the permanently-locked valueProof gate (requires --dec-id, DEC-864)')
|
|
882
|
-
.option('--dec-id <decId>', 'Chain DEC ID authorizing the bypass')
|
|
883
|
-
.action(async (opts) => {
|
|
884
|
-
await runAuthorityDomainsActivateCutover({ forcePreProduction: opts.forcePreProduction, decId: opts.decId });
|
|
885
|
-
});
|
|
886
|
-
authorityDomainsCmd
|
|
887
|
-
.command('deactivate-cutover')
|
|
888
|
-
.description('Deactivate the active WP-354 authorityDomain cutover for this workspace (DEC-864 rollback).')
|
|
889
|
-
.option('--clerk-user-id <clerkUserId>', 'Override the Clerk user ID for audit trail')
|
|
890
|
-
.action(async (opts) => {
|
|
891
|
-
await runAuthorityDomainsDeactivateCutover({ clerkUserId: opts.clerkUserId });
|
|
892
|
-
});
|
|
893
|
-
authorityDomainsCmd
|
|
894
|
-
.command('principle-distribution')
|
|
895
|
-
.description('Pre-merge gate: check governance category match rate for principles entries')
|
|
896
|
-
.action(async () => {
|
|
897
|
-
await runAuthorityDomainsPrincipleDistribution();
|
|
898
|
-
});
|
|
488
|
+
// D3a (WP-754/TASK-213): the entire `authority-domains` CLI command tree deleted — its backing
|
|
489
|
+
// HTTP gateway routes (convex/http.ts) and convex/authorityDomains.ts are deleted in this same
|
|
490
|
+
// slice, so every one of these subcommands would call a route that no longer exists.
|
|
899
491
|
// --- Definitions diff command (WP-305 Slice 4) ---
|
|
900
492
|
const definitionsCmd = program
|
|
901
493
|
.command('definitions')
|
|
@@ -906,47 +498,6 @@ definitionsCmd
|
|
|
906
498
|
.action(async (file) => {
|
|
907
499
|
await runDefinitionsDiff({ file });
|
|
908
500
|
});
|
|
909
|
-
// --- Method commands (WP-329 S1: method visibility) ---
|
|
910
|
-
const methodCmd = program
|
|
911
|
-
.command('method')
|
|
912
|
-
.description('Inspect published methods (skills + rules) and their per-surface adapter status (WP-329)');
|
|
913
|
-
methodCmd
|
|
914
|
-
.command('ls')
|
|
915
|
-
.description('List all methods with version, published status, and adapter presence')
|
|
916
|
-
.action(async () => {
|
|
917
|
-
await runMethodList();
|
|
918
|
-
});
|
|
919
|
-
methodCmd
|
|
920
|
-
.command('show <name>')
|
|
921
|
-
.description('Show details for one method: frontmatter, Chain entry, and per-adapter fork status')
|
|
922
|
-
.action(async (name) => {
|
|
923
|
-
if (!name?.trim()) {
|
|
924
|
-
program.commands.find((c) => c.name() === 'method')?.help();
|
|
925
|
-
return;
|
|
926
|
-
}
|
|
927
|
-
await runMethodShow({ name: name.trim() });
|
|
928
|
-
});
|
|
929
|
-
methodCmd
|
|
930
|
-
.command('diff <name>')
|
|
931
|
-
.description('Show diff between local .productbrain/ source and last-published Chain version (WP-329 S2)')
|
|
932
|
-
.action(async (name) => {
|
|
933
|
-
if (!name?.trim()) {
|
|
934
|
-
program.commands.find((c) => c.name() === 'method')?.help();
|
|
935
|
-
return;
|
|
936
|
-
}
|
|
937
|
-
await runMethodDiff({ name: name.trim() });
|
|
938
|
-
});
|
|
939
|
-
methodCmd
|
|
940
|
-
.command('publish <name>')
|
|
941
|
-
.description('Publish a local .productbrain/ method (skill or rule) to the Chain methods collection (WP-329 S3)')
|
|
942
|
-
.option('--force', 'Publish even when local body matches the last-published version (override D4 no-op guard)')
|
|
943
|
-
.action(async (name, opts) => {
|
|
944
|
-
if (!name?.trim()) {
|
|
945
|
-
program.commands.find((c) => c.name() === 'method')?.help();
|
|
946
|
-
return;
|
|
947
|
-
}
|
|
948
|
-
await runMethodPublish({ name: name.trim(), force: opts.force });
|
|
949
|
-
});
|
|
950
501
|
// --- Profile commands (WP-302 Slice 2) ---
|
|
951
502
|
const profileCmd = program
|
|
952
503
|
.command('profile')
|
|
@@ -990,10 +541,10 @@ program
|
|
|
990
541
|
// --- Glossary command (WP-302 Slice 4) ---
|
|
991
542
|
program
|
|
992
543
|
.command('glossary')
|
|
993
|
-
.description('Show
|
|
544
|
+
.description('Show the four platform glossary terms; pb search <word> finds your team terms')
|
|
994
545
|
.action(() => {
|
|
995
546
|
if (isJsonMode()) {
|
|
996
|
-
process.stdout.write(JSON.stringify(
|
|
547
|
+
process.stdout.write(JSON.stringify(PLATFORM_GLOSSARY_TERMS) + '\n');
|
|
997
548
|
return;
|
|
998
549
|
}
|
|
999
550
|
const lines = [
|
|
@@ -1022,6 +573,12 @@ program
|
|
|
1022
573
|
});
|
|
1023
574
|
// --- Admin command group (WP-312 S2, FEAT-969) ---
|
|
1024
575
|
program.addCommand(createAdminCommand());
|
|
576
|
+
program.addCommand(createFeedbackCommand());
|
|
577
|
+
program.addCommand(createConflictsCommand());
|
|
578
|
+
program.addCommand(createQuestionCommand());
|
|
579
|
+
program.addCommand(createDirectionCommand());
|
|
580
|
+
program.addCommand(createOrganisationCommand());
|
|
581
|
+
program.addCommand(createAcceptPolicyCommand());
|
|
1025
582
|
// --- Upgrade command (WP-322 S1: ambient update notification) ---
|
|
1026
583
|
program
|
|
1027
584
|
.command('upgrade')
|
|
@@ -1029,6 +586,7 @@ program
|
|
|
1029
586
|
.action(async () => {
|
|
1030
587
|
await runUpgrade({ currentVersion: cliPackageVersion.version });
|
|
1031
588
|
});
|
|
1032
|
-
// Parse with global error handler —
|
|
589
|
+
// Parse with global error handler — every error routes through handleError, which alone prints it (TASK-959)
|
|
590
|
+
silenceCommanderErrors(program);
|
|
1033
591
|
program.parseAsync(process.argv).catch(handleError);
|
|
1034
592
|
//# sourceMappingURL=index.js.map
|