@productbrain/cli 0.1.0-beta.45 → 0.1.0-beta.4510
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 +3 -1
- package/dist/__tests__/adapters.test.js +54 -1
- package/dist/__tests__/adapters.test.js.map +1 -1
- package/dist/__tests__/audit.test.js +65 -44
- package/dist/__tests__/audit.test.js.map +1 -1
- package/dist/__tests__/authority-domains-queue.test.d.ts +2 -0
- package/dist/__tests__/authority-domains-queue.test.d.ts.map +1 -0
- package/dist/__tests__/authority-domains-queue.test.js +169 -0
- package/dist/__tests__/authority-domains-queue.test.js.map +1 -0
- package/dist/__tests__/authority-domains.test.d.ts +2 -0
- package/dist/__tests__/authority-domains.test.d.ts.map +1 -0
- package/dist/__tests__/authority-domains.test.js +48 -0
- package/dist/__tests__/authority-domains.test.js.map +1 -0
- package/dist/__tests__/canonicalRefs.vocab.test.d.ts +2 -0
- package/dist/__tests__/canonicalRefs.vocab.test.d.ts.map +1 -0
- package/dist/__tests__/canonicalRefs.vocab.test.js +251 -0
- package/dist/__tests__/canonicalRefs.vocab.test.js.map +1 -0
- 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 +89 -0
- package/dist/__tests__/capture-receipt-coaching.test.js.map +1 -0
- package/dist/__tests__/capture-receipt-domain.test.d.ts +2 -0
- package/dist/__tests__/capture-receipt-domain.test.d.ts.map +1 -0
- package/dist/__tests__/capture-receipt-domain.test.js +29 -0
- package/dist/__tests__/capture-receipt-domain.test.js.map +1 -0
- package/dist/__tests__/capture.test.js +625 -33
- package/dist/__tests__/capture.test.js.map +1 -1
- 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 +47 -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 +107 -0
- package/dist/__tests__/codex-prep-parity.test.js.map +1 -0
- package/dist/__tests__/collection-registry-seed-drift.test.d.ts +2 -0
- package/dist/__tests__/collection-registry-seed-drift.test.d.ts.map +1 -0
- package/dist/__tests__/collection-registry-seed-drift.test.js +58 -0
- package/dist/__tests__/collection-registry-seed-drift.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 +82 -0
- package/dist/__tests__/config-prod-fallthrough.test.js.map +1 -0
- package/dist/__tests__/config.test.d.ts +1 -1
- package/dist/__tests__/config.test.js +410 -10
- package/dist/__tests__/config.test.js.map +1 -1
- package/dist/__tests__/constants.test.js +6 -1
- package/dist/__tests__/constants.test.js.map +1 -1
- package/dist/__tests__/constellation.test.js +14 -14
- package/dist/__tests__/constellation.test.js.map +1 -1
- package/dist/__tests__/context-strategy.test.js +8 -8
- package/dist/__tests__/context-strategy.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 +82 -0
- package/dist/__tests__/entry-formatter.test.js.map +1 -0
- package/dist/__tests__/entryArchive.test.d.ts +2 -0
- package/dist/__tests__/entryArchive.test.d.ts.map +1 -0
- package/dist/__tests__/entryArchive.test.js +35 -0
- package/dist/__tests__/entryArchive.test.js.map +1 -0
- package/dist/__tests__/envelope-contract.test.d.ts +15 -0
- package/dist/__tests__/envelope-contract.test.d.ts.map +1 -0
- package/dist/__tests__/envelope-contract.test.js +152 -0
- package/dist/__tests__/envelope-contract.test.js.map +1 -0
- package/dist/__tests__/errors.test.js +26 -0
- package/dist/__tests__/errors.test.js.map +1 -1
- package/dist/__tests__/fields.test.js +20 -20
- 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 +121 -0
- package/dist/__tests__/gateway-timeout-body-phase.test.js.map +1 -0
- package/dist/__tests__/handshake-augment.test.d.ts +2 -0
- package/dist/__tests__/handshake-augment.test.d.ts.map +1 -0
- package/dist/__tests__/handshake-augment.test.js +424 -0
- package/dist/__tests__/handshake-augment.test.js.map +1 -0
- package/dist/__tests__/handshake-dormancy.test.d.ts +2 -0
- package/dist/__tests__/handshake-dormancy.test.d.ts.map +1 -0
- package/dist/__tests__/handshake-dormancy.test.js +207 -0
- package/dist/__tests__/handshake-dormancy.test.js.map +1 -0
- package/dist/__tests__/handshake-formatter.test.d.ts +2 -0
- package/dist/__tests__/handshake-formatter.test.d.ts.map +1 -0
- package/dist/__tests__/handshake-formatter.test.js +67 -0
- package/dist/__tests__/handshake-formatter.test.js.map +1 -0
- package/dist/__tests__/handshake-preview.test.d.ts +2 -0
- package/dist/__tests__/handshake-preview.test.d.ts.map +1 -0
- package/dist/__tests__/handshake-preview.test.js +950 -0
- package/dist/__tests__/handshake-preview.test.js.map +1 -0
- package/dist/__tests__/handshake.e2e.test.d.ts +2 -0
- package/dist/__tests__/handshake.e2e.test.d.ts.map +1 -0
- package/dist/__tests__/handshake.e2e.test.js +1255 -0
- package/dist/__tests__/handshake.e2e.test.js.map +1 -0
- package/dist/__tests__/handshake.test.js +787 -2
- package/dist/__tests__/handshake.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 +41 -0
- package/dist/__tests__/health-gap-kinds-drift.test.js.map +1 -0
- package/dist/__tests__/hook-intents.test.d.ts +2 -0
- package/dist/__tests__/hook-intents.test.d.ts.map +1 -0
- package/dist/__tests__/hook-intents.test.js +184 -0
- package/dist/__tests__/hook-intents.test.js.map +1 -0
- package/dist/__tests__/ingest.test.js +37 -28
- package/dist/__tests__/ingest.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__/manifest.test.d.ts +6 -0
- package/dist/__tests__/manifest.test.d.ts.map +1 -0
- package/dist/__tests__/manifest.test.js +255 -0
- package/dist/__tests__/manifest.test.js.map +1 -0
- package/dist/__tests__/method-publish-coherency.test.d.ts +9 -0
- package/dist/__tests__/method-publish-coherency.test.d.ts.map +1 -0
- package/dist/__tests__/method-publish-coherency.test.js +71 -0
- package/dist/__tests__/method-publish-coherency.test.js.map +1 -0
- package/dist/__tests__/method-registry.integration.test.d.ts +6 -0
- package/dist/__tests__/method-registry.integration.test.d.ts.map +1 -0
- package/dist/__tests__/method-registry.integration.test.js +17 -0
- package/dist/__tests__/method-registry.integration.test.js.map +1 -0
- package/dist/__tests__/method-registry.test.d.ts +12 -0
- package/dist/__tests__/method-registry.test.d.ts.map +1 -0
- package/dist/__tests__/method-registry.test.js +86 -0
- package/dist/__tests__/method-registry.test.js.map +1 -0
- package/dist/__tests__/notice-marker.test.d.ts +2 -0
- package/dist/__tests__/notice-marker.test.d.ts.map +1 -0
- package/dist/__tests__/notice-marker.test.js +41 -0
- package/dist/__tests__/notice-marker.test.js.map +1 -0
- package/dist/__tests__/onboarding-path-b.test.js +4 -4
- package/dist/__tests__/onboarding-path-b.test.js.map +1 -1
- package/dist/__tests__/orient.test.js +502 -12
- package/dist/__tests__/orient.test.js.map +1 -1
- package/dist/__tests__/perimeter.test.d.ts +2 -0
- package/dist/__tests__/perimeter.test.d.ts.map +1 -0
- package/dist/__tests__/perimeter.test.js +165 -0
- package/dist/__tests__/perimeter.test.js.map +1 -0
- package/dist/__tests__/personal-layer.test.d.ts +11 -0
- package/dist/__tests__/personal-layer.test.d.ts.map +1 -0
- package/dist/__tests__/personal-layer.test.js +268 -0
- package/dist/__tests__/personal-layer.test.js.map +1 -0
- package/dist/__tests__/preview-key-refresh.test.d.ts +2 -0
- package/dist/__tests__/preview-key-refresh.test.d.ts.map +1 -0
- package/dist/__tests__/preview-key-refresh.test.js +126 -0
- package/dist/__tests__/preview-key-refresh.test.js.map +1 -0
- package/dist/__tests__/profiles.test.js +250 -10
- package/dist/__tests__/profiles.test.js.map +1 -1
- package/dist/__tests__/promote-batch.test.d.ts +2 -0
- package/dist/__tests__/promote-batch.test.d.ts.map +1 -0
- package/dist/__tests__/promote-batch.test.js +185 -0
- package/dist/__tests__/promote-batch.test.js.map +1 -0
- package/dist/__tests__/promote.test.js +292 -23
- package/dist/__tests__/promote.test.js.map +1 -1
- package/dist/__tests__/proof-run.test.d.ts +2 -0
- package/dist/__tests__/proof-run.test.d.ts.map +1 -0
- package/dist/__tests__/proof-run.test.js +255 -0
- package/dist/__tests__/proof-run.test.js.map +1 -0
- package/dist/__tests__/proposals.test.js +19 -19
- package/dist/__tests__/proposals.test.js.map +1 -1
- package/dist/__tests__/rate-limit-resilience.test.d.ts +7 -0
- package/dist/__tests__/rate-limit-resilience.test.d.ts.map +1 -0
- package/dist/__tests__/rate-limit-resilience.test.js +207 -0
- package/dist/__tests__/rate-limit-resilience.test.js.map +1 -0
- package/dist/__tests__/relate.test.js +42 -14
- package/dist/__tests__/relate.test.js.map +1 -1
- 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 +103 -0
- package/dist/__tests__/route-latency-budget.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 +231 -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 +174 -0
- package/dist/__tests__/session-list-show.test.js.map +1 -0
- package/dist/__tests__/session-reset.test.d.ts +2 -0
- package/dist/__tests__/session-reset.test.d.ts.map +1 -0
- package/dist/__tests__/session-reset.test.js +138 -0
- package/dist/__tests__/session-reset.test.js.map +1 -0
- package/dist/__tests__/session-resume-backstop.test.d.ts +2 -0
- package/dist/__tests__/session-resume-backstop.test.d.ts.map +1 -0
- package/dist/__tests__/session-resume-backstop.test.js +99 -0
- package/dist/__tests__/session-resume-backstop.test.js.map +1 -0
- package/dist/__tests__/session-start-key-refresh.test.d.ts +2 -0
- package/dist/__tests__/session-start-key-refresh.test.d.ts.map +1 -0
- package/dist/__tests__/session-start-key-refresh.test.js +183 -0
- package/dist/__tests__/session-start-key-refresh.test.js.map +1 -0
- package/dist/__tests__/session-state-machine.test.d.ts +2 -0
- package/dist/__tests__/session-state-machine.test.d.ts.map +1 -0
- package/dist/__tests__/session-state-machine.test.js +379 -0
- package/dist/__tests__/session-state-machine.test.js.map +1 -0
- package/dist/__tests__/session-switch.test.d.ts +2 -0
- package/dist/__tests__/session-switch.test.d.ts.map +1 -0
- package/dist/__tests__/session-switch.test.js +132 -0
- package/dist/__tests__/session-switch.test.js.map +1 -0
- package/dist/__tests__/session-touch.test.js +16 -11
- package/dist/__tests__/session-touch.test.js.map +1 -1
- package/dist/__tests__/session.test.js +2 -2
- package/dist/__tests__/session.test.js.map +1 -1
- package/dist/__tests__/setup-ingest.test.d.ts +2 -0
- package/dist/__tests__/setup-ingest.test.d.ts.map +1 -0
- package/dist/__tests__/setup-ingest.test.js +71 -0
- package/dist/__tests__/setup-ingest.test.js.map +1 -0
- package/dist/__tests__/setup-resolver.test.d.ts +14 -0
- package/dist/__tests__/setup-resolver.test.d.ts.map +1 -0
- package/dist/__tests__/setup-resolver.test.js +228 -0
- package/dist/__tests__/setup-resolver.test.js.map +1 -0
- package/dist/__tests__/skill-vocabulary.test.d.ts +21 -0
- package/dist/__tests__/skill-vocabulary.test.d.ts.map +1 -0
- package/dist/__tests__/skill-vocabulary.test.js +192 -0
- package/dist/__tests__/skill-vocabulary.test.js.map +1 -0
- package/dist/__tests__/state.test.d.ts +6 -0
- package/dist/__tests__/state.test.d.ts.map +1 -0
- package/dist/__tests__/state.test.js +97 -0
- package/dist/__tests__/state.test.js.map +1 -0
- package/dist/__tests__/strip.test.js +31 -3
- package/dist/__tests__/strip.test.js.map +1 -1
- package/dist/__tests__/surfaces.test.d.ts +2 -0
- package/dist/__tests__/surfaces.test.d.ts.map +1 -0
- package/dist/__tests__/surfaces.test.js +46 -0
- package/dist/__tests__/surfaces.test.js.map +1 -0
- package/dist/__tests__/update-check.test.d.ts +2 -0
- package/dist/__tests__/update-check.test.d.ts.map +1 -0
- package/dist/__tests__/update-check.test.js +215 -0
- package/dist/__tests__/update-check.test.js.map +1 -0
- package/dist/__tests__/update.test.js +263 -22
- package/dist/__tests__/update.test.js.map +1 -1
- package/dist/__tests__/upgrade-runner.test.d.ts +2 -0
- package/dist/__tests__/upgrade-runner.test.d.ts.map +1 -0
- package/dist/__tests__/upgrade-runner.test.js +54 -0
- package/dist/__tests__/upgrade-runner.test.js.map +1 -0
- package/dist/__tests__/upgrade.test.d.ts +2 -0
- package/dist/__tests__/upgrade.test.d.ts.map +1 -0
- package/dist/__tests__/upgrade.test.js +56 -0
- package/dist/__tests__/upgrade.test.js.map +1 -0
- 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 +39 -0
- package/dist/__tests__/vocabulary-leak.test.d.ts.map +1 -0
- package/dist/__tests__/vocabulary-leak.test.js +539 -0
- package/dist/__tests__/vocabulary-leak.test.js.map +1 -0
- package/dist/__tests__/workspace.test.js +52 -32
- 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 +338 -0
- package/dist/__tests__/workspaceNotice.test.js.map +1 -0
- package/dist/commands/__tests__/connect-handoff.test.d.ts +11 -0
- package/dist/commands/__tests__/connect-handoff.test.d.ts.map +1 -0
- package/dist/commands/__tests__/connect-handoff.test.js +111 -0
- package/dist/commands/__tests__/connect-handoff.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 +156 -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__/setup-detect-surfaces.test.d.ts +15 -0
- package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts.map +1 -0
- package/dist/commands/__tests__/setup-detect-surfaces.test.js +149 -0
- package/dist/commands/__tests__/setup-detect-surfaces.test.js.map +1 -0
- package/dist/commands/__tests__/setup-state.test.d.ts +2 -0
- package/dist/commands/__tests__/setup-state.test.d.ts.map +1 -0
- package/dist/commands/__tests__/setup-state.test.js +194 -0
- package/dist/commands/__tests__/setup-state.test.js.map +1 -0
- package/dist/commands/accept.d.ts.map +1 -1
- package/dist/commands/accept.js +5 -5
- package/dist/commands/accept.js.map +1 -1
- package/dist/commands/admin/cockpit.d.ts +91 -0
- package/dist/commands/admin/cockpit.d.ts.map +1 -0
- package/dist/commands/admin/cockpit.js +617 -0
- package/dist/commands/admin/cockpit.js.map +1 -0
- package/dist/commands/admin/index.d.ts +54 -1
- package/dist/commands/admin/index.d.ts.map +1 -1
- package/dist/commands/admin/index.js +286 -16
- 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 +68 -0
- package/dist/commands/admin/index.test.js.map +1 -0
- package/dist/commands/admin/inspect.d.ts +21 -3
- package/dist/commands/admin/inspect.d.ts.map +1 -1
- package/dist/commands/admin/inspect.js +92 -33
- package/dist/commands/admin/inspect.js.map +1 -1
- package/dist/commands/admin/inspect.test.d.ts +2 -0
- package/dist/commands/admin/inspect.test.d.ts.map +1 -1
- package/dist/commands/admin/inspect.test.js +63 -13
- package/dist/commands/admin/inspect.test.js.map +1 -1
- package/dist/commands/admin/manage.d.ts +8 -0
- package/dist/commands/admin/manage.d.ts.map +1 -0
- package/dist/commands/admin/manage.js +260 -0
- package/dist/commands/admin/manage.js.map +1 -0
- package/dist/commands/admin/manage.test.d.ts +16 -0
- package/dist/commands/admin/manage.test.d.ts.map +1 -0
- package/dist/commands/admin/manage.test.js +159 -0
- package/dist/commands/admin/manage.test.js.map +1 -0
- package/dist/commands/admin/probe.d.ts +48 -0
- package/dist/commands/admin/probe.d.ts.map +1 -0
- package/dist/commands/admin/probe.js +191 -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 +146 -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 +68 -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 +146 -0
- package/dist/commands/admin/run.test.js.map +1 -0
- package/dist/commands/admin/seed.d.ts +46 -3
- package/dist/commands/admin/seed.d.ts.map +1 -1
- package/dist/commands/admin/seed.js +490 -73
- package/dist/commands/admin/seed.js.map +1 -1
- package/dist/commands/admin/seed.test.d.ts +5 -0
- package/dist/commands/admin/seed.test.d.ts.map +1 -1
- package/dist/commands/admin/seed.test.js +67 -5
- package/dist/commands/admin/seed.test.js.map +1 -1
- package/dist/commands/admin/seedRegistryEntries.generated.d.ts +14 -0
- package/dist/commands/admin/seedRegistryEntries.generated.d.ts.map +1 -0
- package/dist/commands/admin/seedRegistryEntries.generated.js +153 -0
- package/dist/commands/admin/seedRegistryEntries.generated.js.map +1 -0
- package/dist/commands/admin/seedRegistryEntries.test.d.ts +13 -0
- package/dist/commands/admin/seedRegistryEntries.test.d.ts.map +1 -0
- package/dist/commands/admin/seedRegistryEntries.test.js +91 -0
- package/dist/commands/admin/seedRegistryEntries.test.js.map +1 -0
- package/dist/commands/audit.d.ts.map +1 -1
- package/dist/commands/audit.js +42 -7
- package/dist/commands/audit.js.map +1 -1
- package/dist/commands/authority-domains.d.ts +157 -0
- package/dist/commands/authority-domains.d.ts.map +1 -0
- package/dist/commands/authority-domains.js +387 -0
- package/dist/commands/authority-domains.js.map +1 -0
- package/dist/commands/brief.d.ts.map +1 -1
- package/dist/commands/brief.js +9 -5
- package/dist/commands/brief.js.map +1 -1
- package/dist/commands/capture.d.ts +12 -0
- package/dist/commands/capture.d.ts.map +1 -1
- package/dist/commands/capture.js +266 -69
- package/dist/commands/capture.js.map +1 -1
- package/dist/commands/chain-walk.d.ts.map +1 -1
- package/dist/commands/chain-walk.js +2 -2
- package/dist/commands/chain-walk.js.map +1 -1
- package/dist/commands/changes.d.ts.map +1 -1
- package/dist/commands/changes.js +2 -2
- package/dist/commands/changes.js.map +1 -1
- package/dist/commands/codex-prep.d.ts +12 -1
- package/dist/commands/codex-prep.d.ts.map +1 -1
- package/dist/commands/codex-prep.js +19 -85
- package/dist/commands/codex-prep.js.map +1 -1
- package/dist/commands/collections.d.ts.map +1 -1
- package/dist/commands/collections.js +5 -5
- package/dist/commands/collections.js.map +1 -1
- package/dist/commands/conflicts.d.ts +40 -0
- package/dist/commands/conflicts.d.ts.map +1 -0
- package/dist/commands/conflicts.js +267 -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 +219 -0
- package/dist/commands/conflicts.test.js.map +1 -0
- package/dist/commands/connect-config.test.d.ts +2 -0
- package/dist/commands/connect-config.test.d.ts.map +1 -0
- package/dist/commands/connect-config.test.js +44 -0
- package/dist/commands/connect-config.test.js.map +1 -0
- package/dist/commands/connect-context.d.ts +45 -0
- package/dist/commands/connect-context.d.ts.map +1 -0
- package/dist/commands/connect-context.js +83 -0
- package/dist/commands/connect-context.js.map +1 -0
- package/dist/commands/connect-context.test.d.ts +2 -0
- package/dist/commands/connect-context.test.d.ts.map +1 -0
- package/dist/commands/connect-context.test.js +158 -0
- package/dist/commands/connect-context.test.js.map +1 -0
- package/dist/commands/connect-handoff.d.ts +51 -0
- package/dist/commands/connect-handoff.d.ts.map +1 -0
- package/dist/commands/connect-handoff.js +70 -0
- package/dist/commands/connect-handoff.js.map +1 -0
- package/dist/commands/connect-integration.test.js +58 -35
- 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 +109 -0
- package/dist/commands/connect-legacy-migration.test.js.map +1 -0
- package/dist/commands/connect-screens.d.ts +33 -0
- package/dist/commands/connect-screens.d.ts.map +1 -0
- package/dist/commands/connect-screens.js +124 -0
- package/dist/commands/connect-screens.js.map +1 -0
- package/dist/commands/connect.d.ts +27 -6
- package/dist/commands/connect.d.ts.map +1 -1
- package/dist/commands/connect.js +256 -119
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/connect.test.js +348 -7
- package/dist/commands/connect.test.js.map +1 -1
- package/dist/commands/constellation.d.ts.map +1 -1
- package/dist/commands/constellation.js +2 -2
- package/dist/commands/constellation.js.map +1 -1
- package/dist/commands/context.d.ts.map +1 -1
- package/dist/commands/context.js +2 -2
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/cross-cut.d.ts.map +1 -1
- package/dist/commands/cross-cut.js +2 -2
- 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 +92 -17
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/doctor.test.js +162 -2
- package/dist/commands/doctor.test.js.map +1 -1
- package/dist/commands/entryArchive.d.ts +8 -0
- package/dist/commands/entryArchive.d.ts.map +1 -0
- package/dist/commands/entryArchive.js +37 -0
- package/dist/commands/entryArchive.js.map +1 -0
- package/dist/commands/feedback.d.ts +36 -0
- package/dist/commands/feedback.d.ts.map +1 -0
- package/dist/commands/feedback.js +193 -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 +125 -0
- package/dist/commands/feedback.test.js.map +1 -0
- package/dist/commands/fields.d.ts.map +1 -1
- package/dist/commands/fields.js +2 -2
- 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/get.js +3 -3
- package/dist/commands/get.js.map +1 -1
- package/dist/commands/handshake.d.ts +223 -2
- package/dist/commands/handshake.d.ts.map +1 -1
- package/dist/commands/handshake.js +2106 -62
- package/dist/commands/handshake.js.map +1 -1
- package/dist/commands/ingest.d.ts.map +1 -1
- package/dist/commands/ingest.js +15 -6
- package/dist/commands/ingest.js.map +1 -1
- package/dist/commands/init.d.ts +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +1 -9
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +44 -19
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/method.d.ts +99 -0
- package/dist/commands/method.d.ts.map +1 -0
- package/dist/commands/method.js +804 -0
- package/dist/commands/method.js.map +1 -0
- package/dist/commands/migrate-setup.d.ts +18 -0
- package/dist/commands/migrate-setup.d.ts.map +1 -0
- package/dist/commands/migrate-setup.js +148 -0
- package/dist/commands/migrate-setup.js.map +1 -0
- package/dist/commands/organisation.d.ts +41 -0
- package/dist/commands/organisation.d.ts.map +1 -0
- package/dist/commands/organisation.js +353 -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 +233 -0
- package/dist/commands/organisation.test.js.map +1 -0
- package/dist/commands/organisationHierarchy.d.ts +8 -0
- package/dist/commands/organisationHierarchy.d.ts.map +1 -0
- package/dist/commands/organisationHierarchy.js +67 -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 +55 -0
- package/dist/commands/organisationHierarchy.test.js.map +1 -0
- package/dist/commands/organisationWrite.d.ts +18 -0
- package/dist/commands/organisationWrite.d.ts.map +1 -0
- package/dist/commands/organisationWrite.js +50 -0
- package/dist/commands/organisationWrite.js.map +1 -0
- package/dist/commands/orient.d.ts +131 -2
- package/dist/commands/orient.d.ts.map +1 -1
- package/dist/commands/orient.js +223 -7
- package/dist/commands/orient.js.map +1 -1
- package/dist/commands/profile.d.ts +11 -1
- package/dist/commands/profile.d.ts.map +1 -1
- package/dist/commands/profile.js +114 -26
- package/dist/commands/profile.js.map +1 -1
- package/dist/commands/promote.d.ts +12 -1
- package/dist/commands/promote.d.ts.map +1 -1
- package/dist/commands/promote.js +243 -57
- package/dist/commands/promote.js.map +1 -1
- package/dist/commands/proof-run.d.ts +51 -0
- package/dist/commands/proof-run.d.ts.map +1 -0
- package/dist/commands/proof-run.js +209 -0
- package/dist/commands/proof-run.js.map +1 -0
- package/dist/commands/proposals.d.ts.map +1 -1
- package/dist/commands/proposals.js +2 -2
- package/dist/commands/proposals.js.map +1 -1
- package/dist/commands/quality.d.ts +16 -0
- package/dist/commands/quality.d.ts.map +1 -0
- package/dist/commands/quality.js +29 -0
- package/dist/commands/quality.js.map +1 -0
- package/dist/commands/questions.d.ts +33 -0
- package/dist/commands/questions.d.ts.map +1 -0
- package/dist/commands/questions.js +300 -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 +175 -0
- package/dist/commands/questions.test.js.map +1 -0
- package/dist/commands/reject.d.ts.map +1 -1
- package/dist/commands/reject.js +5 -4
- package/dist/commands/reject.js.map +1 -1
- package/dist/commands/relate.d.ts.map +1 -1
- package/dist/commands/relate.js +31 -6
- 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/scoreboard.d.ts +28 -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.map +1 -1
- package/dist/commands/search.js +2 -2
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/session.d.ts +59 -7
- package/dist/commands/session.d.ts.map +1 -1
- package/dist/commands/session.js +483 -46
- package/dist/commands/session.js.map +1 -1
- package/dist/commands/setup-audit.d.ts +59 -0
- package/dist/commands/setup-audit.d.ts.map +1 -0
- package/dist/commands/setup-audit.js +250 -0
- package/dist/commands/setup-audit.js.map +1 -0
- package/dist/commands/setup-detect-surfaces.d.ts +38 -0
- package/dist/commands/setup-detect-surfaces.d.ts.map +1 -0
- package/dist/commands/setup-detect-surfaces.js +76 -0
- package/dist/commands/setup-detect-surfaces.js.map +1 -0
- package/dist/commands/setup-ingest.d.ts +17 -0
- package/dist/commands/setup-ingest.d.ts.map +1 -0
- package/dist/commands/setup-ingest.js +174 -0
- package/dist/commands/setup-ingest.js.map +1 -0
- package/dist/commands/setup-resolver.d.ts +58 -0
- package/dist/commands/setup-resolver.d.ts.map +1 -0
- package/dist/commands/setup-resolver.js +150 -0
- package/dist/commands/setup-resolver.js.map +1 -0
- package/dist/commands/setup-state.d.ts +42 -0
- package/dist/commands/setup-state.d.ts.map +1 -0
- package/dist/commands/setup-state.js +93 -0
- package/dist/commands/setup-state.js.map +1 -0
- package/dist/commands/setup.d.ts +17 -9
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +53 -152
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/shape.d.ts +16 -0
- package/dist/commands/shape.d.ts.map +1 -0
- package/dist/commands/shape.js +149 -0
- package/dist/commands/shape.js.map +1 -0
- package/dist/commands/shape.test.d.ts +2 -0
- package/dist/commands/shape.test.d.ts.map +1 -0
- package/dist/commands/shape.test.js +148 -0
- package/dist/commands/shape.test.js.map +1 -0
- package/dist/commands/update.d.ts +20 -0
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +91 -34
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/upgrade.d.ts +5 -0
- package/dist/commands/upgrade.d.ts.map +1 -0
- package/dist/commands/upgrade.js +110 -0
- package/dist/commands/upgrade.js.map +1 -0
- package/dist/commands/usage.d.ts +40 -0
- package/dist/commands/usage.d.ts.map +1 -0
- package/dist/commands/usage.js +214 -0
- package/dist/commands/usage.js.map +1 -0
- package/dist/commands/verify.d.ts.map +1 -1
- package/dist/commands/verify.js +9 -3
- package/dist/commands/verify.js.map +1 -1
- package/dist/commands/welcome.d.ts +21 -0
- package/dist/commands/welcome.d.ts.map +1 -0
- package/dist/commands/welcome.js +50 -0
- package/dist/commands/welcome.js.map +1 -0
- package/dist/commands/whoami.d.ts +12 -0
- package/dist/commands/whoami.d.ts.map +1 -0
- package/dist/commands/whoami.js +70 -0
- package/dist/commands/whoami.js.map +1 -0
- package/dist/commands/whoami.test.d.ts +2 -0
- package/dist/commands/whoami.test.d.ts.map +1 -0
- package/dist/commands/whoami.test.js +50 -0
- package/dist/commands/whoami.test.js.map +1 -0
- package/dist/commands/workspace.d.ts +76 -2
- package/dist/commands/workspace.d.ts.map +1 -1
- package/dist/commands/workspace.js +30 -6
- package/dist/commands/workspace.js.map +1 -1
- package/dist/formatters/__tests__/orient-possibleConflict.test.d.ts +2 -0
- package/dist/formatters/__tests__/orient-possibleConflict.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/orient-possibleConflict.test.js +68 -0
- package/dist/formatters/__tests__/orient-possibleConflict.test.js.map +1 -0
- package/dist/formatters/__tests__/orient-provenance.test.d.ts +7 -0
- package/dist/formatters/__tests__/orient-provenance.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/orient-provenance.test.js +548 -0
- package/dist/formatters/__tests__/orient-provenance.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 +159 -0
- package/dist/formatters/__tests__/session-list-show.test.js.map +1 -0
- package/dist/formatters/__tests__/session.test.d.ts +2 -0
- package/dist/formatters/__tests__/session.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/session.test.js +191 -0
- package/dist/formatters/__tests__/session.test.js.map +1 -0
- package/dist/formatters/audit.d.ts +6 -0
- package/dist/formatters/audit.d.ts.map +1 -1
- package/dist/formatters/audit.js.map +1 -1
- package/dist/formatters/capture.d.ts +8 -0
- package/dist/formatters/capture.d.ts.map +1 -1
- package/dist/formatters/capture.js +9 -0
- package/dist/formatters/capture.js.map +1 -1
- package/dist/formatters/coaching.d.ts +51 -0
- package/dist/formatters/coaching.d.ts.map +1 -0
- package/dist/formatters/coaching.js +46 -0
- package/dist/formatters/coaching.js.map +1 -0
- package/dist/formatters/conflicts.d.ts +69 -0
- package/dist/formatters/conflicts.d.ts.map +1 -0
- package/dist/formatters/conflicts.js +87 -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 +136 -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 +44 -0
- package/dist/formatters/entry.d.ts.map +1 -1
- package/dist/formatters/entry.js +70 -7
- package/dist/formatters/entry.js.map +1 -1
- package/dist/formatters/feedback.d.ts +56 -0
- package/dist/formatters/feedback.d.ts.map +1 -0
- package/dist/formatters/feedback.js +89 -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 +112 -0
- package/dist/formatters/feedback.test.js.map +1 -0
- package/dist/formatters/handshake.d.ts +39 -0
- package/dist/formatters/handshake.d.ts.map +1 -1
- package/dist/formatters/handshake.js +133 -3
- 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 +248 -8
- package/dist/formatters/orient.d.ts.map +1 -1
- package/dist/formatters/orient.js +277 -35
- 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 +146 -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 +70 -0
- package/dist/formatters/orient.rituals.test.js.map +1 -0
- package/dist/formatters/orient.shapeAdvisorySummary.test.d.ts +2 -0
- package/dist/formatters/orient.shapeAdvisorySummary.test.d.ts.map +1 -0
- package/dist/formatters/orient.shapeAdvisorySummary.test.js +62 -0
- package/dist/formatters/orient.shapeAdvisorySummary.test.js.map +1 -0
- package/dist/formatters/orientDegradation.d.ts +21 -0
- package/dist/formatters/orientDegradation.d.ts.map +1 -0
- package/dist/formatters/orientDegradation.js +33 -0
- package/dist/formatters/orientDegradation.js.map +1 -0
- package/dist/formatters/orientDirection.d.ts +77 -0
- package/dist/formatters/orientDirection.d.ts.map +1 -0
- package/dist/formatters/orientDirection.js +94 -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 +193 -0
- package/dist/formatters/orientDirection.test.js.map +1 -0
- package/dist/formatters/orientRetrievalMiss.d.ts +30 -0
- package/dist/formatters/orientRetrievalMiss.d.ts.map +1 -0
- package/dist/formatters/orientRetrievalMiss.js +24 -0
- package/dist/formatters/orientRetrievalMiss.js.map +1 -0
- package/dist/formatters/promote.d.ts +49 -0
- package/dist/formatters/promote.d.ts.map +1 -1
- package/dist/formatters/promote.js +40 -0
- package/dist/formatters/promote.js.map +1 -1
- package/dist/formatters/proposals.js +2 -2
- package/dist/formatters/proposals.js.map +1 -1
- package/dist/formatters/questions.d.ts +100 -0
- package/dist/formatters/questions.d.ts.map +1 -0
- package/dist/formatters/questions.js +146 -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 +184 -0
- package/dist/formatters/questions.test.js.map +1 -0
- package/dist/formatters/relate.d.ts +9 -0
- package/dist/formatters/relate.d.ts.map +1 -1
- package/dist/formatters/relate.js +5 -3
- 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 +62 -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 +164 -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 +303 -0
- package/dist/formatters/scoreboard.test.js.map +1 -0
- package/dist/formatters/search.d.ts.map +1 -1
- package/dist/formatters/search.js +17 -1
- 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 +46 -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 +61 -0
- package/dist/formatters/session-feedback.test.js.map +1 -0
- package/dist/formatters/session.d.ts +123 -5
- package/dist/formatters/session.d.ts.map +1 -1
- package/dist/formatters/session.js +317 -12
- package/dist/formatters/session.js.map +1 -1
- package/dist/formatters/shape.d.ts +54 -0
- package/dist/formatters/shape.d.ts.map +1 -0
- package/dist/formatters/shape.js +97 -0
- package/dist/formatters/shape.js.map +1 -0
- package/dist/formatters/shape.test.d.ts +2 -0
- package/dist/formatters/shape.test.d.ts.map +1 -0
- package/dist/formatters/shape.test.js +80 -0
- package/dist/formatters/shape.test.js.map +1 -0
- package/dist/formatters/spineCheck.d.ts +64 -0
- package/dist/formatters/spineCheck.d.ts.map +1 -0
- package/dist/formatters/spineCheck.js +92 -0
- package/dist/formatters/spineCheck.js.map +1 -0
- package/dist/formatters/update.d.ts +3 -0
- package/dist/formatters/update.d.ts.map +1 -1
- package/dist/formatters/update.js +4 -0
- package/dist/formatters/update.js.map +1 -1
- 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 +24 -0
- package/dist/generated/healthGapKinds.generated.js.map +1 -0
- package/dist/generated/routeLatencyBudget.generated.d.ts +55 -0
- package/dist/generated/routeLatencyBudget.generated.d.ts.map +1 -0
- package/dist/generated/routeLatencyBudget.generated.js +356 -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 +33 -0
- package/dist/generators/adapters.d.ts.map +1 -1
- package/dist/generators/adapters.js +64 -4
- package/dist/generators/adapters.js.map +1 -1
- package/dist/generators/archetypes.d.ts.map +1 -1
- package/dist/generators/archetypes.js +46 -9
- package/dist/generators/archetypes.js.map +1 -1
- package/dist/generators/archetypes.test.js +35 -0
- package/dist/generators/archetypes.test.js.map +1 -1
- package/dist/generators/boundary-manifest.d.ts +29 -0
- package/dist/generators/boundary-manifest.d.ts.map +1 -0
- package/dist/generators/boundary-manifest.js +183 -0
- package/dist/generators/boundary-manifest.js.map +1 -0
- package/dist/generators/boundary-manifest.real-file.test.d.ts +2 -0
- package/dist/generators/boundary-manifest.real-file.test.d.ts.map +1 -0
- package/dist/generators/boundary-manifest.real-file.test.js +70 -0
- package/dist/generators/boundary-manifest.real-file.test.js.map +1 -0
- package/dist/generators/boundary-manifest.test.d.ts +2 -0
- package/dist/generators/boundary-manifest.test.d.ts.map +1 -0
- package/dist/generators/boundary-manifest.test.js +91 -0
- package/dist/generators/boundary-manifest.test.js.map +1 -0
- package/dist/generators/chain-classifier-kernel-client-drift.test.d.ts +2 -0
- package/dist/generators/chain-classifier-kernel-client-drift.test.d.ts.map +1 -0
- package/dist/generators/chain-classifier-kernel-client-drift.test.js +41 -0
- package/dist/generators/chain-classifier-kernel-client-drift.test.js.map +1 -0
- package/dist/generators/chain-classifier.d.ts +67 -14
- package/dist/generators/chain-classifier.d.ts.map +1 -1
- package/dist/generators/chain-classifier.js +46 -174
- package/dist/generators/chain-classifier.js.map +1 -1
- package/dist/generators/chain-rules.d.ts +3 -3
- package/dist/generators/chain-rules.d.ts.map +1 -1
- package/dist/generators/chain-rules.js +118 -6
- package/dist/generators/chain-rules.js.map +1 -1
- package/dist/generators/chain-rules.test.js +273 -4
- package/dist/generators/chain-rules.test.js.map +1 -1
- package/dist/generators/context-md.js +6 -6
- package/dist/generators/context-md.js.map +1 -1
- package/dist/generators/manifest.d.ts +115 -0
- package/dist/generators/manifest.d.ts.map +1 -0
- package/dist/generators/manifest.js +277 -0
- package/dist/generators/manifest.js.map +1 -0
- package/dist/generators/portable-knowledge.d.ts +24 -2
- package/dist/generators/portable-knowledge.d.ts.map +1 -1
- package/dist/generators/portable-knowledge.js +97 -2
- package/dist/generators/portable-knowledge.js.map +1 -1
- package/dist/generators/portable-knowledge.test.js +43 -0
- package/dist/generators/portable-knowledge.test.js.map +1 -1
- package/dist/generators/region-projections.d.ts +18 -0
- package/dist/generators/region-projections.d.ts.map +1 -0
- package/dist/generators/region-projections.js +49 -0
- package/dist/generators/region-projections.js.map +1 -0
- package/dist/generators/region-projections.test.d.ts +2 -0
- package/dist/generators/region-projections.test.d.ts.map +1 -0
- package/dist/generators/region-projections.test.js +63 -0
- package/dist/generators/region-projections.test.js.map +1 -0
- package/dist/generators/region.d.ts +24 -0
- package/dist/generators/region.d.ts.map +1 -0
- package/dist/generators/region.js +87 -0
- package/dist/generators/region.js.map +1 -0
- package/dist/generators/region.test.d.ts +2 -0
- package/dist/generators/region.test.d.ts.map +1 -0
- package/dist/generators/region.test.js +126 -0
- package/dist/generators/region.test.js.map +1 -0
- package/dist/generators/surface-profiles.d.ts +1 -2
- package/dist/generators/surface-profiles.d.ts.map +1 -1
- package/dist/generators/surface-profiles.js.map +1 -1
- package/dist/index.d.ts +0 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +499 -145
- 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/activation.d.ts.map +1 -1
- package/dist/lib/activation.js +8 -4
- package/dist/lib/activation.js.map +1 -1
- package/dist/lib/activation.test.js +6 -6
- package/dist/lib/activation.test.js.map +1 -1
- package/dist/lib/canonicalRefs.d.ts +160 -0
- package/dist/lib/canonicalRefs.d.ts.map +1 -0
- package/dist/lib/canonicalRefs.js +169 -0
- package/dist/lib/canonicalRefs.js.map +1 -0
- package/dist/lib/client.d.ts +39 -15
- package/dist/lib/client.d.ts.map +1 -1
- package/dist/lib/client.js +195 -49
- package/dist/lib/client.js.map +1 -1
- package/dist/lib/collectionRegistry.d.ts +52 -0
- package/dist/lib/collectionRegistry.d.ts.map +1 -0
- package/dist/lib/collectionRegistry.js +118 -0
- package/dist/lib/collectionRegistry.js.map +1 -0
- 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 +48 -0
- package/dist/lib/compose-wrapup-view.d.ts.map +1 -0
- package/dist/lib/compose-wrapup-view.js +37 -0
- package/dist/lib/compose-wrapup-view.js.map +1 -0
- package/dist/lib/config.d.ts +149 -9
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +385 -53
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/connectKeyLabel.d.ts +9 -0
- package/dist/lib/connectKeyLabel.d.ts.map +1 -0
- package/dist/lib/connectKeyLabel.js +12 -0
- package/dist/lib/connectKeyLabel.js.map +1 -0
- package/dist/lib/constants.d.ts +5 -1
- package/dist/lib/constants.d.ts.map +1 -1
- package/dist/lib/constants.js +8 -1
- 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/errors.d.ts +67 -0
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +67 -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/hook-intents.d.ts +51 -0
- package/dist/lib/hook-intents.d.ts.map +1 -0
- package/dist/lib/hook-intents.js +85 -0
- package/dist/lib/hook-intents.js.map +1 -0
- package/dist/lib/inferSourceDate.d.ts +12 -0
- package/dist/lib/inferSourceDate.d.ts.map +1 -0
- package/dist/lib/inferSourceDate.js +44 -0
- package/dist/lib/inferSourceDate.js.map +1 -0
- package/dist/lib/kernelEnvelope.d.ts +31 -0
- package/dist/lib/kernelEnvelope.d.ts.map +1 -0
- package/dist/lib/kernelEnvelope.js +52 -0
- package/dist/lib/kernelEnvelope.js.map +1 -0
- package/dist/lib/method-registry.d.ts +37 -0
- package/dist/lib/method-registry.d.ts.map +1 -0
- package/dist/lib/method-registry.js +41 -0
- package/dist/lib/method-registry.js.map +1 -0
- package/dist/lib/normalizeMaterializedFilename.d.ts +28 -0
- package/dist/lib/normalizeMaterializedFilename.d.ts.map +1 -0
- package/dist/lib/normalizeMaterializedFilename.js +56 -0
- package/dist/lib/normalizeMaterializedFilename.js.map +1 -0
- package/dist/lib/normalizeMaterializedFilename.test.d.ts +16 -0
- package/dist/lib/normalizeMaterializedFilename.test.d.ts.map +1 -0
- package/dist/lib/normalizeMaterializedFilename.test.js +90 -0
- package/dist/lib/normalizeMaterializedFilename.test.js.map +1 -0
- package/dist/lib/notice-marker.d.ts +3 -0
- package/dist/lib/notice-marker.d.ts.map +1 -0
- package/dist/lib/notice-marker.js +53 -0
- package/dist/lib/notice-marker.js.map +1 -0
- package/dist/lib/onboarding-path-b.d.ts.map +1 -1
- package/dist/lib/onboarding-path-b.js +42 -13
- package/dist/lib/onboarding-path-b.js.map +1 -1
- package/dist/lib/onboarding-shared.d.ts +4 -4
- package/dist/lib/onboarding-shared.d.ts.map +1 -1
- package/dist/lib/onboarding-shared.js +7 -22
- package/dist/lib/onboarding-shared.js.map +1 -1
- package/dist/lib/onboarding.d.ts.map +1 -1
- package/dist/lib/onboarding.js +12 -4
- package/dist/lib/onboarding.js.map +1 -1
- 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/previewBanner.d.ts +9 -0
- package/dist/lib/previewBanner.d.ts.map +1 -0
- package/dist/lib/previewBanner.js +37 -0
- package/dist/lib/previewBanner.js.map +1 -0
- package/dist/lib/productbrain-files.d.ts +94 -0
- package/dist/lib/productbrain-files.d.ts.map +1 -0
- package/dist/lib/productbrain-files.js +214 -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 +293 -0
- package/dist/lib/productbrain-files.test.js.map +1 -0
- package/dist/lib/profiles.d.ts +40 -4
- package/dist/lib/profiles.d.ts.map +1 -1
- package/dist/lib/profiles.js +77 -18
- package/dist/lib/profiles.js.map +1 -1
- package/dist/lib/rate-limit.d.ts +37 -0
- package/dist/lib/rate-limit.d.ts.map +1 -0
- package/dist/lib/rate-limit.js +83 -0
- package/dist/lib/rate-limit.js.map +1 -0
- package/dist/lib/runner.d.ts +8 -0
- package/dist/lib/runner.d.ts.map +1 -1
- package/dist/lib/runner.js +23 -0
- package/dist/lib/runner.js.map +1 -1
- package/dist/lib/session.d.ts +85 -4
- package/dist/lib/session.d.ts.map +1 -1
- package/dist/lib/session.js +276 -13
- package/dist/lib/session.js.map +1 -1
- package/dist/lib/sessionNotices.d.ts +57 -0
- package/dist/lib/sessionNotices.d.ts.map +1 -0
- package/dist/lib/sessionNotices.js +128 -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 +48 -0
- package/dist/lib/sessionNotices.test.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 +172 -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 +51 -0
- package/dist/lib/state.d.ts.map +1 -0
- package/dist/lib/state.js +90 -0
- package/dist/lib/state.js.map +1 -0
- package/dist/lib/strip.d.ts.map +1 -1
- package/dist/lib/strip.js +13 -1
- package/dist/lib/strip.js.map +1 -1
- package/dist/lib/style.d.ts +2 -0
- package/dist/lib/style.d.ts.map +1 -1
- package/dist/lib/style.js +2 -0
- package/dist/lib/style.js.map +1 -1
- package/dist/lib/tokenConstants.d.ts +19 -0
- package/dist/lib/tokenConstants.d.ts.map +1 -0
- package/dist/lib/tokenConstants.js +19 -0
- package/dist/lib/tokenConstants.js.map +1 -0
- package/dist/lib/update-check.d.ts +56 -0
- package/dist/lib/update-check.d.ts.map +1 -0
- package/dist/lib/update-check.js +296 -0
- package/dist/lib/update-check.js.map +1 -0
- package/dist/lib/upgrade-runner.d.ts +22 -0
- package/dist/lib/upgrade-runner.d.ts.map +1 -0
- package/dist/lib/upgrade-runner.js +110 -0
- package/dist/lib/upgrade-runner.js.map +1 -0
- package/dist/lib/workspace-probe.d.ts +3 -0
- package/dist/lib/workspace-probe.d.ts.map +1 -1
- package/dist/lib/workspace-probe.js +8 -14
- package/dist/lib/workspace-probe.js.map +1 -1
- package/dist/lib/workspaceNotice.d.ts +59 -0
- package/dist/lib/workspaceNotice.d.ts.map +1 -0
- package/dist/lib/workspaceNotice.js +77 -0
- package/dist/lib/workspaceNotice.js.map +1 -0
- package/dist/lib/workspaceVocabCache.d.ts +60 -0
- package/dist/lib/workspaceVocabCache.d.ts.map +1 -0
- package/dist/lib/workspaceVocabCache.js +98 -0
- package/dist/lib/workspaceVocabCache.js.map +1 -0
- package/dist/registerEntryCommands.d.ts +16 -0
- package/dist/registerEntryCommands.d.ts.map +1 -0
- package/dist/registerEntryCommands.js +62 -0
- package/dist/registerEntryCommands.js.map +1 -0
- package/dist/registerProposalCommands.d.ts +13 -0
- package/dist/registerProposalCommands.d.ts.map +1 -0
- package/dist/registerProposalCommands.js +76 -0
- package/dist/registerProposalCommands.js.map +1 -0
- package/dist/scoreboard/diagnose.d.ts +226 -0
- package/dist/scoreboard/diagnose.d.ts.map +1 -0
- package/dist/scoreboard/diagnose.js +344 -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 +355 -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/setup/__tests__/coach-traces.test.d.ts +2 -0
- package/dist/setup/__tests__/coach-traces.test.d.ts.map +1 -0
- package/dist/setup/__tests__/coach-traces.test.js +189 -0
- package/dist/setup/__tests__/coach-traces.test.js.map +1 -0
- package/dist/setup/__tests__/setup-commands.test.d.ts +2 -0
- package/dist/setup/__tests__/setup-commands.test.d.ts.map +1 -0
- package/dist/setup/__tests__/setup-commands.test.js +177 -0
- package/dist/setup/__tests__/setup-commands.test.js.map +1 -0
- package/dist/setup/__tests__/state-machine.test.d.ts +2 -0
- package/dist/setup/__tests__/state-machine.test.d.ts.map +1 -0
- package/dist/setup/__tests__/state-machine.test.js +341 -0
- package/dist/setup/__tests__/state-machine.test.js.map +1 -0
- package/dist/setup/detect-surfaces.d.ts +21 -0
- package/dist/setup/detect-surfaces.d.ts.map +1 -0
- package/dist/setup/detect-surfaces.js +39 -0
- package/dist/setup/detect-surfaces.js.map +1 -0
- package/dist/setup/manifest-writer.d.ts +17 -0
- package/dist/setup/manifest-writer.d.ts.map +1 -0
- package/dist/setup/manifest-writer.js +153 -0
- package/dist/setup/manifest-writer.js.map +1 -0
- package/dist/setup/perimeter.d.ts +72 -0
- package/dist/setup/perimeter.d.ts.map +1 -0
- package/dist/setup/perimeter.js +128 -0
- package/dist/setup/perimeter.js.map +1 -0
- package/dist/setup/state-machine.d.ts +67 -0
- package/dist/setup/state-machine.d.ts.map +1 -0
- package/dist/setup/state-machine.js +124 -0
- package/dist/setup/state-machine.js.map +1 -0
- package/dist/surfaces/__tests__/adapter.test.d.ts +2 -0
- package/dist/surfaces/__tests__/adapter.test.d.ts.map +1 -0
- package/dist/surfaces/__tests__/adapter.test.js +90 -0
- package/dist/surfaces/__tests__/adapter.test.js.map +1 -0
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts +2 -0
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts.map +1 -0
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.js +132 -0
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.js.map +1 -0
- package/dist/surfaces/__tests__/telemetry.test.d.ts +2 -0
- package/dist/surfaces/__tests__/telemetry.test.d.ts.map +1 -0
- package/dist/surfaces/__tests__/telemetry.test.js +55 -0
- package/dist/surfaces/__tests__/telemetry.test.js.map +1 -0
- package/dist/surfaces/adapter.d.ts +70 -0
- package/dist/surfaces/adapter.d.ts.map +1 -0
- package/dist/surfaces/adapter.js +2 -0
- package/dist/surfaces/adapter.js.map +1 -0
- package/dist/surfaces/adapters/claude.d.ts +3 -0
- package/dist/surfaces/adapters/claude.d.ts.map +1 -0
- package/dist/surfaces/adapters/claude.js +67 -0
- package/dist/surfaces/adapters/claude.js.map +1 -0
- package/dist/surfaces/adapters/codex.d.ts +3 -0
- package/dist/surfaces/adapters/codex.d.ts.map +1 -0
- package/dist/surfaces/adapters/codex.js +61 -0
- package/dist/surfaces/adapters/codex.js.map +1 -0
- package/dist/surfaces/adapters/copilot.d.ts +3 -0
- package/dist/surfaces/adapters/copilot.d.ts.map +1 -0
- package/dist/surfaces/adapters/copilot.js +59 -0
- package/dist/surfaces/adapters/copilot.js.map +1 -0
- package/dist/surfaces/adapters/cursor.d.ts +3 -0
- package/dist/surfaces/adapters/cursor.d.ts.map +1 -0
- package/dist/surfaces/adapters/cursor.js +78 -0
- package/dist/surfaces/adapters/cursor.js.map +1 -0
- package/dist/surfaces/registry.d.ts +76 -0
- package/dist/surfaces/registry.d.ts.map +1 -0
- package/dist/surfaces/registry.js +117 -0
- package/dist/surfaces/registry.js.map +1 -0
- package/dist/surfaces/telemetry.d.ts +17 -0
- package/dist/surfaces/telemetry.d.ts.map +1 -0
- package/dist/surfaces/telemetry.js +31 -0
- package/dist/surfaces/telemetry.js.map +1 -0
- package/package.json +11 -3
- package/templates/method-registry.json +16 -0
- package/dist/__tests__/setup.test.d.ts +0 -2
- package/dist/__tests__/setup.test.d.ts.map +0 -1
- package/dist/__tests__/setup.test.js +0 -141
- package/dist/__tests__/setup.test.js.map +0 -1
- package/dist/generators/__tests__/surface-profiles.test.d.ts +0 -2
- package/dist/generators/__tests__/surface-profiles.test.d.ts.map +0 -1
- package/dist/generators/__tests__/surface-profiles.test.js +0 -89
- package/dist/generators/__tests__/surface-profiles.test.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/lib/onboarding-phases.d.ts +0 -9
- package/dist/lib/onboarding-phases.d.ts.map +0 -1
- package/dist/lib/onboarding-phases.js +0 -120
- package/dist/lib/onboarding-phases.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
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';
|
|
@@ -12,27 +11,32 @@ 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 { collectRepeatableOption } from './lib/commanderOptions.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 { runReworkReport } from './commands/rework.js';
|
|
17
19
|
import { runConnect } from './commands/connect.js';
|
|
18
20
|
import { runLogin } from './commands/login.js';
|
|
19
21
|
import { runSetup } from './commands/setup.js';
|
|
22
|
+
import { runSetupDetectSurfaces, formatDetectSurfacesSummary } from './commands/setup-detect-surfaces.js';
|
|
23
|
+
import { runSetupState } from './commands/setup-state.js';
|
|
24
|
+
import { runSetupAudit } from './commands/setup-audit.js';
|
|
20
25
|
import { runOrient } from './commands/orient.js';
|
|
21
26
|
import { runSearch } from './commands/search.js';
|
|
22
27
|
import { runHandshake, runHandshakeInit } from './commands/handshake.js';
|
|
23
|
-
import { runSessionStart, runSessionClose, runSessionId } from './commands/session.js';
|
|
28
|
+
import { runSessionStart, runSessionClose, runSessionId, runSessionReset, runSessionList, runSessionShow } from './commands/session.js';
|
|
24
29
|
import { runCapture } from './commands/capture.js';
|
|
25
30
|
import { runUpdate } from './commands/update.js';
|
|
31
|
+
import { runRestore } from './commands/restore.js';
|
|
26
32
|
import { runRelate, runUnrelate } from './commands/relate.js';
|
|
27
33
|
import { runIngest } from './commands/ingest.js';
|
|
28
34
|
import { runFields } from './commands/fields.js';
|
|
29
35
|
import { runConstellation } from './commands/constellation.js';
|
|
30
|
-
import {
|
|
36
|
+
import { registerEntryCommands } from './registerEntryCommands.js';
|
|
31
37
|
import { runBrandPack } from './commands/brand-pack.js';
|
|
32
38
|
import { runAudit } from './commands/audit.js';
|
|
33
|
-
import {
|
|
34
|
-
import { runAccept } from './commands/accept.js';
|
|
35
|
-
import { runReject } from './commands/reject.js';
|
|
39
|
+
import { registerProposalCommands } from './registerProposalCommands.js';
|
|
36
40
|
import { runChanges } from './commands/changes.js';
|
|
37
41
|
import { runChainWalk } from './commands/chain-walk.js';
|
|
38
42
|
import { runCrossCut } from './commands/cross-cut.js';
|
|
@@ -41,21 +45,36 @@ import { runVerify } from './commands/verify.js';
|
|
|
41
45
|
import { runCodexPrep } from './commands/codex-prep.js';
|
|
42
46
|
import { runCollectionsList, runCollectionsGet, runCollectionsAudit, runCollectionsExport } from './commands/collections.js';
|
|
43
47
|
import { runWorkspaceVerify, runWorkspaceRepair, runDefinitionsDiff } from './commands/workspace.js';
|
|
48
|
+
import { runAuthorityDomainsActivateCutover, runAuthorityDomainsAdd, runAuthorityDomainsDeactivateCutover, runAuthorityDomainsBenchmark, runAuthorityDomainsDiscardPending, runAuthorityDomainsPropose, runAuthorityDomainsQueueTag, runAuthorityDomainsRatify, runAuthorityDomainsReadiness, runAuthorityDomainsRecordSample, runAuthorityDomainsReject, runAuthorityDomainsReview, runAuthorityDomainsPrincipleDistribution, } from './commands/authority-domains.js';
|
|
44
49
|
import { runDoctor } from './commands/doctor.js';
|
|
50
|
+
import { runWhoami } from './commands/whoami.js';
|
|
51
|
+
import { runFiles } from './commands/files.js';
|
|
52
|
+
import { runUpgrade } from './commands/upgrade.js';
|
|
45
53
|
import { runProfileList, runProfileCreate, runProfileUse, runProfileDelete } from './commands/profile.js';
|
|
46
54
|
import { runInit } from './commands/init.js';
|
|
55
|
+
import { runMethodList, runMethodShow, runMethodDiff, runMethodPublish } from './commands/method.js';
|
|
47
56
|
import { createAdminCommand } from './commands/admin/index.js';
|
|
57
|
+
import { createFeedbackCommand } from './commands/feedback.js';
|
|
58
|
+
import { createConflictsCommand } from './commands/conflicts.js';
|
|
59
|
+
import { createShapeCommand } from './commands/shape.js';
|
|
60
|
+
import { createQuestionCommand } from './commands/questions.js';
|
|
61
|
+
import { createDirectionCommand } from './commands/direction.js';
|
|
62
|
+
import { createOrganisationCommand } from './commands/organisation.js';
|
|
63
|
+
import { runUsage } from './commands/usage.js';
|
|
64
|
+
import { runProofRun } from './commands/proof-run.js';
|
|
65
|
+
import { runQualitySpineCheck } from './commands/quality.js';
|
|
48
66
|
import { GLOSSARY, formatGlossary } from './lib/glossary.js';
|
|
67
|
+
import { API_KEY_PREFIX } from './lib/tokenConstants.js';
|
|
49
68
|
import { hint, heading, bold, dim, green, icons } from './lib/style.js';
|
|
50
|
-
import {
|
|
51
|
-
import {
|
|
52
|
-
import {
|
|
69
|
+
import { printPreviewBanner } from './lib/previewBanner.js';
|
|
70
|
+
import { checkForUpdate } from './lib/update-check.js';
|
|
71
|
+
import { UPGRADE_COMMAND } from './lib/constants.js';
|
|
72
|
+
import { resolveSetupState, detectRenderTier } from './lib/state.js';
|
|
53
73
|
const program = new Command();
|
|
54
74
|
/**
|
|
55
|
-
* Global error handler — single exit point for all CLI errors.
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
* Regular Error: wrap as INTERNAL.
|
|
75
|
+
* Global error handler — single exit point for all CLI errors. CLIError: format with code +
|
|
76
|
+
* category + guidance. CommanderError: re-throw for --help / --version (exitCode 0), format
|
|
77
|
+
* others. Regular Error: wrap as INTERNAL.
|
|
59
78
|
*/
|
|
60
79
|
function handleError(err) {
|
|
61
80
|
// Commander help/version exits with code 0 — let them through
|
|
@@ -108,8 +127,8 @@ program
|
|
|
108
127
|
.option('--pretty', 'Force human-readable output even when piped')
|
|
109
128
|
.option('-q, --quiet', 'Suppress non-essential output (banners, hints, progress)')
|
|
110
129
|
.exitOverride(); // Throw CommanderError instead of calling process.exit directly
|
|
111
|
-
// Apply global output mode BEFORE subcommand actions run
|
|
112
|
-
program.hook('preAction', (
|
|
130
|
+
// Apply global output mode BEFORE subcommand actions run. Commander preAction hook signature: (hookedCommand = root program, actionCommand = the subcommand actually invoked).
|
|
131
|
+
program.hook('preAction', (_hookedCommand, actionCommand) => {
|
|
113
132
|
const globalOpts = program.opts();
|
|
114
133
|
if (globalOpts.json) {
|
|
115
134
|
setOutputMode('json');
|
|
@@ -121,24 +140,45 @@ program.hook('preAction', (thisCommand) => {
|
|
|
121
140
|
if (globalOpts.quiet) {
|
|
122
141
|
setQuietMode(true);
|
|
123
142
|
}
|
|
124
|
-
|
|
143
|
+
// Ambient update notification — non-blocking, suppressed in JSON mode (WP-322 S1)
|
|
144
|
+
checkForUpdate(cliPackageVersion.version);
|
|
145
|
+
// 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.
|
|
146
|
+
printPreviewBanner(actionCommand);
|
|
125
147
|
});
|
|
126
|
-
// Default action — status dashboard when `pb` is invoked with no command.
|
|
127
|
-
// `pb --help` still works because Commander intercepts --help before the action runs.
|
|
148
|
+
// Default action — status dashboard when `pb` is invoked with no command. `pb --help` still works because Commander intercepts --help before the action runs.
|
|
128
149
|
program.action(async () => {
|
|
129
|
-
//
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
150
|
+
// Alias handling — forward common shorthands before showing the welcome screen
|
|
151
|
+
if (program.args.length > 0) {
|
|
152
|
+
const args = program.args;
|
|
153
|
+
// `pb start` / `pb start session` → `pb session start`
|
|
154
|
+
if (args[0] === 'start') {
|
|
155
|
+
await runSessionStart();
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
// `pb close` / `pb close session` → `pb session close`
|
|
159
|
+
if (args[0] === 'close') {
|
|
160
|
+
await runSessionClose({});
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
// Unknown command — show a helpful error instead of the welcome screen
|
|
164
|
+
const unknown = args[0];
|
|
165
|
+
process.stderr.write(`error: unknown command '${unknown}'\n`);
|
|
166
|
+
process.stderr.write(`Run 'pb --help' to see available commands.\n`);
|
|
167
|
+
process.exit(1);
|
|
168
|
+
}
|
|
169
|
+
const tier = detectRenderTier();
|
|
170
|
+
// JSON tier — structured status output
|
|
171
|
+
if (tier === 'json') {
|
|
172
|
+
// Check for API key first (sync, no network)
|
|
173
|
+
let hasKey = false;
|
|
174
|
+
try {
|
|
175
|
+
const { getConfig: gc } = await import('./lib/config.js');
|
|
176
|
+
gc();
|
|
177
|
+
hasKey = true;
|
|
178
|
+
}
|
|
179
|
+
catch {
|
|
180
|
+
// No valid key
|
|
181
|
+
}
|
|
142
182
|
if (!hasKey) {
|
|
143
183
|
process.stdout.write(JSON.stringify({
|
|
144
184
|
configured: false,
|
|
@@ -146,6 +186,8 @@ program.action(async () => {
|
|
|
146
186
|
}) + '\n');
|
|
147
187
|
return;
|
|
148
188
|
}
|
|
189
|
+
const { readSession } = await import('./lib/session.js');
|
|
190
|
+
const { probeWorkspace } = await import('./lib/workspace-probe.js');
|
|
149
191
|
const session = readSession();
|
|
150
192
|
const wsInfo = await probeWorkspace();
|
|
151
193
|
process.stdout.write(JSON.stringify({
|
|
@@ -157,54 +199,64 @@ program.action(async () => {
|
|
|
157
199
|
}) + '\n');
|
|
158
200
|
return;
|
|
159
201
|
}
|
|
160
|
-
//
|
|
161
|
-
if (
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
hint('3. pb orient -b See what\'s happening');
|
|
168
|
-
process.stdout.write('\n');
|
|
169
|
-
hint('pb --help Show all commands');
|
|
170
|
-
process.stdout.write('\n');
|
|
171
|
-
return;
|
|
172
|
-
}
|
|
173
|
-
// Human mode — configured, try workspace probe
|
|
174
|
-
const session = readSession();
|
|
175
|
-
const wsInfo = await probeWorkspace();
|
|
176
|
-
const workspaceName = wsInfo?.name ?? null;
|
|
177
|
-
const entryCount = wsInfo?.entryCount ?? null;
|
|
178
|
-
const offline = !wsInfo;
|
|
179
|
-
process.stdout.write('\n');
|
|
180
|
-
if (offline) {
|
|
181
|
-
process.stdout.write(`${bold('Product Brain')} ${dim('— connected (offline)')}\n\n`);
|
|
182
|
-
process.stdout.write(` ${green(icons.pass)} Key: configured\n`);
|
|
183
|
-
process.stdout.write(` ${dim('Server: unreachable — check your connection')}\n\n`);
|
|
184
|
-
hint('pb doctor Diagnose connection issues');
|
|
185
|
-
hint('pb --help Show all commands');
|
|
202
|
+
// Ink tier: suppress withSpinner output before Ink mounts — spinner writes pollute the TUI canvas
|
|
203
|
+
if (tier === 'ink')
|
|
204
|
+
setQuietMode(true);
|
|
205
|
+
// Resolve state (plain and ink both need it)
|
|
206
|
+
const state = await resolveSetupState();
|
|
207
|
+
// Plain tier — console output driven by state
|
|
208
|
+
if (tier === 'plain') {
|
|
186
209
|
process.stdout.write('\n');
|
|
210
|
+
if (state.stage === 'unconfigured') {
|
|
211
|
+
process.stdout.write(`${bold('Product Brain')} ${dim('— not connected')}\n\n`);
|
|
212
|
+
process.stdout.write(`${heading('Get started')}\n\n`);
|
|
213
|
+
hint('1. pb login Save your API key');
|
|
214
|
+
hint('2. pb connect Connect a workspace');
|
|
215
|
+
hint('3. pb orient -b See what\'s happening');
|
|
216
|
+
process.stdout.write('\n');
|
|
217
|
+
hint('pb --help Show all commands');
|
|
218
|
+
process.stdout.write('\n');
|
|
219
|
+
}
|
|
220
|
+
else if (state.stage === 'authenticated') {
|
|
221
|
+
process.stdout.write(`${bold('Product Brain')} ${dim('— server unreachable')}\n\n`);
|
|
222
|
+
process.stdout.write(` ${green(icons.pass)} Key: configured\n`);
|
|
223
|
+
process.stdout.write(` ! Server: unreachable — run pb doctor to diagnose\n\n`);
|
|
224
|
+
hint('pb session start Start a write session');
|
|
225
|
+
hint('pb doctor Diagnose connection issues');
|
|
226
|
+
hint('pb --help Show all commands');
|
|
227
|
+
process.stdout.write('\n');
|
|
228
|
+
}
|
|
229
|
+
else {
|
|
230
|
+
// workspace-bound or active
|
|
231
|
+
const workspaceName = state.workspaceName ?? 'unknown';
|
|
232
|
+
const entryCount = state.entryCount ?? 0;
|
|
233
|
+
const title = `${bold('Product Brain')} ${dim('—')} ${bold(workspaceName)}`;
|
|
234
|
+
process.stdout.write(`${title}\n\n`);
|
|
235
|
+
process.stdout.write(` ${green(icons.pass)} Key: configured\n`);
|
|
236
|
+
process.stdout.write(` ${green(icons.pass)} Workspace: ${workspaceName} (${entryCount} entries)\n`);
|
|
237
|
+
if (state.sessionActive) {
|
|
238
|
+
process.stdout.write(` ${green(icons.pass)} Session: active\n`);
|
|
239
|
+
}
|
|
240
|
+
else {
|
|
241
|
+
process.stdout.write(` ${dim('- Session: none')}\n`);
|
|
242
|
+
}
|
|
243
|
+
process.stdout.write('\n');
|
|
244
|
+
if (!state.sessionActive) {
|
|
245
|
+
hint('pb session start Start a write session');
|
|
246
|
+
}
|
|
247
|
+
hint('pb orient -b Workspace overview');
|
|
248
|
+
hint('pb --help Show all commands');
|
|
249
|
+
process.stdout.write('\n');
|
|
250
|
+
}
|
|
187
251
|
return;
|
|
188
252
|
}
|
|
189
|
-
//
|
|
190
|
-
const
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
process.stdout.write(` Session: active (started ${elapsed})\n`);
|
|
197
|
-
}
|
|
198
|
-
if (entryCount !== null && entryCount > 0) {
|
|
199
|
-
process.stdout.write(` Entries: ${entryCount}\n`);
|
|
200
|
-
}
|
|
201
|
-
process.stdout.write('\n');
|
|
202
|
-
if (!session) {
|
|
203
|
-
hint('pb session start Start a write session');
|
|
204
|
-
}
|
|
205
|
-
hint('pb orient -b Workspace overview');
|
|
206
|
-
hint('pb --help Show all commands');
|
|
207
|
-
process.stdout.write('\n');
|
|
253
|
+
// Ink tier — interactive TUI
|
|
254
|
+
const version = cliPackageVersion.version;
|
|
255
|
+
const { render } = await import('ink');
|
|
256
|
+
const { WelcomeCockpit } = await import('./commands/welcome.js');
|
|
257
|
+
const React = await import('react');
|
|
258
|
+
const { waitUntilExit, unmount } = render(React.default.createElement(WelcomeCockpit, { state, version, onExit: () => unmount() }));
|
|
259
|
+
await waitUntilExit();
|
|
208
260
|
});
|
|
209
261
|
program
|
|
210
262
|
.command('get <entry-id>')
|
|
@@ -216,6 +268,42 @@ program
|
|
|
216
268
|
}
|
|
217
269
|
await runGet({ entryId: entryId.trim() });
|
|
218
270
|
});
|
|
271
|
+
program
|
|
272
|
+
.command('scoreboard')
|
|
273
|
+
.description('Flywheel scoreboard — M1-M5 metrics + diagnosis layer (agent-primary; --json for structured consumption)')
|
|
274
|
+
.option('-t, --task <task>', 'Task context for the ranking-agreement (M2) + truth-state (M1) read')
|
|
275
|
+
.action(async (opts) => {
|
|
276
|
+
await runScoreboard({ ...(opts.task ? { task: opts.task } : {}) });
|
|
277
|
+
});
|
|
278
|
+
const qualityCmd = program
|
|
279
|
+
.command('quality')
|
|
280
|
+
.description('Quality-check surfaces');
|
|
281
|
+
qualityCmd
|
|
282
|
+
.command('spine-check')
|
|
283
|
+
.description('Check purpose+vision+strategy structural completeness + refusal heuristic; --story runs the on-demand one-story LLM judgment')
|
|
284
|
+
.option('--story', 'Also run the on-demand one-story judgment (never scheduled; result labelled [unvalidated])')
|
|
285
|
+
.action(async (opts) => { await runQualitySpineCheck({ story: opts.story }); });
|
|
286
|
+
const reworkCmd = program
|
|
287
|
+
.command('rework')
|
|
288
|
+
.description('Report observed rework signals (WP-487 / FEAT-1373 — fills the M4 rework meter)');
|
|
289
|
+
reworkCmd
|
|
290
|
+
.command('report <entry-id>')
|
|
291
|
+
.description('Report a rework event attributed to a previously served governance entry (agent-native checkpoint; requires an active session)')
|
|
292
|
+
.requiredOption('--classification <kind>', 'revision | ci_review_correction | user_override')
|
|
293
|
+
.option('--via <kind>', 'How this was observed: followup_commit | ci_rerun | manual', 'manual')
|
|
294
|
+
.option('--attributable', 'Flag: this ci_review_correction is attributed to a missing/violated served decision')
|
|
295
|
+
.option('--task <text>', 'Task context this rework relates to (truncated server-side, never raw diff/comment text)')
|
|
296
|
+
.option('--conversation <id>', 'Explicit conversation override, matching `pb session start --conversation <id>` — use when the shell has no PB_CONVERSATION_ID set')
|
|
297
|
+
.action(async (entryId, opts) => {
|
|
298
|
+
await runReworkReport({
|
|
299
|
+
entryId,
|
|
300
|
+
classification: opts.classification,
|
|
301
|
+
reportedVia: opts.via,
|
|
302
|
+
attributable: opts.attributable,
|
|
303
|
+
task: opts.task,
|
|
304
|
+
conversation: opts.conversation,
|
|
305
|
+
});
|
|
306
|
+
});
|
|
219
307
|
program
|
|
220
308
|
.command('get-many <entry-ids...>')
|
|
221
309
|
.description('Fetch multiple entries in parallel (space-separated IDs)')
|
|
@@ -309,38 +397,48 @@ program
|
|
|
309
397
|
.description('Print workspace stage and all orient sections (strategic context, bets, governance, tensions, etc.)')
|
|
310
398
|
.option('-b, --brief', 'Compact view: stage, counts, top bets, tensions, planned work')
|
|
311
399
|
.option('-t, --task <task>', 'Task description for task-shaped governance and context')
|
|
312
|
-
|
|
313
|
-
.option('
|
|
400
|
+
.option('-s, --scope <domain>', 'Domain scope for governance filtering. Forwarded to the workspace model for validation and custom domain resolution.')
|
|
401
|
+
.option('--full', 'Full depth orient (tier=full). Use for thorough context loading.')
|
|
314
402
|
.action(async (opts) => {
|
|
315
|
-
await runOrient({ brief: opts.brief, task: opts.task?.trim() || undefined, scope: opts.scope?.trim() || undefined });
|
|
403
|
+
await runOrient({ brief: opts.brief, task: opts.task?.trim() || undefined, scope: opts.scope?.trim() || undefined, full: opts.full });
|
|
316
404
|
});
|
|
317
405
|
program
|
|
318
406
|
.command('handshake')
|
|
319
407
|
.description('Generate context files for AI developer tools (AGENTS.md, .codex/skills/, CLAUDE.md, .cursor/rules/, .github/copilot-instructions.md)')
|
|
320
408
|
.option('--force', 'Overwrite adapter files even if they exist without auto-generated marker')
|
|
321
|
-
.option('--
|
|
409
|
+
.option('--apply', 'Write files (default: preview only)')
|
|
410
|
+
.option('--dry-run', 'Show what would be generated without writing files (alias for preview)')
|
|
322
411
|
.option('--init', 'Set up Claude Code integration: team hooks + personal trust level')
|
|
323
412
|
.option('--level <level>', 'With --init: trust level (guide|work|silent|full-trust). Without --init: content tier (beginner|intermediate|expert)')
|
|
324
413
|
.option('--generate', 'Fetch governance entries from the Chain and merge generated rules (BET-286)')
|
|
325
414
|
.option('--surfaces <list>', 'Comma-separated surfaces to write (cursor,claude,copilot,codex)')
|
|
415
|
+
.option('--no-prompt', 'Headless mode: refuse on tampered projection files (WP-421 S3, doneWhen #17). Always implied when stdout is not a TTY.')
|
|
416
|
+
.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.')
|
|
326
417
|
.action(async (opts) => {
|
|
327
418
|
if (opts.init) {
|
|
328
419
|
await runHandshakeInit({ level: opts.level, dryRun: opts.dryRun });
|
|
329
420
|
return;
|
|
330
421
|
}
|
|
331
|
-
|
|
422
|
+
// Commander turns `--no-prompt` into `prompt: false`. We invert so HandshakeOptions sees noPrompt=true.
|
|
423
|
+
const noPrompt = opts.prompt === false;
|
|
424
|
+
// Attribute the bare-handshake invocation so its context.served row is separable from
|
|
425
|
+
// session-start ('session-start') / session-close ('session-close') / manual orient rows.
|
|
426
|
+
// Without this, the kernel used to coerce the absent path to 'manual-orient', polluting the
|
|
427
|
+
// proof slice that isolates manual `pb orient --task` rows (the 'handshake' union member was otherwise never emitted).
|
|
428
|
+
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, invocationPath: 'handshake' });
|
|
332
429
|
});
|
|
333
430
|
program
|
|
334
431
|
.command('codex-prep <task...>')
|
|
335
432
|
.description('Generate task-specific governance context for Codex (.codex/task-context.md)')
|
|
336
433
|
.option('--dry-run', 'Print to stdout instead of writing file')
|
|
434
|
+
.option('--full', 'Full depth orient (tier=full). Use for thorough context loading.')
|
|
337
435
|
.action(async (taskParts, opts) => {
|
|
338
436
|
const task = taskParts.join(' ').trim();
|
|
339
437
|
if (!task) {
|
|
340
438
|
program.commands.find((c) => c.name() === 'codex-prep')?.help();
|
|
341
439
|
return;
|
|
342
440
|
}
|
|
343
|
-
await runCodexPrep({ task, dryRun: opts.dryRun });
|
|
441
|
+
await runCodexPrep({ task, dryRun: opts.dryRun, full: opts.full });
|
|
344
442
|
});
|
|
345
443
|
program
|
|
346
444
|
.command('init')
|
|
@@ -350,14 +448,16 @@ program
|
|
|
350
448
|
});
|
|
351
449
|
program
|
|
352
450
|
.command('connect <token>')
|
|
353
|
-
.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.')
|
|
451
|
+
.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.')
|
|
354
452
|
.option('--gateway <url>', 'Override redeem gateway (default: CONVEX_SITE_URL or production). Use when token came from a different Convex deployment.')
|
|
453
|
+
.option('--name <label>', 'Optional label for this API key in workspace settings. Skips the key-label prompt when set.')
|
|
454
|
+
.option('-y, --yes', 'Skip the interactive workspace confirmation. Required to connect in a non-interactive shell (e.g. CI).')
|
|
355
455
|
.action(async (token, opts) => {
|
|
356
456
|
if (!token?.trim()) {
|
|
357
457
|
program.commands.find((c) => c.name() === 'connect')?.help();
|
|
358
458
|
return;
|
|
359
459
|
}
|
|
360
|
-
await runConnect(token.trim(), { gateway: opts.gateway });
|
|
460
|
+
await runConnect(token.trim(), { gateway: opts.gateway, name: opts.name, assumeYes: opts.yes });
|
|
361
461
|
});
|
|
362
462
|
program
|
|
363
463
|
.command('login')
|
|
@@ -373,12 +473,54 @@ program
|
|
|
373
473
|
.action(async (opts) => {
|
|
374
474
|
await runDoctor({ fix: opts.fix, dryRun: opts.dryRun });
|
|
375
475
|
});
|
|
476
|
+
program
|
|
477
|
+
.command('whoami')
|
|
478
|
+
.alias('status')
|
|
479
|
+
.description('Show the active profile + workspace (fast; no session required).')
|
|
480
|
+
.action(async () => {
|
|
481
|
+
await runWhoami();
|
|
482
|
+
});
|
|
483
|
+
program
|
|
484
|
+
.command('files')
|
|
485
|
+
.description('Show which .productbrain files are pb-owned vs committed, and what writes each.')
|
|
486
|
+
.option('--fix', 'Add any exposed pb-owned files to .gitignore (idempotent)')
|
|
487
|
+
.option('--dry-run', 'With --fix: preview the .gitignore lines without writing')
|
|
488
|
+
.action(async (opts) => {
|
|
489
|
+
await runFiles({ fix: opts.fix, dryRun: opts.dryRun });
|
|
490
|
+
});
|
|
376
491
|
program
|
|
377
492
|
.command('setup')
|
|
378
|
-
.description('
|
|
493
|
+
.description('Canonical pb-setup entry (DEC-995): detect surfaces, read state, emit JSON for the skill body.')
|
|
379
494
|
.action(async () => {
|
|
380
495
|
await runSetup();
|
|
381
496
|
});
|
|
497
|
+
program
|
|
498
|
+
.command('setup-detect-surfaces')
|
|
499
|
+
.description('Detect local surface markers and union-merge into manifest.surfaces (STD-235 forward-only)')
|
|
500
|
+
.action(async () => {
|
|
501
|
+
const result = await runSetupDetectSurfaces();
|
|
502
|
+
if (process.stdout.isTTY) {
|
|
503
|
+
process.stdout.write(formatDetectSurfacesSummary(result) + '\n');
|
|
504
|
+
}
|
|
505
|
+
else {
|
|
506
|
+
process.stderr.write(formatDetectSurfacesSummary(result) + '\n');
|
|
507
|
+
}
|
|
508
|
+
});
|
|
509
|
+
program
|
|
510
|
+
.command('setup-state')
|
|
511
|
+
.description('Emit compact JSON of getPbSetupState (machine-readable, used by the pb-setup skill body)')
|
|
512
|
+
.action(async () => {
|
|
513
|
+
await runSetupState();
|
|
514
|
+
});
|
|
515
|
+
// WP-439 S2: setup-asset orphan audit. Read-only diagnostic; exits 1 if any setup_asset row has a broken body wiring (will fail at handshake). WP-439 S3: --repair attempts to restore class III/II orphans from STARTER_* constants. Class I (inline-only) and IV (hash drift) are NOT touched.
|
|
516
|
+
program
|
|
517
|
+
.command('setup-audit')
|
|
518
|
+
.description('Audit setup_asset rows for orphaned bodies (WP-439 S2/S3). Exits 1 if any orphan or repair-failure.')
|
|
519
|
+
.option('--json', 'Emit machine-readable JSON (overrides pretty output for this command)')
|
|
520
|
+
.option('--repair', 'Attempt to restore class III/II orphans from STARTER_* constants (WP-439 S3)')
|
|
521
|
+
.action(async (opts) => {
|
|
522
|
+
await runSetupAudit({ json: opts.json, repair: opts.repair });
|
|
523
|
+
});
|
|
382
524
|
// --- Write commands (require active session) ---
|
|
383
525
|
const sessionCmd = program
|
|
384
526
|
.command('session')
|
|
@@ -387,8 +529,9 @@ sessionCmd
|
|
|
387
529
|
.command('start')
|
|
388
530
|
.description('Start a tracked write session (opens session, refreshes context)')
|
|
389
531
|
.option('--json', 'Output machine-readable JSON (deprecated: use global --json flag)')
|
|
532
|
+
.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')
|
|
390
533
|
.action(async (opts) => {
|
|
391
|
-
await runSessionStart({ json: opts.json });
|
|
534
|
+
await runSessionStart({ json: opts.json, conversation: opts.conversation });
|
|
392
535
|
});
|
|
393
536
|
sessionCmd
|
|
394
537
|
.command('id')
|
|
@@ -403,17 +546,45 @@ sessionCmd
|
|
|
403
546
|
.action(async (opts) => {
|
|
404
547
|
await runSessionClose({ force: opts.force });
|
|
405
548
|
});
|
|
549
|
+
// WP-479 E4: traceback + quota observability.
|
|
550
|
+
sessionCmd
|
|
551
|
+
.command('list')
|
|
552
|
+
.description('List active sessions (with quota gauge) + recent non-active ones (WP-479 E4)')
|
|
553
|
+
.action(async () => {
|
|
554
|
+
await runSessionList();
|
|
555
|
+
});
|
|
556
|
+
sessionCmd
|
|
557
|
+
.command('show <id-or-conversation>')
|
|
558
|
+
.description('Show a conversation\'s full session lineage + governance serves (WP-479 E4)')
|
|
559
|
+
.action(async (idOrConversation) => {
|
|
560
|
+
await runSessionShow(idOrConversation);
|
|
561
|
+
});
|
|
562
|
+
// 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.
|
|
563
|
+
sessionCmd
|
|
564
|
+
.command('reset')
|
|
565
|
+
.description('Hard-reset local session state (discard session.json + clear PREVIEW_MODE)')
|
|
566
|
+
.option('--force', 'Skip the confirmation prompt when an active session is present')
|
|
567
|
+
.action(async (opts) => {
|
|
568
|
+
await runSessionReset({ force: opts.force });
|
|
569
|
+
});
|
|
406
570
|
program
|
|
407
571
|
.command('capture [text...]')
|
|
408
572
|
.description('Capture knowledge to the Chain (requires active session)')
|
|
409
573
|
.option('-n, --name <name>', 'Entry name (defaults to capture text)')
|
|
410
574
|
.option('-d, --description <desc>', 'Entry description (defaults to capture text)')
|
|
411
575
|
.option('-c, --collection <slug>', 'Explicit collection (skip auto-classification)')
|
|
576
|
+
.option('-f, --field <key=value>', 'Set a data field (repeatable; e.g. rationale="...")', (val, prev) => [...prev, val], [])
|
|
412
577
|
.option('-l, --link <entry-id>', 'Link new entry to an existing entry (TEN-705)')
|
|
413
578
|
.option('-t, --type <relation-type>', 'Relation type for --link (default: surfaces_tension_in)')
|
|
414
579
|
.option('--source-ref <ref>', 'Source reference URI (BET-240 E2: e.g. "meeting-2026-03-28.md")')
|
|
415
580
|
.option('--source-excerpt <text>', 'Verbatim source excerpt (BET-240 E2)')
|
|
581
|
+
// TEN-2226 / WP-456 E1: opt-in override — keeps the entry a draft even in Open governance mode.
|
|
582
|
+
.option('--draft', 'Force the entry to draft regardless of workspace governance mode (TEN-2226)')
|
|
416
583
|
.option('--json', 'Output machine-readable JSON (deprecated: use global --json flag)')
|
|
584
|
+
.option('--suggest-only', 'Show grounding preview (possible duplicates, related entries) without creating entry (WP-319)')
|
|
585
|
+
.option('--strict', 'Prompt y/N before capturing when a possible duplicate is detected (WP-319)')
|
|
586
|
+
.option('--owner-team <entry-id>', 'Existing Team entry ID to create AS OWNER of (WP-513 rung 2; pair with --owner-role)')
|
|
587
|
+
.option('--owner-role <entry-id>', 'Existing Role entry ID to create AS OWNER of (WP-513 rung 2; pair with --owner-team)')
|
|
417
588
|
.action(async (textParts = [], opts) => {
|
|
418
589
|
const text = textParts.join(' ').trim();
|
|
419
590
|
if (!text && !opts.name) {
|
|
@@ -421,15 +592,10 @@ program
|
|
|
421
592
|
return;
|
|
422
593
|
}
|
|
423
594
|
await runCapture({
|
|
424
|
-
text: text || opts.name || '',
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
link: opts.link,
|
|
429
|
-
type: opts.type,
|
|
430
|
-
sourceRef: opts.sourceRef,
|
|
431
|
-
sourceExcerpt: opts.sourceExcerpt,
|
|
432
|
-
json: opts.json,
|
|
595
|
+
text: text || opts.name || '', name: opts.name, description: opts.description, collection: opts.collection,
|
|
596
|
+
field: opts.field, link: opts.link, type: opts.type, sourceRef: opts.sourceRef, sourceExcerpt: opts.sourceExcerpt,
|
|
597
|
+
draft: opts.draft, json: opts.json, suggestOnly: opts.suggestOnly, strict: opts.strict,
|
|
598
|
+
ownerTeam: opts.ownerTeam, ownerRole: opts.ownerRole,
|
|
433
599
|
});
|
|
434
600
|
});
|
|
435
601
|
// --- Update command (TEN-703) ---
|
|
@@ -440,17 +606,25 @@ program
|
|
|
440
606
|
.option('--name <name>', 'Update entry name')
|
|
441
607
|
.option('--status <status>', 'Update entry status (draft | active | deprecated | archived)')
|
|
442
608
|
.option('--workflow-status <status>', 'Set workflow status (server-validated)')
|
|
609
|
+
.option('--type <canonical-key>', 'Reclassify a DRAFT entry to another canonical type (immutable once committed — supersede instead)')
|
|
443
610
|
.option('--note <text>', 'Change note for history')
|
|
611
|
+
.option('--override-reason <text>', 'Typed override (≥12 chars) clearing a steering coherency block — recorded with author attribution (WP-465)')
|
|
612
|
+
.option('--acknowledge <response>', 'Respond to a coherency challenge: linked | accepted-fix | diverged (WP-465)')
|
|
613
|
+
.option('--ack-entry <entry-id>', 'Authorizing entry for --acknowledge linked / accepted-fix')
|
|
614
|
+
.option('--ack-reason <text>', 'Divergence rationale (≥12 chars) for --acknowledge diverged')
|
|
615
|
+
// Commander camelCases every flag to exactly the UpdateOptions key it feeds, so the options
|
|
616
|
+
// object spreads straight through. The previous hand-written 1:1 mapping had to be edited twice
|
|
617
|
+
// per new flag (once here, once in the type) and silently dropped anything you forgot.
|
|
444
618
|
.action(async (entryId, opts) => {
|
|
445
|
-
await runUpdate({
|
|
446
|
-
entryId,
|
|
447
|
-
field: opts.field,
|
|
448
|
-
name: opts.name,
|
|
449
|
-
status: opts.status,
|
|
450
|
-
workflowStatus: opts.workflowStatus,
|
|
451
|
-
note: opts.note,
|
|
452
|
-
});
|
|
619
|
+
await runUpdate({ entryId, ...opts });
|
|
453
620
|
});
|
|
621
|
+
// --- Restore command (WP-514 review round 2, P1) ---
|
|
622
|
+
program
|
|
623
|
+
.command('restore <entry-id>')
|
|
624
|
+
.description('Restore an archived Chain entry to draft (requires active session + rung-3 authority coverage)')
|
|
625
|
+
.action(async (entryId) => { await runRestore(entryId); });
|
|
626
|
+
// --- Entry noun-scoped commands (DEC-1574, WP-640 S4) — registerEntryCommands.ts ---
|
|
627
|
+
registerEntryCommands(program);
|
|
454
628
|
// --- Promote command (Wave 2 CLI Polish) ---
|
|
455
629
|
program
|
|
456
630
|
.command('verify <entry-id>')
|
|
@@ -462,13 +636,8 @@ program
|
|
|
462
636
|
}
|
|
463
637
|
await runVerify({ entryId: entryId.trim() });
|
|
464
638
|
});
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
.description('Promote entry from draft to active (commit to SSOT)')
|
|
468
|
-
.option('-m, --message <text>', 'Commit message')
|
|
469
|
-
.action(async (entryId, opts) => {
|
|
470
|
-
await runPromote({ entryId, message: opts.message });
|
|
471
|
-
});
|
|
639
|
+
// `pb promote` retirement (DEC-1578) — registerProposalCommands.ts
|
|
640
|
+
registerProposalCommands(program);
|
|
472
641
|
// --- Relate / Unrelate commands (TEN-704) ---
|
|
473
642
|
program
|
|
474
643
|
.command('relate <from-id> <type> <to-id>')
|
|
@@ -505,6 +674,30 @@ program
|
|
|
505
674
|
concurrency,
|
|
506
675
|
});
|
|
507
676
|
});
|
|
677
|
+
// --- migrate:setup command (WP-345 S0b) ---
|
|
678
|
+
program
|
|
679
|
+
.command('migrate:setup')
|
|
680
|
+
.description('Migrate .productbrain/skills|rules|hooks/*.md into the DB setup-assets collection (WP-345)')
|
|
681
|
+
.option('--dry-run', 'Show what would be migrated without writing to DB.')
|
|
682
|
+
.option('--cwd <path>', 'Override working directory (default: process.cwd())')
|
|
683
|
+
.action(async (opts) => {
|
|
684
|
+
const { runMigrateSetup } = await import('./commands/migrate-setup.js');
|
|
685
|
+
await runMigrateSetup({ dryRun: opts.dryRun, cwd: opts.cwd });
|
|
686
|
+
});
|
|
687
|
+
// --- setup:ingest command (WP-345 S3) ---
|
|
688
|
+
program
|
|
689
|
+
.command('setup:ingest <path>')
|
|
690
|
+
.description('Push a single .productbrain skill/rule/hook file to the DB setup-assets SSOT (WP-345)')
|
|
691
|
+
.option('--dry-run', 'Show what would be ingested without writing to DB.')
|
|
692
|
+
.option('--json', 'Output machine-readable JSON (deprecated: use global --json flag)')
|
|
693
|
+
.action(async (filePath, opts) => {
|
|
694
|
+
if (!filePath?.trim()) {
|
|
695
|
+
program.commands.find((c) => c.name() === 'setup:ingest')?.help();
|
|
696
|
+
return;
|
|
697
|
+
}
|
|
698
|
+
const { runSetupIngest } = await import('./commands/setup-ingest.js');
|
|
699
|
+
await runSetupIngest(filePath.trim(), { dryRun: opts.dryRun });
|
|
700
|
+
});
|
|
508
701
|
// --- Fields command (BET-181 Slice 2) ---
|
|
509
702
|
program
|
|
510
703
|
.command('fields <collection>')
|
|
@@ -530,7 +723,7 @@ program
|
|
|
530
723
|
// --- Audit command (BET-182 Slice 2) ---
|
|
531
724
|
program
|
|
532
725
|
.command('audit <entry-ids...>')
|
|
533
|
-
.description('Run
|
|
726
|
+
.description('Run hygiene audit on bet(s) — 13 gates (shaping) / 18 gates (handoff), exit code reflects verdict')
|
|
534
727
|
.option('--phase <phase>', 'Override phase detection (shaping | handoff)')
|
|
535
728
|
.option('--gate <name>', 'Run only specified gate(s) (repeatable)', (val, prev) => [...prev, val], [])
|
|
536
729
|
.option('--fix', 'Auto-execute exact fixes via pb update, rerun once')
|
|
@@ -552,33 +745,6 @@ program
|
|
|
552
745
|
.action(() => {
|
|
553
746
|
runBrandPack(process.argv);
|
|
554
747
|
});
|
|
555
|
-
// --- Governance proposal commands (BET-221 Slice 3) ---
|
|
556
|
-
program
|
|
557
|
-
.command('proposals')
|
|
558
|
-
.description('List open consent proposals with expiry countdown (BET-221)')
|
|
559
|
-
.action(async () => {
|
|
560
|
-
await runProposals();
|
|
561
|
-
});
|
|
562
|
-
program
|
|
563
|
-
.command('accept [proposal-id]')
|
|
564
|
-
.description('Approve a consent proposal by ID, or --auto to batch-approve all')
|
|
565
|
-
.option('-a, --auto', 'Auto-approve all open proposals (skip contradictions)')
|
|
566
|
-
.action(async (proposalId, opts) => {
|
|
567
|
-
if (!proposalId && !opts.auto) {
|
|
568
|
-
throw new CLIError('Usage: pb accept <proposal-id> or pb accept --auto', {
|
|
569
|
-
code: ErrorCode.VALIDATION_FAILED,
|
|
570
|
-
category: 'validation',
|
|
571
|
-
});
|
|
572
|
-
}
|
|
573
|
-
await runAccept({ proposalId, auto: opts.auto });
|
|
574
|
-
});
|
|
575
|
-
program
|
|
576
|
-
.command('reject <proposal-id>')
|
|
577
|
-
.description('Reject a consent proposal with a required reason (BR-7)')
|
|
578
|
-
.requiredOption('-r, --reason <text>', 'Reason for rejection (required)')
|
|
579
|
-
.action(async (proposalId, opts) => {
|
|
580
|
-
await runReject({ proposalId, reason: opts.reason });
|
|
581
|
-
});
|
|
582
748
|
// --- Collections command (BET-280 Slice 1) ---
|
|
583
749
|
const collectionsCmd = program
|
|
584
750
|
.command('collections')
|
|
@@ -627,6 +793,115 @@ workspaceCmd
|
|
|
627
793
|
.action(async () => {
|
|
628
794
|
await runWorkspaceRepair();
|
|
629
795
|
});
|
|
796
|
+
const authorityDomainsCmd = program
|
|
797
|
+
.command('authority-domains')
|
|
798
|
+
.description('Operator commands for WP-354 authority-domain readiness and evidence');
|
|
799
|
+
authorityDomainsCmd
|
|
800
|
+
.command('add <slug>')
|
|
801
|
+
.description('Create an authority domain for this workspace')
|
|
802
|
+
.option('--description <description>', 'Authority-domain description')
|
|
803
|
+
.option('--alias <alias>', 'Alias/keyword for this domain (repeatable)', collectRepeatableOption)
|
|
804
|
+
.option('--path-glob <glob>', 'Changed-path glob for this domain (repeatable)', collectRepeatableOption)
|
|
805
|
+
.action(async (slug, opts) => {
|
|
806
|
+
await runAuthorityDomainsAdd(slug, opts);
|
|
807
|
+
});
|
|
808
|
+
authorityDomainsCmd
|
|
809
|
+
.command('propose')
|
|
810
|
+
.description('Generate authority-domain tag proposals')
|
|
811
|
+
.option('--dry-run', 'Preview without writing staging proposals')
|
|
812
|
+
.option('--limit <n>', 'Maximum governance entries to classify')
|
|
813
|
+
.option('--mock', 'Use deterministic mock classifier')
|
|
814
|
+
.action(async (opts) => {
|
|
815
|
+
await runAuthorityDomainsPropose(opts);
|
|
816
|
+
});
|
|
817
|
+
authorityDomainsCmd
|
|
818
|
+
.command('review')
|
|
819
|
+
.description('List authority-domain tag proposals')
|
|
820
|
+
.option('--status <status>', 'pending, committed, rejected, or skipped', 'pending')
|
|
821
|
+
.option('--limit <n>', 'Maximum proposals to list')
|
|
822
|
+
.option('--sample <n>', 'Return a stable proposal sample')
|
|
823
|
+
.option('--stratified', 'Stratify sample across proposed domain and source collection')
|
|
824
|
+
.action(async (opts) => {
|
|
825
|
+
await runAuthorityDomainsReview(opts);
|
|
826
|
+
});
|
|
827
|
+
const authorityDomainsSampleCmd = authorityDomainsCmd
|
|
828
|
+
.command('sample')
|
|
829
|
+
.description('Manage human-reviewed authority-domain proposal samples');
|
|
830
|
+
authorityDomainsSampleCmd
|
|
831
|
+
.command('record')
|
|
832
|
+
.description('Record human-reviewed sample accuracy for authority-domain proposals')
|
|
833
|
+
.requiredOption('--sample-id <id>', 'Stable sample identifier from the review packet')
|
|
834
|
+
.option('--run-id <id>', 'Proposal run identifier')
|
|
835
|
+
.requiredOption('--approved <n>', 'Count of sampled proposals approved as-is')
|
|
836
|
+
.requiredOption('--rejected <n>', 'Count of sampled proposals rejected')
|
|
837
|
+
.requiredOption('--corrected <n>', 'Count of sampled proposals corrected to another domain')
|
|
838
|
+
.action(async (opts) => {
|
|
839
|
+
await runAuthorityDomainsRecordSample(opts);
|
|
840
|
+
});
|
|
841
|
+
authorityDomainsCmd
|
|
842
|
+
.command('ratify <proposal-id>')
|
|
843
|
+
.description('Ratify an authority-domain tag proposal')
|
|
844
|
+
.option('--note <note>', 'Review note')
|
|
845
|
+
.action(async (proposalId, opts) => {
|
|
846
|
+
await runAuthorityDomainsRatify(proposalId, opts);
|
|
847
|
+
});
|
|
848
|
+
authorityDomainsCmd
|
|
849
|
+
.command('queue-tag')
|
|
850
|
+
.description('Queue a known-correct authority-domain tag proposal')
|
|
851
|
+
.requiredOption('--entry <entryId>', 'Entry ID to tag, e.g. DEC-1244')
|
|
852
|
+
.requiredOption('--domain <domainSlug>', 'Authority-domain slug, e.g. product-design/ux')
|
|
853
|
+
.option('--note <note>', 'Known-correct evidence note')
|
|
854
|
+
.option('--ratify', 'Immediately ratify using the generated confirmation string')
|
|
855
|
+
.action(async (opts) => {
|
|
856
|
+
await runAuthorityDomainsQueueTag(opts);
|
|
857
|
+
});
|
|
858
|
+
authorityDomainsCmd
|
|
859
|
+
.command('reject <proposal-id>')
|
|
860
|
+
.description('Reject an authority-domain tag proposal')
|
|
861
|
+
.option('--reason <reason>', 'Rejection reason')
|
|
862
|
+
.action(async (proposalId, opts) => {
|
|
863
|
+
await runAuthorityDomainsReject(proposalId, opts);
|
|
864
|
+
});
|
|
865
|
+
authorityDomainsCmd
|
|
866
|
+
.command('discard-pending')
|
|
867
|
+
.description('Reject all pending authority-domain tag proposals after a failed batch diagnosis')
|
|
868
|
+
.option('--reason <reason>', 'Discard reason')
|
|
869
|
+
.action(async (opts) => {
|
|
870
|
+
await runAuthorityDomainsDiscardPending(opts);
|
|
871
|
+
});
|
|
872
|
+
authorityDomainsCmd
|
|
873
|
+
.command('readiness')
|
|
874
|
+
.description('Show WP-354 authority-domain readiness, evidence gap, and next action')
|
|
875
|
+
.action(async () => {
|
|
876
|
+
await runAuthorityDomainsReadiness();
|
|
877
|
+
});
|
|
878
|
+
authorityDomainsCmd
|
|
879
|
+
.command('benchmark')
|
|
880
|
+
.description('Run and persist the WP-354 authority-domain benchmark')
|
|
881
|
+
.action(async () => {
|
|
882
|
+
await runAuthorityDomainsBenchmark();
|
|
883
|
+
});
|
|
884
|
+
authorityDomainsCmd
|
|
885
|
+
.command('activate-cutover')
|
|
886
|
+
.description('Activate graph retrieval after WP-354 evidence gates pass')
|
|
887
|
+
.option('--force-pre-production', 'Bypass the permanently-locked valueProof gate (requires --dec-id, DEC-864)')
|
|
888
|
+
.option('--dec-id <decId>', 'Chain DEC ID authorizing the bypass')
|
|
889
|
+
.action(async (opts) => {
|
|
890
|
+
await runAuthorityDomainsActivateCutover({ forcePreProduction: opts.forcePreProduction, decId: opts.decId });
|
|
891
|
+
});
|
|
892
|
+
authorityDomainsCmd
|
|
893
|
+
.command('deactivate-cutover')
|
|
894
|
+
.description('Deactivate the active WP-354 authorityDomain cutover for this workspace (DEC-864 rollback).')
|
|
895
|
+
.option('--clerk-user-id <clerkUserId>', 'Override the Clerk user ID for audit trail')
|
|
896
|
+
.action(async (opts) => {
|
|
897
|
+
await runAuthorityDomainsDeactivateCutover({ clerkUserId: opts.clerkUserId });
|
|
898
|
+
});
|
|
899
|
+
authorityDomainsCmd
|
|
900
|
+
.command('principle-distribution')
|
|
901
|
+
.description('Pre-merge gate: check governance category match rate for principles entries')
|
|
902
|
+
.action(async () => {
|
|
903
|
+
await runAuthorityDomainsPrincipleDistribution();
|
|
904
|
+
});
|
|
630
905
|
// --- Definitions diff command (WP-305 Slice 4) ---
|
|
631
906
|
const definitionsCmd = program
|
|
632
907
|
.command('definitions')
|
|
@@ -637,6 +912,47 @@ definitionsCmd
|
|
|
637
912
|
.action(async (file) => {
|
|
638
913
|
await runDefinitionsDiff({ file });
|
|
639
914
|
});
|
|
915
|
+
// --- Method commands (WP-329 S1: method visibility) ---
|
|
916
|
+
const methodCmd = program
|
|
917
|
+
.command('method')
|
|
918
|
+
.description('Inspect published methods (skills + rules) and their per-surface adapter status (WP-329)');
|
|
919
|
+
methodCmd
|
|
920
|
+
.command('ls')
|
|
921
|
+
.description('List all methods with version, published status, and adapter presence')
|
|
922
|
+
.action(async () => {
|
|
923
|
+
await runMethodList();
|
|
924
|
+
});
|
|
925
|
+
methodCmd
|
|
926
|
+
.command('show <name>')
|
|
927
|
+
.description('Show details for one method: frontmatter, Chain entry, and per-adapter fork status')
|
|
928
|
+
.action(async (name) => {
|
|
929
|
+
if (!name?.trim()) {
|
|
930
|
+
program.commands.find((c) => c.name() === 'method')?.help();
|
|
931
|
+
return;
|
|
932
|
+
}
|
|
933
|
+
await runMethodShow({ name: name.trim() });
|
|
934
|
+
});
|
|
935
|
+
methodCmd
|
|
936
|
+
.command('diff <name>')
|
|
937
|
+
.description('Show diff between local .productbrain/ source and last-published Chain version (WP-329 S2)')
|
|
938
|
+
.action(async (name) => {
|
|
939
|
+
if (!name?.trim()) {
|
|
940
|
+
program.commands.find((c) => c.name() === 'method')?.help();
|
|
941
|
+
return;
|
|
942
|
+
}
|
|
943
|
+
await runMethodDiff({ name: name.trim() });
|
|
944
|
+
});
|
|
945
|
+
methodCmd
|
|
946
|
+
.command('publish <name>')
|
|
947
|
+
.description('Publish a local .productbrain/ method (skill or rule) to the Chain methods collection (WP-329 S3)')
|
|
948
|
+
.option('--force', 'Publish even when local body matches the last-published version (override D4 no-op guard)')
|
|
949
|
+
.action(async (name, opts) => {
|
|
950
|
+
if (!name?.trim()) {
|
|
951
|
+
program.commands.find((c) => c.name() === 'method')?.help();
|
|
952
|
+
return;
|
|
953
|
+
}
|
|
954
|
+
await runMethodPublish({ name: name.trim(), force: opts.force });
|
|
955
|
+
});
|
|
640
956
|
// --- Profile commands (WP-302 Slice 2) ---
|
|
641
957
|
const profileCmd = program
|
|
642
958
|
.command('profile')
|
|
@@ -650,16 +966,18 @@ profileCmd
|
|
|
650
966
|
profileCmd
|
|
651
967
|
.command('create <name>')
|
|
652
968
|
.description('Create a new profile with an API key')
|
|
653
|
-
.requiredOption('--api-key <key>',
|
|
969
|
+
.requiredOption('--api-key <key>', `API key (${API_KEY_PREFIX}...)`)
|
|
654
970
|
.option('--url <url>', 'Convex site URL (defaults to production)')
|
|
655
971
|
.action(async (name, opts) => {
|
|
656
972
|
await runProfileCreate({ name, apiKey: opts.apiKey, url: opts.url });
|
|
657
973
|
});
|
|
658
974
|
profileCmd
|
|
659
975
|
.command('use <name>')
|
|
660
|
-
.description('Switch
|
|
661
|
-
.
|
|
662
|
-
|
|
976
|
+
.description('Switch profile: reconciles the repo pin + global by default. --local = repo pin only; --global = global only.')
|
|
977
|
+
.option('--local', 'Write the profile pin only to .productbrain/config.local.json (repo-local, gitignored)')
|
|
978
|
+
.option('--global', 'Switch only the global active profile (does not change a locally-pinned repo)')
|
|
979
|
+
.action(async (name, opts) => {
|
|
980
|
+
await runProfileUse({ name, local: opts.local, global: opts.global });
|
|
663
981
|
});
|
|
664
982
|
profileCmd
|
|
665
983
|
.command('delete <name>')
|
|
@@ -667,6 +985,14 @@ profileCmd
|
|
|
667
985
|
.action(async (name) => {
|
|
668
986
|
await runProfileDelete({ name });
|
|
669
987
|
});
|
|
988
|
+
program
|
|
989
|
+
.command('use <name>')
|
|
990
|
+
.description('Switch the active workspace profile (alias for `pb profile use`).')
|
|
991
|
+
.option('--local', 'Write the profile pin only to .productbrain/config.local.json (repo-local, gitignored)')
|
|
992
|
+
.option('--global', 'Switch only the global active profile (does not change a locally-pinned repo)')
|
|
993
|
+
.action(async (name, opts) => {
|
|
994
|
+
await runProfileUse({ name, local: opts.local, global: opts.global });
|
|
995
|
+
});
|
|
670
996
|
// --- Glossary command (WP-302 Slice 4) ---
|
|
671
997
|
program
|
|
672
998
|
.command('glossary')
|
|
@@ -685,8 +1011,36 @@ program
|
|
|
685
1011
|
];
|
|
686
1012
|
process.stdout.write(lines.join('\n') + '\n');
|
|
687
1013
|
});
|
|
1014
|
+
// --- Usage command (WP-322 S4, FEAT-1011) ---
|
|
1015
|
+
program
|
|
1016
|
+
.command('usage')
|
|
1017
|
+
.description('Session and activity dashboard — 4-tab Ink TUI (WP-322)')
|
|
1018
|
+
.option('--json', 'Output machine-readable JSON (sessions, entries30d, activity array)')
|
|
1019
|
+
.action(async (opts) => {
|
|
1020
|
+
await runUsage({ json: opts.json });
|
|
1021
|
+
});
|
|
1022
|
+
// --- Proof-run command (WP-459: admin-proof bridge dogfood) ---
|
|
1023
|
+
program
|
|
1024
|
+
.command('proof-run <proof-name>')
|
|
1025
|
+
.description('Run an admin-only proof against the seeded preview via the proof bridge (WP-459)')
|
|
1026
|
+
.action(async (proofName) => {
|
|
1027
|
+
await runProofRun({ proofName: proofName.trim() });
|
|
1028
|
+
});
|
|
688
1029
|
// --- Admin command group (WP-312 S2, FEAT-969) ---
|
|
689
1030
|
program.addCommand(createAdminCommand());
|
|
1031
|
+
program.addCommand(createFeedbackCommand());
|
|
1032
|
+
program.addCommand(createConflictsCommand());
|
|
1033
|
+
program.addCommand(createShapeCommand());
|
|
1034
|
+
program.addCommand(createQuestionCommand());
|
|
1035
|
+
program.addCommand(createDirectionCommand());
|
|
1036
|
+
program.addCommand(createOrganisationCommand());
|
|
1037
|
+
// --- Upgrade command (WP-322 S1: ambient update notification) ---
|
|
1038
|
+
program
|
|
1039
|
+
.command('upgrade')
|
|
1040
|
+
.description(`Upgrade pb CLI to the latest beta (${UPGRADE_COMMAND})`)
|
|
1041
|
+
.action(async () => {
|
|
1042
|
+
await runUpgrade({ currentVersion: cliPackageVersion.version });
|
|
1043
|
+
});
|
|
690
1044
|
// Parse with global error handler — all uncaught errors route through handleError
|
|
691
|
-
program.parseAsync().catch(handleError);
|
|
1045
|
+
program.parseAsync(process.argv).catch(handleError);
|
|
692
1046
|
//# sourceMappingURL=index.js.map
|