@productbrain/cli 0.1.0-beta.1428 → 0.1.0-beta.14280
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 +18 -6
- package/dist/__tests__/adminConfig.test.d.ts +18 -0
- package/dist/__tests__/adminConfig.test.d.ts.map +1 -0
- package/dist/__tests__/adminConfig.test.js +221 -0
- package/dist/__tests__/adminConfig.test.js.map +1 -0
- package/dist/__tests__/canonicalRefs.vocab.test.js +2 -2
- package/dist/__tests__/canonicalRefs.vocab.test.js.map +1 -1
- package/dist/__tests__/capture-receipt-coaching.test.d.ts +2 -0
- package/dist/__tests__/capture-receipt-coaching.test.d.ts.map +1 -0
- package/dist/__tests__/capture-receipt-coaching.test.js +119 -0
- package/dist/__tests__/capture-receipt-coaching.test.js.map +1 -0
- package/dist/__tests__/capture-receipt-role-hint.test.d.ts +2 -0
- package/dist/__tests__/capture-receipt-role-hint.test.d.ts.map +1 -0
- package/dist/__tests__/capture-receipt-role-hint.test.js +64 -0
- package/dist/__tests__/capture-receipt-role-hint.test.js.map +1 -0
- package/dist/__tests__/capture-receipt-spine-floor.test.d.ts +2 -0
- package/dist/__tests__/capture-receipt-spine-floor.test.d.ts.map +1 -0
- package/dist/__tests__/capture-receipt-spine-floor.test.js +95 -0
- package/dist/__tests__/capture-receipt-spine-floor.test.js.map +1 -0
- package/dist/__tests__/capture.test.js +552 -231
- package/dist/__tests__/capture.test.js.map +1 -1
- package/dist/__tests__/cli-error-once.test.d.ts +2 -0
- package/dist/__tests__/cli-error-once.test.d.ts.map +1 -0
- package/dist/__tests__/cli-error-once.test.js +53 -0
- package/dist/__tests__/cli-error-once.test.js.map +1 -0
- package/dist/__tests__/client-binding-guard.test.d.ts +2 -0
- package/dist/__tests__/client-binding-guard.test.d.ts.map +1 -0
- package/dist/__tests__/client-binding-guard.test.js +84 -0
- package/dist/__tests__/client-binding-guard.test.js.map +1 -0
- package/dist/__tests__/coaching-mirror-drift.test.d.ts +2 -0
- package/dist/__tests__/coaching-mirror-drift.test.d.ts.map +1 -0
- package/dist/__tests__/coaching-mirror-drift.test.js +49 -0
- package/dist/__tests__/coaching-mirror-drift.test.js.map +1 -0
- package/dist/__tests__/codex-prep-parity.test.js +21 -46
- package/dist/__tests__/codex-prep-parity.test.js.map +1 -1
- package/dist/__tests__/config-conversation-profile.test.d.ts +2 -0
- package/dist/__tests__/config-conversation-profile.test.d.ts.map +1 -0
- package/dist/__tests__/config-conversation-profile.test.js +91 -0
- package/dist/__tests__/config-conversation-profile.test.js.map +1 -0
- package/dist/__tests__/config-prod-fallthrough.test.js +23 -12
- package/dist/__tests__/config-prod-fallthrough.test.js.map +1 -1
- package/dist/__tests__/config.test.js +583 -40
- package/dist/__tests__/config.test.js.map +1 -1
- package/dist/__tests__/constants.test.js +13 -4
- package/dist/__tests__/constants.test.js.map +1 -1
- package/dist/__tests__/constellation.test.js +41 -15
- package/dist/__tests__/constellation.test.js.map +1 -1
- package/dist/__tests__/conversation.test.d.ts +2 -0
- package/dist/__tests__/conversation.test.d.ts.map +1 -0
- package/dist/__tests__/conversation.test.js +113 -0
- package/dist/__tests__/conversation.test.js.map +1 -0
- package/dist/__tests__/entry-formatter.test.d.ts +2 -0
- package/dist/__tests__/entry-formatter.test.d.ts.map +1 -0
- package/dist/__tests__/entry-formatter.test.js +272 -0
- package/dist/__tests__/entry-formatter.test.js.map +1 -0
- package/dist/__tests__/entry-preflight.test.d.ts +2 -0
- package/dist/__tests__/entry-preflight.test.d.ts.map +1 -0
- package/dist/__tests__/entry-preflight.test.js +58 -0
- package/dist/__tests__/entry-preflight.test.js.map +1 -0
- package/dist/__tests__/entryAccept-batch.test.d.ts +2 -0
- package/dist/__tests__/entryAccept-batch.test.d.ts.map +1 -0
- package/dist/__tests__/entryAccept-batch.test.js +275 -0
- package/dist/__tests__/entryAccept-batch.test.js.map +1 -0
- package/dist/__tests__/entryAccept.test.d.ts +2 -0
- package/dist/__tests__/entryAccept.test.d.ts.map +1 -0
- package/dist/__tests__/entryAccept.test.js +549 -0
- package/dist/__tests__/entryAccept.test.js.map +1 -0
- package/dist/__tests__/entryDiscardResolve.test.d.ts +2 -0
- package/dist/__tests__/entryDiscardResolve.test.d.ts.map +1 -0
- package/dist/__tests__/entryDiscardResolve.test.js +36 -0
- package/dist/__tests__/entryDiscardResolve.test.js.map +1 -0
- package/dist/__tests__/entryOwn.test.d.ts +2 -0
- package/dist/__tests__/entryOwn.test.d.ts.map +1 -0
- package/dist/__tests__/entryOwn.test.js +95 -0
- package/dist/__tests__/entryOwn.test.js.map +1 -0
- package/dist/__tests__/entryReplace.test.d.ts +2 -0
- package/dist/__tests__/entryReplace.test.d.ts.map +1 -0
- package/dist/__tests__/entryReplace.test.js +60 -0
- package/dist/__tests__/entryReplace.test.js.map +1 -0
- package/dist/__tests__/entryTick.test.d.ts +2 -0
- package/dist/__tests__/entryTick.test.d.ts.map +1 -0
- package/dist/__tests__/entryTick.test.js +40 -0
- package/dist/__tests__/entryTick.test.js.map +1 -0
- package/dist/__tests__/envelope-contract.test.js +7 -5
- package/dist/__tests__/envelope-contract.test.js.map +1 -1
- package/dist/__tests__/errors.test.js +70 -0
- package/dist/__tests__/errors.test.js.map +1 -1
- package/dist/__tests__/fields.test.js +14 -3
- package/dist/__tests__/fields.test.js.map +1 -1
- package/dist/__tests__/gateway-dry-run-timeout.test.d.ts +2 -0
- package/dist/__tests__/gateway-dry-run-timeout.test.d.ts.map +1 -0
- package/dist/__tests__/gateway-dry-run-timeout.test.js +70 -0
- package/dist/__tests__/gateway-dry-run-timeout.test.js.map +1 -0
- package/dist/__tests__/gateway-timeout-body-phase.test.d.ts +2 -0
- package/dist/__tests__/gateway-timeout-body-phase.test.d.ts.map +1 -0
- package/dist/__tests__/gateway-timeout-body-phase.test.js +116 -0
- package/dist/__tests__/gateway-timeout-body-phase.test.js.map +1 -0
- package/dist/__tests__/get-batch-spinner.test.d.ts +2 -0
- package/dist/__tests__/get-batch-spinner.test.d.ts.map +1 -0
- package/dist/__tests__/get-batch-spinner.test.js +47 -0
- package/dist/__tests__/get-batch-spinner.test.js.map +1 -0
- package/dist/__tests__/get-batch.test.d.ts +2 -0
- package/dist/__tests__/get-batch.test.d.ts.map +1 -0
- package/dist/__tests__/get-batch.test.js +130 -0
- package/dist/__tests__/get-batch.test.js.map +1 -0
- package/dist/__tests__/glossary.test.js +10 -27
- package/dist/__tests__/glossary.test.js.map +1 -1
- package/dist/__tests__/health-gap-kinds-drift.test.d.ts +2 -0
- package/dist/__tests__/health-gap-kinds-drift.test.d.ts.map +1 -0
- package/dist/__tests__/health-gap-kinds-drift.test.js +43 -0
- package/dist/__tests__/health-gap-kinds-drift.test.js.map +1 -0
- package/dist/__tests__/help-no-ids.test.d.ts +2 -0
- package/dist/__tests__/help-no-ids.test.d.ts.map +1 -0
- package/dist/__tests__/help-no-ids.test.js +81 -0
- package/dist/__tests__/help-no-ids.test.js.map +1 -0
- package/dist/__tests__/init.test.d.ts +2 -1
- package/dist/__tests__/init.test.d.ts.map +1 -1
- package/dist/__tests__/init.test.js +283 -23
- package/dist/__tests__/init.test.js.map +1 -1
- package/dist/__tests__/kernel-value-sets-drift.test.d.ts +2 -0
- package/dist/__tests__/kernel-value-sets-drift.test.d.ts.map +1 -0
- package/dist/__tests__/kernel-value-sets-drift.test.js +46 -0
- package/dist/__tests__/kernel-value-sets-drift.test.js.map +1 -0
- package/dist/__tests__/kernel-value-sets-generator.test.d.ts +2 -0
- package/dist/__tests__/kernel-value-sets-generator.test.d.ts.map +1 -0
- package/dist/__tests__/kernel-value-sets-generator.test.js +108 -0
- package/dist/__tests__/kernel-value-sets-generator.test.js.map +1 -0
- package/dist/__tests__/login.test.js +35 -4
- package/dist/__tests__/login.test.js.map +1 -1
- package/dist/__tests__/missingPin.test.d.ts +11 -0
- package/dist/__tests__/missingPin.test.d.ts.map +1 -0
- package/dist/__tests__/missingPin.test.js +232 -0
- package/dist/__tests__/missingPin.test.js.map +1 -0
- package/dist/__tests__/no-session-one-place.test.d.ts +2 -0
- package/dist/__tests__/no-session-one-place.test.d.ts.map +1 -0
- package/dist/__tests__/no-session-one-place.test.js +33 -0
- package/dist/__tests__/no-session-one-place.test.js.map +1 -0
- package/dist/__tests__/notice-marker.test.js +146 -11
- package/dist/__tests__/notice-marker.test.js.map +1 -1
- package/dist/__tests__/orient-bound-scope.test.d.ts +2 -0
- package/dist/__tests__/orient-bound-scope.test.d.ts.map +1 -0
- package/dist/__tests__/orient-bound-scope.test.js +173 -0
- package/dist/__tests__/orient-bound-scope.test.js.map +1 -0
- package/dist/__tests__/orient-rules.test.d.ts +2 -0
- package/dist/__tests__/orient-rules.test.d.ts.map +1 -0
- package/dist/__tests__/orient-rules.test.js +89 -0
- package/dist/__tests__/orient-rules.test.js.map +1 -0
- package/dist/__tests__/orient.test.js +349 -61
- package/dist/__tests__/orient.test.js.map +1 -1
- package/dist/__tests__/preview-key-refresh.test.js +73 -13
- package/dist/__tests__/preview-key-refresh.test.js.map +1 -1
- package/dist/__tests__/profile-create-key.test.d.ts +2 -0
- package/dist/__tests__/profile-create-key.test.d.ts.map +1 -0
- package/dist/__tests__/profile-create-key.test.js +57 -0
- package/dist/__tests__/profile-create-key.test.js.map +1 -0
- package/dist/__tests__/profiles.test.js +534 -16
- package/dist/__tests__/profiles.test.js.map +1 -1
- package/dist/__tests__/prompts.test.js +18 -1
- package/dist/__tests__/prompts.test.js.map +1 -1
- package/dist/__tests__/rate-limit-resilience.test.d.ts +8 -0
- package/dist/__tests__/rate-limit-resilience.test.d.ts.map +1 -0
- package/dist/__tests__/rate-limit-resilience.test.js +191 -0
- package/dist/__tests__/rate-limit-resilience.test.js.map +1 -0
- package/dist/__tests__/read-target-notice.test.d.ts +2 -0
- package/dist/__tests__/read-target-notice.test.d.ts.map +1 -0
- package/dist/__tests__/read-target-notice.test.js +125 -0
- package/dist/__tests__/read-target-notice.test.js.map +1 -0
- package/dist/__tests__/relate.test.js +269 -14
- package/dist/__tests__/relate.test.js.map +1 -1
- package/dist/__tests__/removed-commands.test.d.ts +2 -0
- package/dist/__tests__/removed-commands.test.d.ts.map +1 -0
- package/dist/__tests__/removed-commands.test.js +99 -0
- package/dist/__tests__/removed-commands.test.js.map +1 -0
- package/dist/__tests__/reply-commands-registered.test.d.ts +2 -0
- package/dist/__tests__/reply-commands-registered.test.d.ts.map +1 -0
- package/dist/__tests__/reply-commands-registered.test.js +83 -0
- package/dist/__tests__/reply-commands-registered.test.js.map +1 -0
- package/dist/__tests__/reportedProfile.test.d.ts +2 -0
- package/dist/__tests__/reportedProfile.test.d.ts.map +1 -0
- package/dist/__tests__/reportedProfile.test.js +328 -0
- package/dist/__tests__/reportedProfile.test.js.map +1 -0
- package/dist/__tests__/restore.test.d.ts +2 -0
- package/dist/__tests__/restore.test.d.ts.map +1 -0
- package/dist/__tests__/restore.test.js +91 -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 +111 -0
- package/dist/__tests__/route-latency-budget.test.js.map +1 -0
- package/dist/__tests__/runner.test.js +59 -44
- package/dist/__tests__/runner.test.js.map +1 -1
- package/dist/__tests__/session-binding-refusal-tenant.test.d.ts +2 -0
- package/dist/__tests__/session-binding-refusal-tenant.test.d.ts.map +1 -0
- package/dist/__tests__/session-binding-refusal-tenant.test.js +112 -0
- package/dist/__tests__/session-binding-refusal-tenant.test.js.map +1 -0
- package/dist/__tests__/session-close-conversation.test.d.ts +2 -0
- package/dist/__tests__/session-close-conversation.test.d.ts.map +1 -0
- package/dist/__tests__/session-close-conversation.test.js +75 -0
- package/dist/__tests__/session-close-conversation.test.js.map +1 -0
- package/dist/__tests__/session-close-loop.test.js +150 -32
- package/dist/__tests__/session-close-loop.test.js.map +1 -1
- package/dist/__tests__/session-ended-refusal.test.d.ts +2 -0
- package/dist/__tests__/session-ended-refusal.test.d.ts.map +1 -0
- package/dist/__tests__/session-ended-refusal.test.js +76 -0
- package/dist/__tests__/session-ended-refusal.test.js.map +1 -0
- package/dist/__tests__/session-hook-conversation.test.d.ts +2 -0
- package/dist/__tests__/session-hook-conversation.test.d.ts.map +1 -0
- package/dist/__tests__/session-hook-conversation.test.js +87 -0
- package/dist/__tests__/session-hook-conversation.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 +171 -0
- package/dist/__tests__/session-list-show.test.js.map +1 -0
- package/dist/__tests__/session-pinned-role.test.d.ts +2 -0
- package/dist/__tests__/session-pinned-role.test.d.ts.map +1 -0
- package/dist/__tests__/session-pinned-role.test.js +333 -0
- package/dist/__tests__/session-pinned-role.test.js.map +1 -0
- package/dist/__tests__/session-reset.test.js +26 -11
- package/dist/__tests__/session-reset.test.js.map +1 -1
- package/dist/__tests__/session-resume-backstop.test.js +42 -2
- package/dist/__tests__/session-resume-backstop.test.js.map +1 -1
- package/dist/__tests__/session-role-name-sanitize.test.d.ts +2 -0
- package/dist/__tests__/session-role-name-sanitize.test.d.ts.map +1 -0
- package/dist/__tests__/session-role-name-sanitize.test.js +119 -0
- package/dist/__tests__/session-role-name-sanitize.test.js.map +1 -0
- package/dist/__tests__/session-seat-split.test.d.ts +2 -0
- package/dist/__tests__/session-seat-split.test.d.ts.map +1 -0
- package/dist/__tests__/session-seat-split.test.js +142 -0
- package/dist/__tests__/session-seat-split.test.js.map +1 -0
- package/dist/__tests__/session-start-key-refresh.test.js +64 -30
- package/dist/__tests__/session-start-key-refresh.test.js.map +1 -1
- package/dist/__tests__/session-state-machine.test.js +193 -27
- package/dist/__tests__/session-state-machine.test.js.map +1 -1
- package/dist/__tests__/session-switch.test.js +218 -7
- package/dist/__tests__/session-switch.test.js.map +1 -1
- package/dist/__tests__/session-touch.test.js +86 -107
- package/dist/__tests__/session-touch.test.js.map +1 -1
- package/dist/__tests__/session.test.js +0 -3
- package/dist/__tests__/session.test.js.map +1 -1
- package/dist/__tests__/sessionBinding.test.d.ts +2 -0
- package/dist/__tests__/sessionBinding.test.d.ts.map +1 -0
- package/dist/__tests__/sessionBinding.test.js +131 -0
- package/dist/__tests__/sessionBinding.test.js.map +1 -0
- package/dist/__tests__/sessionByIdLookup.test.d.ts +2 -0
- package/dist/__tests__/sessionByIdLookup.test.d.ts.map +1 -0
- package/dist/__tests__/sessionByIdLookup.test.js +63 -0
- package/dist/__tests__/sessionByIdLookup.test.js.map +1 -0
- package/dist/__tests__/spinner-labels.test.js +8 -0
- package/dist/__tests__/spinner-labels.test.js.map +1 -1
- package/dist/__tests__/state.test.js +21 -1
- package/dist/__tests__/state.test.js.map +1 -1
- package/dist/__tests__/stillTrue.test.d.ts +2 -0
- package/dist/__tests__/stillTrue.test.d.ts.map +1 -0
- package/dist/__tests__/stillTrue.test.js +53 -0
- package/dist/__tests__/stillTrue.test.js.map +1 -0
- package/dist/__tests__/strip.test.js +57 -3
- package/dist/__tests__/strip.test.js.map +1 -1
- package/dist/__tests__/tenant-notice-write-path.test.d.ts +2 -0
- package/dist/__tests__/tenant-notice-write-path.test.d.ts.map +1 -0
- package/dist/__tests__/tenant-notice-write-path.test.js +183 -0
- package/dist/__tests__/tenant-notice-write-path.test.js.map +1 -0
- package/dist/__tests__/unknown-option-flags.test.d.ts +2 -0
- package/dist/__tests__/unknown-option-flags.test.d.ts.map +1 -0
- package/dist/__tests__/unknown-option-flags.test.js +81 -0
- package/dist/__tests__/unknown-option-flags.test.js.map +1 -0
- package/dist/__tests__/update-check.test.js +21 -1
- package/dist/__tests__/update-check.test.js.map +1 -1
- package/dist/__tests__/update.test.js +535 -8
- package/dist/__tests__/update.test.js.map +1 -1
- package/dist/__tests__/upgrade-runner.test.js +44 -21
- package/dist/__tests__/upgrade-runner.test.js.map +1 -1
- package/dist/__tests__/verify-formatter.test.d.ts +2 -0
- package/dist/__tests__/verify-formatter.test.d.ts.map +1 -0
- package/dist/__tests__/verify-formatter.test.js +85 -0
- package/dist/__tests__/verify-formatter.test.js.map +1 -0
- package/dist/__tests__/vocabulary-leak.test.d.ts +1 -7
- package/dist/__tests__/vocabulary-leak.test.d.ts.map +1 -1
- package/dist/__tests__/vocabulary-leak.test.js +9 -117
- package/dist/__tests__/vocabulary-leak.test.js.map +1 -1
- package/dist/__tests__/workspace.test.js +10 -71
- 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 +551 -0
- package/dist/__tests__/workspaceNotice.test.js.map +1 -0
- package/dist/commands/__tests__/quality.test.d.ts +2 -0
- package/dist/commands/__tests__/quality.test.d.ts.map +1 -0
- package/dist/commands/__tests__/quality.test.js +315 -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 +151 -0
- package/dist/commands/__tests__/rework.test.js.map +1 -0
- package/dist/commands/__tests__/search.test.d.ts +2 -0
- package/dist/commands/__tests__/search.test.d.ts.map +1 -0
- package/dist/commands/__tests__/search.test.js +102 -0
- package/dist/commands/__tests__/search.test.js.map +1 -0
- package/dist/commands/__tests__/tasksList.test.d.ts +2 -0
- package/dist/commands/__tests__/tasksList.test.d.ts.map +1 -0
- package/dist/commands/__tests__/tasksList.test.js +66 -0
- package/dist/commands/__tests__/tasksList.test.js.map +1 -0
- package/dist/commands/__tests__/tensionsList.test.d.ts +2 -0
- package/dist/commands/__tests__/tensionsList.test.d.ts.map +1 -0
- package/dist/commands/__tests__/tensionsList.test.js +63 -0
- package/dist/commands/__tests__/tensionsList.test.js.map +1 -0
- package/dist/commands/accept-policy.d.ts +10 -0
- package/dist/commands/accept-policy.d.ts.map +1 -0
- package/dist/commands/accept-policy.js +101 -0
- package/dist/commands/accept-policy.js.map +1 -0
- package/dist/commands/admin/cockpit.d.ts +3 -14
- package/dist/commands/admin/cockpit.d.ts.map +1 -1
- package/dist/commands/admin/cockpit.js +14 -79
- package/dist/commands/admin/cockpit.js.map +1 -1
- package/dist/commands/admin/cockpit.test.d.ts +2 -0
- package/dist/commands/admin/cockpit.test.d.ts.map +1 -0
- package/dist/commands/admin/cockpit.test.js +104 -0
- package/dist/commands/admin/cockpit.test.js.map +1 -0
- package/dist/commands/admin/index.d.ts +49 -0
- package/dist/commands/admin/index.d.ts.map +1 -1
- package/dist/commands/admin/index.js +149 -30
- package/dist/commands/admin/index.js.map +1 -1
- package/dist/commands/admin/index.test.d.ts +2 -0
- package/dist/commands/admin/index.test.d.ts.map +1 -0
- package/dist/commands/admin/index.test.js +94 -0
- package/dist/commands/admin/index.test.js.map +1 -0
- package/dist/commands/admin/inspect.d.ts.map +1 -1
- package/dist/commands/admin/inspect.js +10 -15
- package/dist/commands/admin/inspect.js.map +1 -1
- package/dist/commands/admin/manage.d.ts.map +1 -1
- package/dist/commands/admin/manage.js +17 -224
- package/dist/commands/admin/manage.js.map +1 -1
- package/dist/commands/admin/manage.test.d.ts +0 -14
- package/dist/commands/admin/manage.test.d.ts.map +1 -1
- package/dist/commands/admin/manage.test.js +86 -142
- package/dist/commands/admin/manage.test.js.map +1 -1
- package/dist/commands/admin/probe.d.ts +75 -0
- package/dist/commands/admin/probe.d.ts.map +1 -0
- package/dist/commands/admin/probe.js +224 -0
- package/dist/commands/admin/probe.js.map +1 -0
- package/dist/commands/admin/probe.test.d.ts +2 -0
- package/dist/commands/admin/probe.test.d.ts.map +1 -0
- package/dist/commands/admin/probe.test.js +193 -0
- package/dist/commands/admin/probe.test.js.map +1 -0
- package/dist/commands/admin/run.d.ts +43 -0
- package/dist/commands/admin/run.d.ts.map +1 -0
- package/dist/commands/admin/run.js +78 -0
- package/dist/commands/admin/run.js.map +1 -0
- package/dist/commands/admin/run.test.d.ts +18 -0
- package/dist/commands/admin/run.test.d.ts.map +1 -0
- package/dist/commands/admin/run.test.js +168 -0
- package/dist/commands/admin/run.test.js.map +1 -0
- package/dist/commands/admin/seed.d.ts +14 -35
- package/dist/commands/admin/seed.d.ts.map +1 -1
- package/dist/commands/admin/seed.js +50 -352
- package/dist/commands/admin/seed.js.map +1 -1
- package/dist/commands/admin/seed.test.d.ts +3 -4
- package/dist/commands/admin/seed.test.d.ts.map +1 -1
- package/dist/commands/admin/seed.test.js +36 -73
- package/dist/commands/admin/seed.test.js.map +1 -1
- package/dist/commands/admin/seedRegistryEntries.generated.d.ts +3 -1
- package/dist/commands/admin/seedRegistryEntries.generated.d.ts.map +1 -1
- package/dist/commands/admin/seedRegistryEntries.generated.js +21 -102
- package/dist/commands/admin/seedRegistryEntries.generated.js.map +1 -1
- package/dist/commands/admin/seedRegistryEntries.test.d.ts +5 -3
- package/dist/commands/admin/seedRegistryEntries.test.d.ts.map +1 -1
- package/dist/commands/admin/seedRegistryEntries.test.js +69 -30
- package/dist/commands/admin/seedRegistryEntries.test.js.map +1 -1
- package/dist/commands/admin/seedRowType.d.ts +22 -0
- package/dist/commands/admin/seedRowType.d.ts.map +1 -0
- package/dist/commands/admin/seedRowType.js +2 -0
- package/dist/commands/admin/seedRowType.js.map +1 -0
- package/dist/commands/admin/seedStatusColor.d.ts +9 -0
- package/dist/commands/admin/seedStatusColor.d.ts.map +1 -0
- package/dist/commands/admin/seedStatusColor.js +19 -0
- package/dist/commands/admin/seedStatusColor.js.map +1 -0
- package/dist/commands/admin/seedStatusColor.test.d.ts +2 -0
- package/dist/commands/admin/seedStatusColor.test.d.ts.map +1 -0
- package/dist/commands/admin/seedStatusColor.test.js +31 -0
- package/dist/commands/admin/seedStatusColor.test.js.map +1 -0
- package/dist/commands/brief.d.ts.map +1 -1
- package/dist/commands/brief.js +27 -10
- package/dist/commands/brief.js.map +1 -1
- package/dist/commands/capture.d.ts +17 -16
- package/dist/commands/capture.d.ts.map +1 -1
- package/dist/commands/capture.js +119 -300
- package/dist/commands/capture.js.map +1 -1
- package/dist/commands/chain-walk.d.ts.map +1 -1
- package/dist/commands/chain-walk.js +1 -3
- package/dist/commands/chain-walk.js.map +1 -1
- package/dist/commands/changes.d.ts.map +1 -1
- package/dist/commands/changes.js +1 -3
- package/dist/commands/changes.js.map +1 -1
- package/dist/commands/codex-prep.d.ts +3 -3
- package/dist/commands/codex-prep.d.ts.map +1 -1
- package/dist/commands/codex-prep.js +4 -6
- package/dist/commands/codex-prep.js.map +1 -1
- package/dist/commands/collections.d.ts +1 -1
- package/dist/commands/collections.d.ts.map +1 -1
- package/dist/commands/collections.js +5 -13
- package/dist/commands/collections.js.map +1 -1
- package/dist/commands/conflicts.d.ts +47 -0
- package/dist/commands/conflicts.d.ts.map +1 -0
- package/dist/commands/conflicts.js +241 -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 +232 -0
- package/dist/commands/conflicts.test.js.map +1 -0
- package/dist/commands/connect-config.test.js +12 -9
- package/dist/commands/connect-config.test.js.map +1 -1
- package/dist/commands/connect-decline.test.d.ts +2 -0
- package/dist/commands/connect-decline.test.d.ts.map +1 -0
- package/dist/commands/connect-decline.test.js +70 -0
- package/dist/commands/connect-decline.test.js.map +1 -0
- package/dist/commands/connect-integration.test.d.ts +2 -2
- package/dist/commands/connect-integration.test.js +38 -18
- package/dist/commands/connect-integration.test.js.map +1 -1
- package/dist/commands/connect-legacy-migration.test.d.ts +2 -0
- package/dist/commands/connect-legacy-migration.test.d.ts.map +1 -0
- package/dist/commands/connect-legacy-migration.test.js +108 -0
- package/dist/commands/connect-legacy-migration.test.js.map +1 -0
- package/dist/commands/connect-redeem-failure.test.d.ts +2 -0
- package/dist/commands/connect-redeem-failure.test.d.ts.map +1 -0
- package/dist/commands/connect-redeem-failure.test.js +133 -0
- package/dist/commands/connect-redeem-failure.test.js.map +1 -0
- package/dist/commands/connect-screens.d.ts +11 -17
- package/dist/commands/connect-screens.d.ts.map +1 -1
- package/dist/commands/connect-screens.js +19 -81
- package/dist/commands/connect-screens.js.map +1 -1
- package/dist/commands/connect-screens.test.d.ts +2 -0
- package/dist/commands/connect-screens.test.d.ts.map +1 -0
- package/dist/commands/connect-screens.test.js +19 -0
- package/dist/commands/connect-screens.test.js.map +1 -0
- package/dist/commands/connect-seal.test.d.ts +2 -0
- package/dist/commands/connect-seal.test.d.ts.map +1 -0
- package/dist/commands/connect-seal.test.js +54 -0
- package/dist/commands/connect-seal.test.js.map +1 -0
- package/dist/commands/connect.d.ts +16 -14
- package/dist/commands/connect.d.ts.map +1 -1
- package/dist/commands/connect.js +249 -89
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/connect.test.js +254 -30
- package/dist/commands/connect.test.js.map +1 -1
- package/dist/commands/constellation.d.ts.map +1 -1
- package/dist/commands/constellation.js +1 -3
- package/dist/commands/constellation.js.map +1 -1
- package/dist/commands/context.d.ts.map +1 -1
- package/dist/commands/context.js +1 -3
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/cross-cut.d.ts.map +1 -1
- package/dist/commands/cross-cut.js +1 -3
- 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 +75 -0
- package/dist/commands/direction.js.map +1 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +115 -48
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/doctor.test.js +220 -29
- package/dist/commands/doctor.test.js.map +1 -1
- package/dist/commands/entryAccept.d.ts +59 -0
- package/dist/commands/entryAccept.d.ts.map +1 -0
- package/dist/commands/entryAccept.js +284 -0
- package/dist/commands/entryAccept.js.map +1 -0
- package/dist/commands/entryDiscardResolve.d.ts +9 -0
- package/dist/commands/entryDiscardResolve.d.ts.map +1 -0
- package/dist/commands/entryDiscardResolve.js +27 -0
- package/dist/commands/entryDiscardResolve.js.map +1 -0
- package/dist/commands/entryOwn.d.ts +10 -0
- package/dist/commands/entryOwn.d.ts.map +1 -0
- package/dist/commands/entryOwn.js +40 -0
- package/dist/commands/entryOwn.js.map +1 -0
- package/dist/commands/entryPreflight.d.ts +8 -0
- package/dist/commands/entryPreflight.d.ts.map +1 -0
- package/dist/commands/entryPreflight.js +44 -0
- package/dist/commands/entryPreflight.js.map +1 -0
- package/dist/commands/entryReplace.d.ts +7 -0
- package/dist/commands/entryReplace.d.ts.map +1 -0
- package/dist/commands/entryReplace.js +34 -0
- package/dist/commands/entryReplace.js.map +1 -0
- package/dist/commands/entryTick.d.ts +8 -0
- package/dist/commands/entryTick.d.ts.map +1 -0
- package/dist/commands/entryTick.js +42 -0
- package/dist/commands/entryTick.js.map +1 -0
- package/dist/commands/feedback.d.ts +39 -0
- package/dist/commands/feedback.d.ts.map +1 -0
- package/dist/commands/feedback.js +165 -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 +109 -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 -4
- 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.d.ts +9 -4
- package/dist/commands/get.d.ts.map +1 -1
- package/dist/commands/get.js +34 -47
- package/dist/commands/get.js.map +1 -1
- package/dist/commands/history.d.ts +32 -0
- package/dist/commands/history.d.ts.map +1 -0
- package/dist/commands/history.js +55 -0
- package/dist/commands/history.js.map +1 -0
- package/dist/commands/history.test.d.ts +2 -0
- package/dist/commands/history.test.d.ts.map +1 -0
- package/dist/commands/history.test.js +135 -0
- package/dist/commands/history.test.js.map +1 -0
- package/dist/commands/init.d.ts +29 -2
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +178 -21
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +25 -20
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/method.d.ts +5 -97
- package/dist/commands/method.d.ts.map +1 -1
- package/dist/commands/method.js +47 -767
- package/dist/commands/method.js.map +1 -1
- package/dist/commands/organisation.d.ts +12 -0
- package/dist/commands/organisation.d.ts.map +1 -0
- package/dist/commands/organisation.js +143 -0
- package/dist/commands/organisation.js.map +1 -0
- package/dist/commands/organisation.test.d.ts +2 -0
- package/dist/commands/organisation.test.d.ts.map +1 -0
- package/dist/commands/organisation.test.js +116 -0
- package/dist/commands/organisation.test.js.map +1 -0
- package/dist/commands/organisationHierarchy.d.ts +15 -0
- package/dist/commands/organisationHierarchy.d.ts.map +1 -0
- package/dist/commands/organisationHierarchy.js +102 -0
- package/dist/commands/organisationHierarchy.js.map +1 -0
- package/dist/commands/organisationHierarchy.test.d.ts +2 -0
- package/dist/commands/organisationHierarchy.test.d.ts.map +1 -0
- package/dist/commands/organisationHierarchy.test.js +144 -0
- package/dist/commands/organisationHierarchy.test.js.map +1 -0
- package/dist/commands/organisationWrite.d.ts +20 -0
- package/dist/commands/organisationWrite.d.ts.map +1 -0
- package/dist/commands/organisationWrite.js +44 -0
- package/dist/commands/organisationWrite.js.map +1 -0
- package/dist/commands/orient.d.ts +41 -121
- package/dist/commands/orient.d.ts.map +1 -1
- package/dist/commands/orient.js +147 -39
- package/dist/commands/orient.js.map +1 -1
- package/dist/commands/outcome.d.ts +96 -0
- package/dist/commands/outcome.d.ts.map +1 -0
- package/dist/commands/outcome.js +194 -0
- package/dist/commands/outcome.js.map +1 -0
- package/dist/commands/outcome.test.d.ts +2 -0
- package/dist/commands/outcome.test.d.ts.map +1 -0
- package/dist/commands/outcome.test.js +326 -0
- package/dist/commands/outcome.test.js.map +1 -0
- package/dist/commands/people.d.ts +6 -0
- package/dist/commands/people.d.ts.map +1 -0
- package/dist/commands/people.js +21 -0
- package/dist/commands/people.js.map +1 -0
- package/dist/commands/people.test.d.ts +2 -0
- package/dist/commands/people.test.d.ts.map +1 -0
- package/dist/commands/people.test.js +61 -0
- package/dist/commands/people.test.js.map +1 -0
- package/dist/commands/profile.d.ts +42 -4
- package/dist/commands/profile.d.ts.map +1 -1
- package/dist/commands/profile.js +222 -36
- package/dist/commands/profile.js.map +1 -1
- package/dist/commands/quality.d.ts +38 -0
- package/dist/commands/quality.d.ts.map +1 -0
- package/dist/commands/quality.js +99 -0
- package/dist/commands/quality.js.map +1 -0
- package/dist/commands/questions.d.ts +27 -0
- package/dist/commands/questions.d.ts.map +1 -0
- package/dist/commands/questions.js +255 -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 +261 -0
- package/dist/commands/questions.test.js.map +1 -0
- package/dist/commands/relate.d.ts +10 -0
- package/dist/commands/relate.d.ts.map +1 -1
- package/dist/commands/relate.js +119 -26
- 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 +88 -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 +96 -0
- package/dist/commands/rework.js.map +1 -0
- package/dist/commands/role.d.ts +90 -0
- package/dist/commands/role.d.ts.map +1 -0
- package/dist/commands/role.js +172 -0
- package/dist/commands/role.js.map +1 -0
- package/dist/commands/role.test.d.ts +2 -0
- package/dist/commands/role.test.d.ts.map +1 -0
- package/dist/commands/role.test.js +345 -0
- package/dist/commands/role.test.js.map +1 -0
- package/dist/commands/scoreboard.d.ts +23 -0
- package/dist/commands/scoreboard.d.ts.map +1 -0
- package/dist/commands/scoreboard.js +33 -0
- package/dist/commands/scoreboard.js.map +1 -0
- package/dist/commands/scoreboard.test.d.ts +2 -0
- package/dist/commands/scoreboard.test.d.ts.map +1 -0
- package/dist/commands/scoreboard.test.js +51 -0
- package/dist/commands/scoreboard.test.js.map +1 -0
- package/dist/commands/search.d.ts +14 -2
- package/dist/commands/search.d.ts.map +1 -1
- package/dist/commands/search.js +52 -6
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/session-hook.d.ts +38 -0
- package/dist/commands/session-hook.d.ts.map +1 -0
- package/dist/commands/session-hook.js +97 -0
- package/dist/commands/session-hook.js.map +1 -0
- package/dist/commands/session-hook.test.d.ts +2 -0
- package/dist/commands/session-hook.test.d.ts.map +1 -0
- package/dist/commands/session-hook.test.js +89 -0
- package/dist/commands/session-hook.test.js.map +1 -0
- package/dist/commands/session.d.ts +38 -5
- package/dist/commands/session.d.ts.map +1 -1
- package/dist/commands/session.js +292 -214
- package/dist/commands/session.js.map +1 -1
- package/dist/commands/status.d.ts +7 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +101 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/status.test.d.ts +2 -0
- package/dist/commands/status.test.d.ts.map +1 -0
- package/dist/commands/status.test.js +75 -0
- package/dist/commands/status.test.js.map +1 -0
- package/dist/commands/stillTrue.d.ts +14 -0
- package/dist/commands/stillTrue.d.ts.map +1 -0
- package/dist/commands/stillTrue.js +47 -0
- package/dist/commands/stillTrue.js.map +1 -0
- package/dist/commands/tasksList.d.ts +12 -0
- package/dist/commands/tasksList.d.ts.map +1 -0
- package/dist/commands/tasksList.js +45 -0
- package/dist/commands/tasksList.js.map +1 -0
- package/dist/commands/tensionsList.d.ts +5 -0
- package/dist/commands/tensionsList.d.ts.map +1 -0
- package/dist/commands/tensionsList.js +25 -0
- package/dist/commands/tensionsList.js.map +1 -0
- package/dist/commands/update.d.ts +23 -0
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +198 -48
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/upgrade.js +9 -9
- package/dist/commands/upgrade.js.map +1 -1
- package/dist/commands/usage.d.ts.map +1 -1
- package/dist/commands/usage.js +0 -18
- package/dist/commands/usage.js.map +1 -1
- package/dist/commands/verify.d.ts.map +1 -1
- package/dist/commands/verify.js +9 -6
- package/dist/commands/verify.js.map +1 -1
- package/dist/commands/welcome.d.ts.map +1 -1
- package/dist/commands/welcome.js +7 -3
- package/dist/commands/welcome.js.map +1 -1
- package/dist/commands/whoami.d.ts +13 -2
- package/dist/commands/whoami.d.ts.map +1 -1
- package/dist/commands/whoami.js +82 -20
- package/dist/commands/whoami.js.map +1 -1
- package/dist/commands/whoami.test.js +101 -6
- package/dist/commands/whoami.test.js.map +1 -1
- package/dist/commands/workspace.d.ts +7 -74
- package/dist/commands/workspace.d.ts.map +1 -1
- package/dist/commands/workspace.js +11 -76
- package/dist/commands/workspace.js.map +1 -1
- package/dist/formatters/__tests__/orient-openTasks.test.d.ts +2 -0
- package/dist/formatters/__tests__/orient-openTasks.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/orient-openTasks.test.js +77 -0
- package/dist/formatters/__tests__/orient-openTasks.test.js.map +1 -0
- package/dist/formatters/__tests__/orient-plannedWorkCut.test.d.ts +2 -0
- package/dist/formatters/__tests__/orient-plannedWorkCut.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/orient-plannedWorkCut.test.js +38 -0
- package/dist/formatters/__tests__/orient-plannedWorkCut.test.js.map +1 -0
- package/dist/formatters/__tests__/orient-provenance.test.d.ts +2 -3
- package/dist/formatters/__tests__/orient-provenance.test.d.ts.map +1 -1
- package/dist/formatters/__tests__/orient-provenance.test.js +41 -183
- package/dist/formatters/__tests__/orient-provenance.test.js.map +1 -1
- package/dist/formatters/__tests__/orient-ruleLists.test.d.ts +2 -0
- package/dist/formatters/__tests__/orient-ruleLists.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/orient-ruleLists.test.js +93 -0
- package/dist/formatters/__tests__/orient-ruleLists.test.js.map +1 -0
- package/dist/formatters/__tests__/orient-workPackageList.test.d.ts +2 -0
- package/dist/formatters/__tests__/orient-workPackageList.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/orient-workPackageList.test.js +69 -0
- package/dist/formatters/__tests__/orient-workPackageList.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 +199 -0
- package/dist/formatters/__tests__/session-list-show.test.js.map +1 -0
- package/dist/formatters/__tests__/session.test.js +203 -43
- package/dist/formatters/__tests__/session.test.js.map +1 -1
- package/dist/formatters/__tests__/tensionsList.test.d.ts +2 -0
- package/dist/formatters/__tests__/tensionsList.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/tensionsList.test.js +30 -0
- package/dist/formatters/__tests__/tensionsList.test.js.map +1 -0
- package/dist/formatters/brief.d.ts +7 -15
- package/dist/formatters/brief.d.ts.map +1 -1
- package/dist/formatters/brief.js +18 -15
- package/dist/formatters/brief.js.map +1 -1
- package/dist/formatters/brief.test.d.ts +2 -0
- package/dist/formatters/brief.test.d.ts.map +1 -0
- package/dist/formatters/brief.test.js +33 -0
- package/dist/formatters/brief.test.js.map +1 -0
- package/dist/formatters/capture.d.ts +26 -17
- package/dist/formatters/capture.d.ts.map +1 -1
- package/dist/formatters/capture.js +44 -19
- package/dist/formatters/capture.js.map +1 -1
- package/dist/formatters/coaching.d.ts +59 -0
- package/dist/formatters/coaching.d.ts.map +1 -0
- package/dist/formatters/coaching.js +51 -0
- package/dist/formatters/coaching.js.map +1 -0
- package/dist/formatters/collections.d.ts +0 -1
- package/dist/formatters/collections.d.ts.map +1 -1
- package/dist/formatters/collections.js +14 -5
- package/dist/formatters/collections.js.map +1 -1
- package/dist/formatters/conflicts.d.ts +83 -0
- package/dist/formatters/conflicts.d.ts.map +1 -0
- package/dist/formatters/conflicts.js +104 -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 +195 -0
- package/dist/formatters/conflicts.test.js.map +1 -0
- package/dist/formatters/constellation.d.ts +2 -0
- package/dist/formatters/constellation.d.ts.map +1 -1
- package/dist/formatters/constellation.js +2 -0
- package/dist/formatters/constellation.js.map +1 -1
- 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 +77 -3
- package/dist/formatters/entry.d.ts.map +1 -1
- package/dist/formatters/entry.js +79 -11
- package/dist/formatters/entry.js.map +1 -1
- package/dist/formatters/entryAccept.d.ts +69 -0
- package/dist/formatters/entryAccept.d.ts.map +1 -0
- package/dist/formatters/entryAccept.js +71 -0
- package/dist/formatters/entryAccept.js.map +1 -0
- package/dist/formatters/feedback.d.ts +61 -0
- package/dist/formatters/feedback.d.ts.map +1 -0
- package/dist/formatters/feedback.js +95 -0
- package/dist/formatters/feedback.js.map +1 -0
- package/dist/formatters/feedback.test.d.ts +2 -0
- package/dist/formatters/feedback.test.d.ts.map +1 -0
- package/dist/formatters/feedback.test.js +142 -0
- package/dist/formatters/feedback.test.js.map +1 -0
- package/dist/formatters/fields.d.ts +7 -1
- package/dist/formatters/fields.d.ts.map +1 -1
- package/dist/formatters/fields.js +9 -3
- package/dist/formatters/fields.js.map +1 -1
- package/dist/formatters/fields.test.d.ts +2 -0
- package/dist/formatters/fields.test.d.ts.map +1 -0
- package/dist/formatters/fields.test.js +42 -0
- package/dist/formatters/fields.test.js.map +1 -0
- package/dist/formatters/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 +102 -181
- package/dist/formatters/orient.d.ts.map +1 -1
- package/dist/formatters/orient.js +151 -258
- 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 +75 -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.taskAlignment.test.d.ts +2 -0
- package/dist/formatters/orient.taskAlignment.test.d.ts.map +1 -0
- package/dist/formatters/orient.taskAlignment.test.js +52 -0
- package/dist/formatters/orient.taskAlignment.test.js.map +1 -0
- package/dist/formatters/orientDegradation.d.ts +35 -0
- package/dist/formatters/orientDegradation.d.ts.map +1 -0
- package/dist/formatters/orientDegradation.js +47 -0
- package/dist/formatters/orientDegradation.js.map +1 -0
- package/dist/formatters/orientDegradation.test.d.ts +2 -0
- package/dist/formatters/orientDegradation.test.d.ts.map +1 -0
- package/dist/formatters/orientDegradation.test.js +26 -0
- package/dist/formatters/orientDegradation.test.js.map +1 -0
- package/dist/formatters/orientDirection.d.ts +25 -0
- package/dist/formatters/orientDirection.d.ts.map +1 -0
- package/dist/formatters/orientDirection.js +7 -0
- package/dist/formatters/orientDirection.js.map +1 -0
- package/dist/formatters/orientDirection.test.d.ts +2 -0
- package/dist/formatters/orientDirection.test.d.ts.map +1 -0
- package/dist/formatters/orientDirection.test.js +66 -0
- package/dist/formatters/orientDirection.test.js.map +1 -0
- package/dist/formatters/orientRetrievalMiss.d.ts +22 -0
- package/dist/formatters/orientRetrievalMiss.d.ts.map +1 -0
- package/dist/formatters/orientRetrievalMiss.js +17 -0
- package/dist/formatters/orientRetrievalMiss.js.map +1 -0
- package/dist/formatters/plannedWorkCounts.d.ts +16 -0
- package/dist/formatters/plannedWorkCounts.d.ts.map +1 -0
- package/dist/formatters/plannedWorkCounts.js +15 -0
- package/dist/formatters/plannedWorkCounts.js.map +1 -0
- package/dist/formatters/qualityChecks.d.ts +21 -0
- package/dist/formatters/qualityChecks.d.ts.map +1 -0
- package/dist/formatters/qualityChecks.js +132 -0
- package/dist/formatters/qualityChecks.js.map +1 -0
- package/dist/formatters/questions.d.ts +90 -0
- package/dist/formatters/questions.d.ts.map +1 -0
- package/dist/formatters/questions.js +126 -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 +176 -0
- package/dist/formatters/questions.test.js.map +1 -0
- package/dist/formatters/relate.d.ts +13 -2
- package/dist/formatters/relate.d.ts.map +1 -1
- package/dist/formatters/relate.js +15 -5
- package/dist/formatters/relate.js.map +1 -1
- package/dist/formatters/relate.test.d.ts +2 -0
- package/dist/formatters/relate.test.d.ts.map +1 -0
- package/dist/formatters/relate.test.js +91 -0
- package/dist/formatters/relate.test.js.map +1 -0
- package/dist/formatters/scoreboard.d.ts +11 -0
- package/dist/formatters/scoreboard.d.ts.map +1 -0
- package/dist/formatters/scoreboard.js +144 -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 +265 -0
- package/dist/formatters/scoreboard.test.js.map +1 -0
- package/dist/formatters/search.d.ts +40 -0
- package/dist/formatters/search.d.ts.map +1 -1
- package/dist/formatters/search.js +41 -12
- package/dist/formatters/search.js.map +1 -1
- package/dist/formatters/search.test.d.ts +2 -0
- package/dist/formatters/search.test.d.ts.map +1 -0
- package/dist/formatters/search.test.js +86 -0
- package/dist/formatters/search.test.js.map +1 -0
- package/dist/formatters/session-feedback.test.d.ts +2 -0
- package/dist/formatters/session-feedback.test.d.ts.map +1 -0
- package/dist/formatters/session-feedback.test.js +274 -0
- package/dist/formatters/session-feedback.test.js.map +1 -0
- package/dist/formatters/session.d.ts +106 -13
- package/dist/formatters/session.d.ts.map +1 -1
- package/dist/formatters/session.js +287 -83
- package/dist/formatters/session.js.map +1 -1
- package/dist/formatters/spineCheck.d.ts +14 -0
- package/dist/formatters/spineCheck.d.ts.map +1 -0
- package/dist/formatters/spineCheck.js +128 -0
- package/dist/formatters/spineCheck.js.map +1 -0
- package/dist/formatters/spineCheck.test.d.ts +2 -0
- package/dist/formatters/spineCheck.test.d.ts.map +1 -0
- package/dist/formatters/spineCheck.test.js +85 -0
- package/dist/formatters/spineCheck.test.js.map +1 -0
- package/dist/formatters/tensionsList.d.ts +17 -0
- package/dist/formatters/tensionsList.d.ts.map +1 -0
- package/dist/formatters/tensionsList.js +33 -0
- package/dist/formatters/tensionsList.js.map +1 -0
- package/dist/formatters/update.d.ts +26 -0
- package/dist/formatters/update.d.ts.map +1 -1
- package/dist/formatters/update.js +39 -7
- package/dist/formatters/update.js.map +1 -1
- package/dist/formatters/update.test.d.ts +2 -0
- package/dist/formatters/update.test.d.ts.map +1 -0
- package/dist/formatters/update.test.js +71 -0
- package/dist/formatters/update.test.js.map +1 -0
- package/dist/formatters/verify.d.ts +12 -4
- package/dist/formatters/verify.d.ts.map +1 -1
- package/dist/formatters/verify.js +20 -2
- package/dist/formatters/verify.js.map +1 -1
- package/dist/generated/healthGapKinds.generated.d.ts +12 -0
- package/dist/generated/healthGapKinds.generated.d.ts.map +1 -0
- package/dist/generated/healthGapKinds.generated.js +16 -0
- package/dist/generated/healthGapKinds.generated.js.map +1 -0
- package/dist/generated/organisationalAuthorityRefusalCodes.generated.d.ts +12 -0
- package/dist/generated/organisationalAuthorityRefusalCodes.generated.d.ts.map +1 -0
- package/dist/generated/organisationalAuthorityRefusalCodes.generated.js +11 -0
- package/dist/generated/organisationalAuthorityRefusalCodes.generated.js.map +1 -0
- package/dist/generated/routeLatencyBudget.generated.d.ts +54 -0
- package/dist/generated/routeLatencyBudget.generated.d.ts.map +1 -0
- package/dist/generated/routeLatencyBudget.generated.js +255 -0
- package/dist/generated/routeLatencyBudget.generated.js.map +1 -0
- package/dist/handleCliError.d.ts +38 -0
- package/dist/handleCliError.d.ts.map +1 -0
- package/dist/handleCliError.js +131 -0
- package/dist/handleCliError.js.map +1 -0
- package/dist/index.d.ts +0 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +209 -685
- package/dist/index.js.map +1 -1
- package/dist/lib/__tests__/parseFields.test.d.ts +2 -0
- package/dist/lib/__tests__/parseFields.test.d.ts.map +1 -0
- package/dist/lib/__tests__/parseFields.test.js +40 -0
- package/dist/lib/__tests__/parseFields.test.js.map +1 -0
- package/dist/lib/adminConfig.d.ts +48 -0
- package/dist/lib/adminConfig.d.ts.map +1 -0
- package/dist/lib/adminConfig.js +126 -0
- package/dist/lib/adminConfig.js.map +1 -0
- package/dist/lib/boundScope.d.ts +94 -0
- package/dist/lib/boundScope.d.ts.map +1 -0
- package/dist/lib/boundScope.js +205 -0
- package/dist/lib/boundScope.js.map +1 -0
- package/dist/lib/canonicalRefs.d.ts +28 -14
- package/dist/lib/canonicalRefs.d.ts.map +1 -1
- package/dist/lib/canonicalRefs.js +9 -28
- package/dist/lib/canonicalRefs.js.map +1 -1
- package/dist/lib/captureLink.d.ts +7 -0
- package/dist/lib/captureLink.d.ts.map +1 -0
- package/dist/lib/captureLink.js +29 -0
- package/dist/lib/captureLink.js.map +1 -0
- package/dist/lib/checklist.d.ts +151 -0
- package/dist/lib/checklist.d.ts.map +1 -0
- package/dist/lib/checklist.js +235 -0
- package/dist/lib/checklist.js.map +1 -0
- package/dist/lib/cliFirstRun.d.ts +36 -0
- package/dist/lib/cliFirstRun.d.ts.map +1 -0
- package/dist/lib/cliFirstRun.js +36 -0
- package/dist/lib/cliFirstRun.js.map +1 -0
- package/dist/lib/client.d.ts +30 -27
- package/dist/lib/client.d.ts.map +1 -1
- package/dist/lib/client.js +254 -110
- package/dist/lib/client.js.map +1 -1
- package/dist/lib/compose-wrapup-view.d.ts +23 -5
- package/dist/lib/compose-wrapup-view.d.ts.map +1 -1
- package/dist/lib/compose-wrapup-view.js +6 -4
- package/dist/lib/compose-wrapup-view.js.map +1 -1
- package/dist/lib/config.d.ts +58 -117
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +154 -402
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/configResult.d.ts +110 -0
- package/dist/lib/configResult.d.ts.map +1 -0
- package/dist/lib/configResult.js +189 -0
- package/dist/lib/configResult.js.map +1 -0
- package/dist/lib/conflictResolution.d.ts +98 -0
- package/dist/lib/conflictResolution.d.ts.map +1 -0
- package/dist/lib/conflictResolution.js +77 -0
- package/dist/lib/conflictResolution.js.map +1 -0
- package/dist/lib/connectKeyLabel.d.ts +2 -2
- package/dist/lib/connectKeyLabel.js +2 -2
- package/dist/lib/connectProfileName.d.ts +36 -0
- package/dist/lib/connectProfileName.d.ts.map +1 -0
- package/dist/lib/connectProfileName.js +72 -0
- package/dist/lib/connectProfileName.js.map +1 -0
- package/dist/lib/connectProfileName.test.d.ts +2 -0
- package/dist/lib/connectProfileName.test.d.ts.map +1 -0
- package/dist/lib/connectProfileName.test.js +100 -0
- package/dist/lib/connectProfileName.test.js.map +1 -0
- package/dist/lib/constants.d.ts +7 -2
- package/dist/lib/constants.d.ts.map +1 -1
- package/dist/lib/constants.js +9 -2
- package/dist/lib/constants.js.map +1 -1
- package/dist/lib/conversation.d.ts +48 -0
- package/dist/lib/conversation.d.ts.map +1 -0
- package/dist/lib/conversation.js +136 -0
- package/dist/lib/conversation.js.map +1 -0
- package/dist/lib/createEntryResult.d.ts +34 -0
- package/dist/lib/createEntryResult.d.ts.map +1 -0
- package/dist/lib/createEntryResult.js +12 -0
- package/dist/lib/createEntryResult.js.map +1 -0
- package/dist/lib/deployment.js +2 -2
- package/dist/lib/deployment.js.map +1 -1
- package/dist/lib/deployment.test.js +20 -1
- package/dist/lib/deployment.test.js.map +1 -1
- package/dist/lib/envKeySnapshot.d.ts +10 -0
- package/dist/lib/envKeySnapshot.d.ts.map +1 -0
- package/dist/lib/envKeySnapshot.js +30 -0
- package/dist/lib/envKeySnapshot.js.map +1 -0
- package/dist/lib/errors.d.ts +91 -1
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +87 -1
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/gatewayTimeout.d.ts +88 -0
- package/dist/lib/gatewayTimeout.d.ts.map +1 -0
- package/dist/lib/gatewayTimeout.js +124 -0
- package/dist/lib/gatewayTimeout.js.map +1 -0
- package/dist/lib/gitEnvLeakKeysParity.test.d.ts +2 -0
- package/dist/lib/gitEnvLeakKeysParity.test.d.ts.map +1 -0
- package/dist/lib/gitEnvLeakKeysParity.test.js +73 -0
- package/dist/lib/gitEnvLeakKeysParity.test.js.map +1 -0
- package/dist/lib/glossary.d.ts +3 -15
- package/dist/lib/glossary.d.ts.map +1 -1
- package/dist/lib/glossary.js +6 -47
- package/dist/lib/glossary.js.map +1 -1
- package/dist/lib/historyLine.d.ts +24 -0
- package/dist/lib/historyLine.d.ts.map +1 -0
- package/dist/lib/historyLine.js +12 -0
- package/dist/lib/historyLine.js.map +1 -0
- package/dist/lib/judgeWait.d.ts +50 -0
- package/dist/lib/judgeWait.d.ts.map +1 -0
- package/dist/lib/judgeWait.js +64 -0
- package/dist/lib/judgeWait.js.map +1 -0
- package/dist/lib/kernelEnvelope.d.ts +61 -0
- package/dist/lib/kernelEnvelope.d.ts.map +1 -0
- package/dist/lib/kernelEnvelope.js +98 -0
- package/dist/lib/kernelEnvelope.js.map +1 -0
- package/dist/lib/keyResultLines.d.ts +27 -0
- package/dist/lib/keyResultLines.d.ts.map +1 -0
- package/dist/lib/keyResultLines.js +32 -0
- package/dist/lib/keyResultLines.js.map +1 -0
- package/dist/lib/limits.d.ts +115 -0
- package/dist/lib/limits.d.ts.map +1 -0
- package/dist/lib/limits.js +175 -0
- package/dist/lib/limits.js.map +1 -0
- package/dist/lib/localBinding.d.ts +86 -0
- package/dist/lib/localBinding.d.ts.map +1 -0
- package/dist/lib/localBinding.js +173 -0
- package/dist/lib/localBinding.js.map +1 -0
- package/dist/lib/nameFromText.d.ts +15 -0
- package/dist/lib/nameFromText.d.ts.map +1 -0
- package/dist/lib/nameFromText.js +36 -0
- package/dist/lib/nameFromText.js.map +1 -0
- package/dist/lib/notice-marker.d.ts.map +1 -1
- package/dist/lib/notice-marker.js +186 -16
- package/dist/lib/notice-marker.js.map +1 -1
- package/dist/lib/outcomeObjectiveLines.d.ts +34 -0
- package/dist/lib/outcomeObjectiveLines.d.ts.map +1 -0
- package/dist/lib/outcomeObjectiveLines.js +30 -0
- package/dist/lib/outcomeObjectiveLines.js.map +1 -0
- package/dist/lib/ownerLine.d.ts +90 -0
- package/dist/lib/ownerLine.d.ts.map +1 -0
- package/dist/lib/ownerLine.js +77 -0
- package/dist/lib/ownerLine.js.map +1 -0
- package/dist/lib/parseFields.d.ts +19 -0
- package/dist/lib/parseFields.d.ts.map +1 -0
- package/dist/lib/parseFields.js +49 -0
- package/dist/lib/parseFields.js.map +1 -0
- package/dist/lib/pinnedRole.d.ts +29 -0
- package/dist/lib/pinnedRole.d.ts.map +1 -0
- package/dist/lib/pinnedRole.js +115 -0
- package/dist/lib/pinnedRole.js.map +1 -0
- package/dist/lib/platformGlossary.d.ts +22 -0
- package/dist/lib/platformGlossary.d.ts.map +1 -0
- package/dist/lib/platformGlossary.js +26 -0
- package/dist/lib/platformGlossary.js.map +1 -0
- package/dist/lib/previewBanner.d.ts +9 -0
- package/dist/lib/previewBanner.d.ts.map +1 -0
- package/dist/lib/previewBanner.js +36 -0
- package/dist/lib/previewBanner.js.map +1 -0
- package/dist/lib/priority.d.ts +64 -0
- package/dist/lib/priority.d.ts.map +1 -0
- package/dist/lib/priority.js +31 -0
- package/dist/lib/priority.js.map +1 -0
- package/dist/lib/privateFile.d.ts +13 -0
- package/dist/lib/privateFile.d.ts.map +1 -0
- package/dist/lib/privateFile.js +65 -0
- package/dist/lib/privateFile.js.map +1 -0
- package/dist/lib/privateFile.test.d.ts +2 -0
- package/dist/lib/privateFile.test.d.ts.map +1 -0
- package/dist/lib/privateFile.test.js +76 -0
- package/dist/lib/privateFile.test.js.map +1 -0
- package/dist/lib/productbrain-files.d.ts +108 -0
- package/dist/lib/productbrain-files.d.ts.map +1 -0
- package/dist/lib/productbrain-files.js +240 -0
- package/dist/lib/productbrain-files.js.map +1 -0
- package/dist/lib/productbrain-files.test.d.ts +2 -0
- package/dist/lib/productbrain-files.test.d.ts.map +1 -0
- package/dist/lib/productbrain-files.test.js +518 -0
- package/dist/lib/productbrain-files.test.js.map +1 -0
- package/dist/lib/profiles.d.ts +52 -4
- package/dist/lib/profiles.d.ts.map +1 -1
- package/dist/lib/profiles.js +75 -23
- package/dist/lib/profiles.js.map +1 -1
- package/dist/lib/projectConfig.d.ts +130 -0
- package/dist/lib/projectConfig.d.ts.map +1 -0
- package/dist/lib/projectConfig.js +252 -0
- package/dist/lib/projectConfig.js.map +1 -0
- package/dist/lib/prompts.d.ts +2 -0
- package/dist/lib/prompts.d.ts.map +1 -1
- package/dist/lib/prompts.js +2 -0
- package/dist/lib/prompts.js.map +1 -1
- package/dist/lib/proseBody.d.ts +14 -0
- package/dist/lib/proseBody.d.ts.map +1 -0
- package/dist/lib/proseBody.js +25 -0
- package/dist/lib/proseBody.js.map +1 -0
- package/dist/lib/rate-limit.d.ts +40 -0
- package/dist/lib/rate-limit.d.ts.map +1 -0
- package/dist/lib/rate-limit.js +89 -0
- package/dist/lib/rate-limit.js.map +1 -0
- package/dist/lib/readinessNotices.d.ts +2 -0
- package/dist/lib/readinessNotices.d.ts.map +1 -0
- package/dist/lib/readinessNotices.js +12 -0
- package/dist/lib/readinessNotices.js.map +1 -0
- package/dist/lib/reportedProfile.d.ts +18 -0
- package/dist/lib/reportedProfile.d.ts.map +1 -0
- package/dist/lib/reportedProfile.js +148 -0
- package/dist/lib/reportedProfile.js.map +1 -0
- package/dist/lib/restsOn.d.ts +33 -0
- package/dist/lib/restsOn.d.ts.map +1 -0
- package/dist/lib/restsOn.js +34 -0
- package/dist/lib/restsOn.js.map +1 -0
- package/dist/lib/routeCommandWords.d.ts +13 -0
- package/dist/lib/routeCommandWords.d.ts.map +1 -0
- package/dist/lib/routeCommandWords.js +27 -0
- package/dist/lib/routeCommandWords.js.map +1 -0
- package/dist/lib/ruleListRender.d.ts +325 -0
- package/dist/lib/ruleListRender.d.ts.map +1 -0
- package/dist/lib/ruleListRender.js +387 -0
- package/dist/lib/ruleListRender.js.map +1 -0
- package/dist/lib/runner.d.ts +9 -1
- package/dist/lib/runner.d.ts.map +1 -1
- package/dist/lib/runner.js +30 -4
- package/dist/lib/runner.js.map +1 -1
- package/dist/lib/seatRoster.d.ts +65 -0
- package/dist/lib/seatRoster.d.ts.map +1 -0
- package/dist/lib/seatRoster.js +41 -0
- package/dist/lib/seatRoster.js.map +1 -0
- package/dist/lib/seatSentence.d.ts +196 -0
- package/dist/lib/seatSentence.d.ts.map +1 -0
- package/dist/lib/seatSentence.js +214 -0
- package/dist/lib/seatSentence.js.map +1 -0
- package/dist/lib/session.d.ts +84 -12
- package/dist/lib/session.d.ts.map +1 -1
- package/dist/lib/session.js +238 -24
- package/dist/lib/session.js.map +1 -1
- package/dist/lib/sessionBinding.d.ts +62 -0
- package/dist/lib/sessionBinding.d.ts.map +1 -0
- package/dist/lib/sessionBinding.js +126 -0
- package/dist/lib/sessionBinding.js.map +1 -0
- package/dist/lib/sessionNotices.d.ts +52 -0
- package/dist/lib/sessionNotices.d.ts.map +1 -0
- package/dist/lib/sessionNotices.js +124 -0
- package/dist/lib/sessionNotices.js.map +1 -0
- package/dist/lib/sessionNotices.test.d.ts +2 -0
- package/dist/lib/sessionNotices.test.d.ts.map +1 -0
- package/dist/lib/sessionNotices.test.js +53 -0
- package/dist/lib/sessionNotices.test.js.map +1 -0
- package/dist/lib/sessionOpen.d.ts +26 -0
- package/dist/lib/sessionOpen.d.ts.map +1 -0
- package/dist/lib/sessionOpen.js +56 -0
- package/dist/lib/sessionOpen.js.map +1 -0
- package/dist/lib/sessionStartCommands.d.ts +5 -0
- package/dist/lib/sessionStartCommands.d.ts.map +1 -0
- package/dist/lib/sessionStartCommands.js +12 -0
- package/dist/lib/sessionStartCommands.js.map +1 -0
- package/dist/lib/sessionStartWords.d.ts +18 -0
- package/dist/lib/sessionStartWords.d.ts.map +1 -0
- package/dist/lib/sessionStartWords.js +34 -0
- package/dist/lib/sessionStartWords.js.map +1 -0
- package/dist/lib/spineRungs.d.ts +44 -0
- package/dist/lib/spineRungs.d.ts.map +1 -0
- package/dist/lib/spineRungs.js +19 -0
- package/dist/lib/spineRungs.js.map +1 -0
- package/dist/lib/spineVerdictRead.d.ts +76 -0
- package/dist/lib/spineVerdictRead.d.ts.map +1 -0
- package/dist/lib/spineVerdictRead.js +76 -0
- package/dist/lib/spineVerdictRead.js.map +1 -0
- package/dist/lib/spinner.d.ts +3 -0
- package/dist/lib/spinner.d.ts.map +1 -1
- package/dist/lib/spinner.js +46 -32
- package/dist/lib/spinner.js.map +1 -1
- package/dist/lib/spinner.test.js +44 -1
- package/dist/lib/spinner.test.js.map +1 -1
- 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 +173 -0
- package/dist/lib/startup-signals.js.map +1 -0
- package/dist/lib/startup-signals.test.d.ts +2 -0
- package/dist/lib/startup-signals.test.d.ts.map +1 -0
- package/dist/lib/startup-signals.test.js +165 -0
- package/dist/lib/startup-signals.test.js.map +1 -0
- package/dist/lib/state.d.ts +11 -2
- package/dist/lib/state.d.ts.map +1 -1
- package/dist/lib/state.js +11 -4
- package/dist/lib/state.js.map +1 -1
- package/dist/lib/statusCategories.d.ts +168 -0
- package/dist/lib/statusCategories.d.ts.map +1 -0
- package/dist/lib/statusCategories.js +299 -0
- package/dist/lib/statusCategories.js.map +1 -0
- package/dist/lib/strip.d.ts +17 -0
- package/dist/lib/strip.d.ts.map +1 -1
- package/dist/lib/strip.js +48 -1
- package/dist/lib/strip.js.map +1 -1
- package/dist/lib/style.d.ts +18 -5
- package/dist/lib/style.d.ts.map +1 -1
- package/dist/lib/style.js +34 -20
- package/dist/lib/style.js.map +1 -1
- package/dist/lib/style.test.js +1 -2
- package/dist/lib/style.test.js.map +1 -1
- package/dist/lib/tokenConstants.d.ts +14 -2
- package/dist/lib/tokenConstants.d.ts.map +1 -1
- package/dist/lib/tokenConstants.js +17 -2
- package/dist/lib/tokenConstants.js.map +1 -1
- package/dist/lib/update-check.d.ts +3 -8
- package/dist/lib/update-check.d.ts.map +1 -1
- package/dist/lib/update-check.js +11 -46
- package/dist/lib/update-check.js.map +1 -1
- package/dist/lib/upgrade-runner.d.ts +20 -4
- package/dist/lib/upgrade-runner.d.ts.map +1 -1
- package/dist/lib/upgrade-runner.js +67 -37
- package/dist/lib/upgrade-runner.js.map +1 -1
- package/dist/lib/workPackageList.d.ts +138 -0
- package/dist/lib/workPackageList.d.ts.map +1 -0
- package/dist/lib/workPackageList.js +139 -0
- package/dist/lib/workPackageList.js.map +1 -0
- package/dist/lib/workspace-probe.d.ts +9 -0
- package/dist/lib/workspace-probe.d.ts.map +1 -1
- package/dist/lib/workspace-probe.js +1 -8
- package/dist/lib/workspace-probe.js.map +1 -1
- package/dist/lib/workspaceNotice.d.ts +201 -0
- package/dist/lib/workspaceNotice.d.ts.map +1 -0
- package/dist/lib/workspaceNotice.js +346 -0
- package/dist/lib/workspaceNotice.js.map +1 -0
- package/dist/lib/workspaceVocabCache.d.ts +3 -9
- package/dist/lib/workspaceVocabCache.d.ts.map +1 -1
- package/dist/lib/workspaceVocabCache.js +3 -9
- package/dist/lib/workspaceVocabCache.js.map +1 -1
- package/dist/registerEntryCommands.d.ts +18 -0
- package/dist/registerEntryCommands.d.ts.map +1 -0
- package/dist/registerEntryCommands.js +146 -0
- package/dist/registerEntryCommands.js.map +1 -0
- package/dist/registerHistoryCommand.d.ts +8 -0
- package/dist/registerHistoryCommand.d.ts.map +1 -0
- package/dist/registerHistoryCommand.js +14 -0
- package/dist/registerHistoryCommand.js.map +1 -0
- package/dist/registerOutcomeCommands.d.ts +27 -0
- package/dist/registerOutcomeCommands.d.ts.map +1 -0
- package/dist/registerOutcomeCommands.js +27 -0
- package/dist/registerOutcomeCommands.js.map +1 -0
- package/dist/registerRoleCommands.d.ts +11 -0
- package/dist/registerRoleCommands.d.ts.map +1 -0
- package/dist/registerRoleCommands.js +43 -0
- package/dist/registerRoleCommands.js.map +1 -0
- package/dist/registerTensionsCommands.d.ts +11 -0
- package/dist/registerTensionsCommands.d.ts.map +1 -0
- package/dist/registerTensionsCommands.js +28 -0
- package/dist/registerTensionsCommands.js.map +1 -0
- package/dist/scoreboard/diagnose.d.ts +133 -0
- package/dist/scoreboard/diagnose.d.ts.map +1 -0
- package/dist/scoreboard/diagnose.js +150 -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 +189 -0
- package/dist/scoreboard/diagnose.test.js.map +1 -0
- package/dist/scoreboard/floors.d.ts +34 -0
- package/dist/scoreboard/floors.d.ts.map +1 -0
- package/dist/scoreboard/floors.js +11 -0
- package/dist/scoreboard/floors.js.map +1 -0
- package/dist/served-doors.test.d.ts +2 -0
- package/dist/served-doors.test.d.ts.map +1 -0
- package/dist/served-doors.test.js +169 -0
- package/dist/served-doors.test.js.map +1 -0
- package/package.json +8 -8
- package/dist/__tests__/adapters.test.d.ts +0 -2
- package/dist/__tests__/adapters.test.d.ts.map +0 -1
- package/dist/__tests__/adapters.test.js +0 -417
- package/dist/__tests__/adapters.test.js.map +0 -1
- package/dist/__tests__/audit.test.d.ts +0 -2
- package/dist/__tests__/audit.test.d.ts.map +0 -1
- package/dist/__tests__/audit.test.js +0 -399
- package/dist/__tests__/audit.test.js.map +0 -1
- package/dist/__tests__/authority-domains-queue.test.d.ts +0 -2
- package/dist/__tests__/authority-domains-queue.test.d.ts.map +0 -1
- package/dist/__tests__/authority-domains-queue.test.js +0 -169
- package/dist/__tests__/authority-domains-queue.test.js.map +0 -1
- package/dist/__tests__/authority-domains.test.d.ts +0 -2
- package/dist/__tests__/authority-domains.test.d.ts.map +0 -1
- package/dist/__tests__/authority-domains.test.js +0 -48
- package/dist/__tests__/authority-domains.test.js.map +0 -1
- package/dist/__tests__/batch-transformations.test.d.ts +0 -2
- package/dist/__tests__/batch-transformations.test.d.ts.map +0 -1
- package/dist/__tests__/batch-transformations.test.js +0 -263
- package/dist/__tests__/batch-transformations.test.js.map +0 -1
- package/dist/__tests__/capture-receipt-domain.test.d.ts +0 -2
- package/dist/__tests__/capture-receipt-domain.test.d.ts.map +0 -1
- package/dist/__tests__/capture-receipt-domain.test.js +0 -29
- package/dist/__tests__/capture-receipt-domain.test.js.map +0 -1
- package/dist/__tests__/experiment.test.d.ts +0 -6
- package/dist/__tests__/experiment.test.d.ts.map +0 -1
- package/dist/__tests__/experiment.test.js +0 -69
- package/dist/__tests__/experiment.test.js.map +0 -1
- package/dist/__tests__/handshake-augment.test.d.ts +0 -2
- package/dist/__tests__/handshake-augment.test.d.ts.map +0 -1
- package/dist/__tests__/handshake-augment.test.js +0 -423
- package/dist/__tests__/handshake-augment.test.js.map +0 -1
- package/dist/__tests__/handshake-dormancy.test.d.ts +0 -2
- package/dist/__tests__/handshake-dormancy.test.d.ts.map +0 -1
- package/dist/__tests__/handshake-dormancy.test.js +0 -207
- package/dist/__tests__/handshake-dormancy.test.js.map +0 -1
- package/dist/__tests__/handshake-formatter.test.d.ts +0 -2
- package/dist/__tests__/handshake-formatter.test.d.ts.map +0 -1
- package/dist/__tests__/handshake-formatter.test.js +0 -67
- package/dist/__tests__/handshake-formatter.test.js.map +0 -1
- package/dist/__tests__/handshake-preview.test.d.ts +0 -2
- package/dist/__tests__/handshake-preview.test.d.ts.map +0 -1
- package/dist/__tests__/handshake-preview.test.js +0 -949
- package/dist/__tests__/handshake-preview.test.js.map +0 -1
- package/dist/__tests__/handshake.e2e.test.d.ts +0 -2
- package/dist/__tests__/handshake.e2e.test.d.ts.map +0 -1
- package/dist/__tests__/handshake.e2e.test.js +0 -1252
- package/dist/__tests__/handshake.e2e.test.js.map +0 -1
- package/dist/__tests__/handshake.test.d.ts +0 -2
- package/dist/__tests__/handshake.test.d.ts.map +0 -1
- package/dist/__tests__/handshake.test.js +0 -981
- package/dist/__tests__/handshake.test.js.map +0 -1
- package/dist/__tests__/hook-intents.test.d.ts +0 -2
- package/dist/__tests__/hook-intents.test.d.ts.map +0 -1
- package/dist/__tests__/hook-intents.test.js +0 -184
- package/dist/__tests__/hook-intents.test.js.map +0 -1
- package/dist/__tests__/ingest.test.d.ts +0 -2
- package/dist/__tests__/ingest.test.d.ts.map +0 -1
- package/dist/__tests__/ingest.test.js +0 -185
- package/dist/__tests__/ingest.test.js.map +0 -1
- package/dist/__tests__/manifest.test.d.ts +0 -6
- package/dist/__tests__/manifest.test.d.ts.map +0 -1
- package/dist/__tests__/manifest.test.js +0 -255
- package/dist/__tests__/manifest.test.js.map +0 -1
- package/dist/__tests__/method-registry.integration.test.d.ts +0 -6
- package/dist/__tests__/method-registry.integration.test.d.ts.map +0 -1
- package/dist/__tests__/method-registry.integration.test.js +0 -18
- package/dist/__tests__/method-registry.integration.test.js.map +0 -1
- package/dist/__tests__/method-registry.test.d.ts +0 -14
- package/dist/__tests__/method-registry.test.d.ts.map +0 -1
- package/dist/__tests__/method-registry.test.js +0 -134
- package/dist/__tests__/method-registry.test.js.map +0 -1
- package/dist/__tests__/onboarding-path-b.test.d.ts +0 -2
- package/dist/__tests__/onboarding-path-b.test.d.ts.map +0 -1
- package/dist/__tests__/onboarding-path-b.test.js +0 -46
- package/dist/__tests__/onboarding-path-b.test.js.map +0 -1
- package/dist/__tests__/onboarding.test.d.ts +0 -6
- package/dist/__tests__/onboarding.test.d.ts.map +0 -1
- package/dist/__tests__/onboarding.test.js +0 -347
- package/dist/__tests__/onboarding.test.js.map +0 -1
- package/dist/__tests__/perimeter.test.d.ts +0 -2
- package/dist/__tests__/perimeter.test.d.ts.map +0 -1
- package/dist/__tests__/perimeter.test.js +0 -165
- package/dist/__tests__/perimeter.test.js.map +0 -1
- package/dist/__tests__/personal-layer.test.d.ts +0 -11
- package/dist/__tests__/personal-layer.test.d.ts.map +0 -1
- package/dist/__tests__/personal-layer.test.js +0 -268
- package/dist/__tests__/personal-layer.test.js.map +0 -1
- package/dist/__tests__/promote-batch.test.d.ts +0 -2
- package/dist/__tests__/promote-batch.test.d.ts.map +0 -1
- package/dist/__tests__/promote-batch.test.js +0 -185
- package/dist/__tests__/promote-batch.test.js.map +0 -1
- package/dist/__tests__/promote.test.d.ts +0 -2
- package/dist/__tests__/promote.test.d.ts.map +0 -1
- package/dist/__tests__/promote.test.js +0 -230
- package/dist/__tests__/promote.test.js.map +0 -1
- package/dist/__tests__/proposals.test.d.ts +0 -2
- package/dist/__tests__/proposals.test.d.ts.map +0 -1
- package/dist/__tests__/proposals.test.js +0 -167
- package/dist/__tests__/proposals.test.js.map +0 -1
- package/dist/__tests__/repo-detect.test.d.ts +0 -2
- package/dist/__tests__/repo-detect.test.d.ts.map +0 -1
- package/dist/__tests__/repo-detect.test.js +0 -215
- package/dist/__tests__/repo-detect.test.js.map +0 -1
- package/dist/__tests__/setup-ingest.test.d.ts +0 -2
- package/dist/__tests__/setup-ingest.test.d.ts.map +0 -1
- package/dist/__tests__/setup-ingest.test.js +0 -71
- package/dist/__tests__/setup-ingest.test.js.map +0 -1
- package/dist/__tests__/setup-resolver.test.d.ts +0 -14
- package/dist/__tests__/setup-resolver.test.d.ts.map +0 -1
- package/dist/__tests__/setup-resolver.test.js +0 -228
- package/dist/__tests__/setup-resolver.test.js.map +0 -1
- package/dist/__tests__/surface-profiles.test.d.ts +0 -2
- package/dist/__tests__/surface-profiles.test.d.ts.map +0 -1
- package/dist/__tests__/surface-profiles.test.js +0 -233
- package/dist/__tests__/surface-profiles.test.js.map +0 -1
- package/dist/__tests__/surfaces.test.d.ts +0 -2
- package/dist/__tests__/surfaces.test.d.ts.map +0 -1
- package/dist/__tests__/surfaces.test.js +0 -46
- package/dist/__tests__/surfaces.test.js.map +0 -1
- package/dist/commands/__tests__/connect-handoff.test.d.ts +0 -11
- package/dist/commands/__tests__/connect-handoff.test.d.ts.map +0 -1
- package/dist/commands/__tests__/connect-handoff.test.js +0 -111
- package/dist/commands/__tests__/connect-handoff.test.js.map +0 -1
- package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts +0 -15
- package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts.map +0 -1
- package/dist/commands/__tests__/setup-detect-surfaces.test.js +0 -149
- package/dist/commands/__tests__/setup-detect-surfaces.test.js.map +0 -1
- package/dist/commands/__tests__/setup-state.test.d.ts +0 -2
- package/dist/commands/__tests__/setup-state.test.d.ts.map +0 -1
- package/dist/commands/__tests__/setup-state.test.js +0 -194
- package/dist/commands/__tests__/setup-state.test.js.map +0 -1
- package/dist/commands/accept.d.ts +0 -18
- package/dist/commands/accept.d.ts.map +0 -1
- package/dist/commands/accept.js +0 -76
- package/dist/commands/accept.js.map +0 -1
- package/dist/commands/audit.d.ts +0 -25
- package/dist/commands/audit.d.ts.map +0 -1
- package/dist/commands/audit.js +0 -215
- package/dist/commands/audit.js.map +0 -1
- package/dist/commands/authority-domains.d.ts +0 -157
- package/dist/commands/authority-domains.d.ts.map +0 -1
- package/dist/commands/authority-domains.js +0 -356
- package/dist/commands/authority-domains.js.map +0 -1
- package/dist/commands/brand-pack.d.ts +0 -2
- package/dist/commands/brand-pack.d.ts.map +0 -1
- package/dist/commands/brand-pack.js +0 -25
- package/dist/commands/brand-pack.js.map +0 -1
- package/dist/commands/connect-context.d.ts +0 -45
- package/dist/commands/connect-context.d.ts.map +0 -1
- package/dist/commands/connect-context.js +0 -64
- package/dist/commands/connect-context.js.map +0 -1
- package/dist/commands/connect-context.test.d.ts +0 -2
- package/dist/commands/connect-context.test.d.ts.map +0 -1
- package/dist/commands/connect-context.test.js +0 -110
- package/dist/commands/connect-context.test.js.map +0 -1
- package/dist/commands/connect-handoff.d.ts +0 -51
- package/dist/commands/connect-handoff.d.ts.map +0 -1
- package/dist/commands/connect-handoff.js +0 -70
- package/dist/commands/connect-handoff.js.map +0 -1
- package/dist/commands/handshake.d.ts +0 -249
- package/dist/commands/handshake.d.ts.map +0 -1
- package/dist/commands/handshake.js +0 -2635
- package/dist/commands/handshake.js.map +0 -1
- package/dist/commands/ingest.d.ts +0 -14
- package/dist/commands/ingest.d.ts.map +0 -1
- package/dist/commands/ingest.js +0 -189
- package/dist/commands/ingest.js.map +0 -1
- package/dist/commands/migrate-setup.d.ts +0 -18
- package/dist/commands/migrate-setup.d.ts.map +0 -1
- package/dist/commands/migrate-setup.js +0 -148
- package/dist/commands/migrate-setup.js.map +0 -1
- package/dist/commands/promote.d.ts +0 -15
- package/dist/commands/promote.d.ts.map +0 -1
- package/dist/commands/promote.js +0 -182
- package/dist/commands/promote.js.map +0 -1
- package/dist/commands/proposals.d.ts +0 -9
- package/dist/commands/proposals.d.ts.map +0 -1
- package/dist/commands/proposals.js +0 -24
- package/dist/commands/proposals.js.map +0 -1
- package/dist/commands/reject.d.ts +0 -14
- package/dist/commands/reject.d.ts.map +0 -1
- package/dist/commands/reject.js +0 -44
- package/dist/commands/reject.js.map +0 -1
- package/dist/commands/setup-audit.d.ts +0 -59
- package/dist/commands/setup-audit.d.ts.map +0 -1
- package/dist/commands/setup-audit.js +0 -250
- package/dist/commands/setup-audit.js.map +0 -1
- package/dist/commands/setup-detect-surfaces.d.ts +0 -38
- package/dist/commands/setup-detect-surfaces.d.ts.map +0 -1
- package/dist/commands/setup-detect-surfaces.js +0 -76
- package/dist/commands/setup-detect-surfaces.js.map +0 -1
- package/dist/commands/setup-ingest.d.ts +0 -17
- package/dist/commands/setup-ingest.d.ts.map +0 -1
- package/dist/commands/setup-ingest.js +0 -174
- package/dist/commands/setup-ingest.js.map +0 -1
- package/dist/commands/setup-resolver.d.ts +0 -58
- package/dist/commands/setup-resolver.d.ts.map +0 -1
- package/dist/commands/setup-resolver.js +0 -150
- package/dist/commands/setup-resolver.js.map +0 -1
- package/dist/commands/setup-state.d.ts +0 -42
- package/dist/commands/setup-state.d.ts.map +0 -1
- package/dist/commands/setup-state.js +0 -93
- package/dist/commands/setup-state.js.map +0 -1
- package/dist/commands/setup.d.ts +0 -23
- package/dist/commands/setup.d.ts.map +0 -1
- package/dist/commands/setup.js +0 -69
- package/dist/commands/setup.js.map +0 -1
- package/dist/formatters/audit.d.ts +0 -52
- package/dist/formatters/audit.d.ts.map +0 -1
- package/dist/formatters/audit.js +0 -81
- package/dist/formatters/audit.js.map +0 -1
- package/dist/formatters/handshake.d.ts +0 -62
- package/dist/formatters/handshake.d.ts.map +0 -1
- package/dist/formatters/handshake.js +0 -198
- package/dist/formatters/handshake.js.map +0 -1
- package/dist/formatters/promote.d.ts +0 -30
- package/dist/formatters/promote.d.ts.map +0 -1
- package/dist/formatters/promote.js +0 -39
- package/dist/formatters/promote.js.map +0 -1
- package/dist/formatters/proposals.d.ts +0 -45
- package/dist/formatters/proposals.d.ts.map +0 -1
- package/dist/formatters/proposals.js +0 -62
- package/dist/formatters/proposals.js.map +0 -1
- package/dist/generators/adapters.d.ts +0 -44
- package/dist/generators/adapters.d.ts.map +0 -1
- package/dist/generators/adapters.js +0 -290
- package/dist/generators/adapters.js.map +0 -1
- package/dist/generators/adapters.test.d.ts +0 -2
- package/dist/generators/adapters.test.d.ts.map +0 -1
- package/dist/generators/adapters.test.js +0 -27
- package/dist/generators/adapters.test.js.map +0 -1
- package/dist/generators/archetypes.d.ts +0 -52
- package/dist/generators/archetypes.d.ts.map +0 -1
- package/dist/generators/archetypes.js +0 -190
- package/dist/generators/archetypes.js.map +0 -1
- package/dist/generators/archetypes.test.d.ts +0 -2
- package/dist/generators/archetypes.test.d.ts.map +0 -1
- package/dist/generators/archetypes.test.js +0 -272
- package/dist/generators/archetypes.test.js.map +0 -1
- package/dist/generators/boundary-manifest.d.ts +0 -29
- package/dist/generators/boundary-manifest.d.ts.map +0 -1
- package/dist/generators/boundary-manifest.js +0 -183
- package/dist/generators/boundary-manifest.js.map +0 -1
- package/dist/generators/boundary-manifest.test.d.ts +0 -2
- package/dist/generators/boundary-manifest.test.d.ts.map +0 -1
- package/dist/generators/boundary-manifest.test.js +0 -91
- package/dist/generators/boundary-manifest.test.js.map +0 -1
- package/dist/generators/briefing-md.d.ts +0 -8
- package/dist/generators/briefing-md.d.ts.map +0 -1
- package/dist/generators/briefing-md.js +0 -51
- package/dist/generators/briefing-md.js.map +0 -1
- package/dist/generators/chain-classifier.d.ts +0 -63
- package/dist/generators/chain-classifier.d.ts.map +0 -1
- package/dist/generators/chain-classifier.js +0 -131
- package/dist/generators/chain-classifier.js.map +0 -1
- package/dist/generators/chain-classifier.test.d.ts +0 -2
- package/dist/generators/chain-classifier.test.d.ts.map +0 -1
- package/dist/generators/chain-classifier.test.js +0 -371
- package/dist/generators/chain-classifier.test.js.map +0 -1
- package/dist/generators/chain-rules.d.ts +0 -42
- package/dist/generators/chain-rules.d.ts.map +0 -1
- package/dist/generators/chain-rules.js +0 -152
- package/dist/generators/chain-rules.js.map +0 -1
- package/dist/generators/chain-rules.test.d.ts +0 -2
- package/dist/generators/chain-rules.test.d.ts.map +0 -1
- package/dist/generators/chain-rules.test.js +0 -211
- package/dist/generators/chain-rules.test.js.map +0 -1
- package/dist/generators/context-md.d.ts +0 -8
- package/dist/generators/context-md.d.ts.map +0 -1
- package/dist/generators/context-md.js +0 -134
- package/dist/generators/context-md.js.map +0 -1
- package/dist/generators/handshake-diff.d.ts +0 -67
- package/dist/generators/handshake-diff.d.ts.map +0 -1
- package/dist/generators/handshake-diff.js +0 -183
- package/dist/generators/handshake-diff.js.map +0 -1
- package/dist/generators/handshake-diff.test.d.ts +0 -2
- package/dist/generators/handshake-diff.test.d.ts.map +0 -1
- package/dist/generators/handshake-diff.test.js +0 -264
- package/dist/generators/handshake-diff.test.js.map +0 -1
- package/dist/generators/manifest.d.ts +0 -115
- package/dist/generators/manifest.d.ts.map +0 -1
- package/dist/generators/manifest.js +0 -277
- package/dist/generators/manifest.js.map +0 -1
- package/dist/generators/portable-knowledge.d.ts +0 -159
- package/dist/generators/portable-knowledge.d.ts.map +0 -1
- package/dist/generators/portable-knowledge.js +0 -596
- package/dist/generators/portable-knowledge.js.map +0 -1
- package/dist/generators/portable-knowledge.test.d.ts +0 -2
- package/dist/generators/portable-knowledge.test.d.ts.map +0 -1
- package/dist/generators/portable-knowledge.test.js +0 -927
- package/dist/generators/portable-knowledge.test.js.map +0 -1
- package/dist/generators/region-projections.d.ts +0 -18
- package/dist/generators/region-projections.d.ts.map +0 -1
- package/dist/generators/region-projections.js +0 -49
- package/dist/generators/region-projections.js.map +0 -1
- package/dist/generators/region-projections.test.d.ts +0 -2
- package/dist/generators/region-projections.test.d.ts.map +0 -1
- package/dist/generators/region-projections.test.js +0 -63
- package/dist/generators/region-projections.test.js.map +0 -1
- package/dist/generators/region.d.ts +0 -24
- package/dist/generators/region.d.ts.map +0 -1
- package/dist/generators/region.js +0 -87
- package/dist/generators/region.js.map +0 -1
- package/dist/generators/region.test.d.ts +0 -2
- package/dist/generators/region.test.d.ts.map +0 -1
- package/dist/generators/region.test.js +0 -126
- package/dist/generators/region.test.js.map +0 -1
- package/dist/generators/surface-profiles.d.ts +0 -48
- package/dist/generators/surface-profiles.d.ts.map +0 -1
- package/dist/generators/surface-profiles.js +0 -98
- package/dist/generators/surface-profiles.js.map +0 -1
- package/dist/lib/activation.d.ts +0 -28
- package/dist/lib/activation.d.ts.map +0 -1
- package/dist/lib/activation.js +0 -57
- package/dist/lib/activation.js.map +0 -1
- package/dist/lib/activation.test.d.ts +0 -6
- package/dist/lib/activation.test.d.ts.map +0 -1
- package/dist/lib/activation.test.js +0 -121
- package/dist/lib/activation.test.js.map +0 -1
- package/dist/lib/collectionRegistry.d.ts +0 -40
- package/dist/lib/collectionRegistry.d.ts.map +0 -1
- package/dist/lib/collectionRegistry.js +0 -112
- package/dist/lib/collectionRegistry.js.map +0 -1
- package/dist/lib/conversation-engine.d.ts +0 -45
- package/dist/lib/conversation-engine.d.ts.map +0 -1
- package/dist/lib/conversation-engine.js +0 -112
- package/dist/lib/conversation-engine.js.map +0 -1
- package/dist/lib/conversation-phases.d.ts +0 -59
- package/dist/lib/conversation-phases.d.ts.map +0 -1
- package/dist/lib/conversation-phases.js +0 -11
- package/dist/lib/conversation-phases.js.map +0 -1
- package/dist/lib/conversation-signals.d.ts +0 -30
- package/dist/lib/conversation-signals.d.ts.map +0 -1
- package/dist/lib/conversation-signals.js +0 -64
- package/dist/lib/conversation-signals.js.map +0 -1
- package/dist/lib/experiment.d.ts +0 -18
- package/dist/lib/experiment.d.ts.map +0 -1
- package/dist/lib/experiment.js +0 -28
- package/dist/lib/experiment.js.map +0 -1
- package/dist/lib/frontmatter.d.ts +0 -55
- package/dist/lib/frontmatter.d.ts.map +0 -1
- package/dist/lib/frontmatter.js +0 -92
- package/dist/lib/frontmatter.js.map +0 -1
- package/dist/lib/frontmatter.test.d.ts +0 -15
- package/dist/lib/frontmatter.test.d.ts.map +0 -1
- package/dist/lib/frontmatter.test.js +0 -98
- package/dist/lib/frontmatter.test.js.map +0 -1
- package/dist/lib/hook-intents.d.ts +0 -51
- package/dist/lib/hook-intents.d.ts.map +0 -1
- package/dist/lib/hook-intents.js +0 -85
- package/dist/lib/hook-intents.js.map +0 -1
- package/dist/lib/inferSourceDate.d.ts +0 -12
- package/dist/lib/inferSourceDate.d.ts.map +0 -1
- package/dist/lib/inferSourceDate.js +0 -44
- package/dist/lib/inferSourceDate.js.map +0 -1
- package/dist/lib/method-registry.d.ts +0 -32
- package/dist/lib/method-registry.d.ts.map +0 -1
- package/dist/lib/method-registry.js +0 -53
- package/dist/lib/method-registry.js.map +0 -1
- package/dist/lib/normalizeMaterializedFilename.d.ts +0 -28
- package/dist/lib/normalizeMaterializedFilename.d.ts.map +0 -1
- package/dist/lib/normalizeMaterializedFilename.js +0 -56
- package/dist/lib/normalizeMaterializedFilename.js.map +0 -1
- package/dist/lib/normalizeMaterializedFilename.test.d.ts +0 -16
- package/dist/lib/normalizeMaterializedFilename.test.d.ts.map +0 -1
- package/dist/lib/normalizeMaterializedFilename.test.js +0 -90
- package/dist/lib/normalizeMaterializedFilename.test.js.map +0 -1
- package/dist/lib/onboarding-path-b.d.ts +0 -10
- package/dist/lib/onboarding-path-b.d.ts.map +0 -1
- package/dist/lib/onboarding-path-b.js +0 -213
- package/dist/lib/onboarding-path-b.js.map +0 -1
- package/dist/lib/onboarding-shared.d.ts +0 -80
- package/dist/lib/onboarding-shared.d.ts.map +0 -1
- package/dist/lib/onboarding-shared.js +0 -174
- package/dist/lib/onboarding-shared.js.map +0 -1
- package/dist/lib/onboarding-topics.d.ts +0 -27
- package/dist/lib/onboarding-topics.d.ts.map +0 -1
- package/dist/lib/onboarding-topics.js +0 -57
- package/dist/lib/onboarding-topics.js.map +0 -1
- package/dist/lib/onboarding.d.ts +0 -17
- package/dist/lib/onboarding.d.ts.map +0 -1
- package/dist/lib/onboarding.js +0 -350
- package/dist/lib/onboarding.js.map +0 -1
- package/dist/lib/repo-detect.d.ts +0 -33
- package/dist/lib/repo-detect.d.ts.map +0 -1
- package/dist/lib/repo-detect.js +0 -83
- package/dist/lib/repo-detect.js.map +0 -1
- package/dist/lib/startup-resolution-signals.d.ts +0 -34
- package/dist/lib/startup-resolution-signals.d.ts.map +0 -1
- package/dist/lib/startup-resolution-signals.js +0 -118
- package/dist/lib/startup-resolution-signals.js.map +0 -1
- package/dist/lib/startup-resolution-signals.test.d.ts +0 -2
- package/dist/lib/startup-resolution-signals.test.d.ts.map +0 -1
- package/dist/lib/startup-resolution-signals.test.js +0 -113
- package/dist/lib/startup-resolution-signals.test.js.map +0 -1
- package/dist/lib/telemetry.d.ts +0 -15
- package/dist/lib/telemetry.d.ts.map +0 -1
- package/dist/lib/telemetry.js +0 -47
- package/dist/lib/telemetry.js.map +0 -1
- package/dist/lib/wizard-surfaces.d.ts +0 -47
- package/dist/lib/wizard-surfaces.d.ts.map +0 -1
- package/dist/lib/wizard-surfaces.js +0 -176
- package/dist/lib/wizard-surfaces.js.map +0 -1
- package/dist/lib/wizard-surfaces.test.d.ts +0 -2
- package/dist/lib/wizard-surfaces.test.d.ts.map +0 -1
- package/dist/lib/wizard-surfaces.test.js +0 -127
- package/dist/lib/wizard-surfaces.test.js.map +0 -1
- package/dist/lib/wizard-trust.d.ts +0 -31
- package/dist/lib/wizard-trust.d.ts.map +0 -1
- package/dist/lib/wizard-trust.js +0 -66
- package/dist/lib/wizard-trust.js.map +0 -1
- package/dist/lib/wizard-trust.test.d.ts +0 -2
- package/dist/lib/wizard-trust.test.d.ts.map +0 -1
- package/dist/lib/wizard-trust.test.js +0 -32
- package/dist/lib/wizard-trust.test.js.map +0 -1
- package/dist/setup/__tests__/coach-traces.test.d.ts +0 -2
- package/dist/setup/__tests__/coach-traces.test.d.ts.map +0 -1
- package/dist/setup/__tests__/coach-traces.test.js +0 -189
- package/dist/setup/__tests__/coach-traces.test.js.map +0 -1
- package/dist/setup/__tests__/setup-commands.test.d.ts +0 -2
- package/dist/setup/__tests__/setup-commands.test.d.ts.map +0 -1
- package/dist/setup/__tests__/setup-commands.test.js +0 -177
- package/dist/setup/__tests__/setup-commands.test.js.map +0 -1
- package/dist/setup/__tests__/state-machine.test.d.ts +0 -2
- package/dist/setup/__tests__/state-machine.test.d.ts.map +0 -1
- package/dist/setup/__tests__/state-machine.test.js +0 -341
- package/dist/setup/__tests__/state-machine.test.js.map +0 -1
- package/dist/setup/detect-surfaces.d.ts +0 -21
- package/dist/setup/detect-surfaces.d.ts.map +0 -1
- package/dist/setup/detect-surfaces.js +0 -39
- package/dist/setup/detect-surfaces.js.map +0 -1
- package/dist/setup/manifest-writer.d.ts +0 -17
- package/dist/setup/manifest-writer.d.ts.map +0 -1
- package/dist/setup/manifest-writer.js +0 -153
- package/dist/setup/manifest-writer.js.map +0 -1
- package/dist/setup/perimeter.d.ts +0 -72
- package/dist/setup/perimeter.d.ts.map +0 -1
- package/dist/setup/perimeter.js +0 -128
- package/dist/setup/perimeter.js.map +0 -1
- package/dist/setup/state-machine.d.ts +0 -67
- package/dist/setup/state-machine.d.ts.map +0 -1
- package/dist/setup/state-machine.js +0 -124
- package/dist/setup/state-machine.js.map +0 -1
- package/dist/surfaces/__tests__/adapter.test.d.ts +0 -2
- package/dist/surfaces/__tests__/adapter.test.d.ts.map +0 -1
- package/dist/surfaces/__tests__/adapter.test.js +0 -90
- package/dist/surfaces/__tests__/adapter.test.js.map +0 -1
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts +0 -2
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts.map +0 -1
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.js +0 -132
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.js.map +0 -1
- package/dist/surfaces/__tests__/telemetry.test.d.ts +0 -2
- package/dist/surfaces/__tests__/telemetry.test.d.ts.map +0 -1
- package/dist/surfaces/__tests__/telemetry.test.js +0 -55
- package/dist/surfaces/__tests__/telemetry.test.js.map +0 -1
- package/dist/surfaces/adapter.d.ts +0 -70
- package/dist/surfaces/adapter.d.ts.map +0 -1
- package/dist/surfaces/adapter.js +0 -2
- package/dist/surfaces/adapter.js.map +0 -1
- package/dist/surfaces/adapters/claude.d.ts +0 -3
- package/dist/surfaces/adapters/claude.d.ts.map +0 -1
- package/dist/surfaces/adapters/claude.js +0 -67
- package/dist/surfaces/adapters/claude.js.map +0 -1
- package/dist/surfaces/adapters/codex.d.ts +0 -3
- package/dist/surfaces/adapters/codex.d.ts.map +0 -1
- package/dist/surfaces/adapters/codex.js +0 -61
- package/dist/surfaces/adapters/codex.js.map +0 -1
- package/dist/surfaces/adapters/copilot.d.ts +0 -3
- package/dist/surfaces/adapters/copilot.d.ts.map +0 -1
- package/dist/surfaces/adapters/copilot.js +0 -59
- package/dist/surfaces/adapters/copilot.js.map +0 -1
- package/dist/surfaces/adapters/cursor.d.ts +0 -3
- package/dist/surfaces/adapters/cursor.d.ts.map +0 -1
- package/dist/surfaces/adapters/cursor.js +0 -78
- package/dist/surfaces/adapters/cursor.js.map +0 -1
- package/dist/surfaces/registry.d.ts +0 -76
- package/dist/surfaces/registry.d.ts.map +0 -1
- package/dist/surfaces/registry.js +0 -117
- package/dist/surfaces/registry.js.map +0 -1
- package/dist/surfaces/telemetry.d.ts +0 -17
- package/dist/surfaces/telemetry.d.ts.map +0 -1
- package/dist/surfaces/telemetry.js +0 -31
- package/dist/surfaces/telemetry.js.map +0 -1
- package/templates/archetypes/boundary.md +0 -23
- package/templates/archetypes/constraint.md +0 -23
- package/templates/archetypes/convention.md +0 -23
- package/templates/archetypes/policy.md +0 -23
- package/templates/archetypes/quality-gate.md +0 -23
- package/templates/archetypes/workflow.md +0 -23
- package/templates/general/code-integrity.md +0 -11
- package/templates/general/getting-started.md +0 -12
- package/templates/method-registry.json +0 -16
- package/templates/node-ts/code-integrity.md +0 -13
- package/templates/node-ts/testing.md +0 -12
- package/templates/python/code-integrity.md +0 -13
- package/templates/python/testing.md +0 -12
package/dist/lib/config.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* CLI config — reads PRODUCTBRAIN_API_KEY + CONVEX_SITE_URL from:
|
|
3
|
-
*
|
|
3
|
+
* 0. The profile a subagent's conversation names (conversationKeyProfile below)
|
|
4
|
+
* 1. Environment variables
|
|
4
5
|
* 2. Project local config: .productbrain/config.local.json (walked up from CWD, machine-local)
|
|
5
|
-
* 3. Project config: .productbrain/config.json (walked up from CWD,
|
|
6
|
+
* 3. Project config: .productbrain/config.json (walked up from CWD, committed) — its presence
|
|
7
|
+
* declares a project; its siteUrl never routes a key (TEN-4500)
|
|
6
8
|
* 4. Profile system (~/.config/productbrain/profiles/{name}.env)
|
|
7
9
|
* 5. Legacy ~/.config/productbrain/.env (auto-migrated to profiles on first use)
|
|
8
10
|
* 6. CWD .env.mcp / packages/mcp-server/.env.mcp / .env
|
|
@@ -12,134 +14,30 @@
|
|
|
12
14
|
*
|
|
13
15
|
* When key is missing and retry is provided (TTY), runs guided flow per docs/cli-unauthenticated-user-journey.md.
|
|
14
16
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* - config.local.json (gitignored): profile pin — machine-local, never committed.
|
|
17
|
+
* The repo's own config files (.productbrain/config.json, config.local.json) are located and
|
|
18
|
+
* read by projectConfig.ts — this module turns what they declare into a credential.
|
|
18
19
|
*/
|
|
19
|
-
import { readFileSync, existsSync, mkdirSync
|
|
20
|
+
import { readFileSync, existsSync, mkdirSync } from 'fs';
|
|
21
|
+
import { writePrivateFile } from './privateFile.js';
|
|
20
22
|
import { resolve } from 'path';
|
|
21
23
|
import { homedir } from 'os';
|
|
22
|
-
import { DEFAULT_SITE_URL
|
|
23
|
-
import {
|
|
24
|
+
import { DEFAULT_SITE_URL } from './constants.js';
|
|
25
|
+
import { API_KEY_FORMAT_LINE, isApiKeyShaped } from './tokenConstants.js';
|
|
26
|
+
import { isEnvKeyBinding } from './envKeySnapshot.js';
|
|
24
27
|
import { resolveProfileConfig, resolveNamedProfileConfig, getGlobalActiveProfile } from './profiles.js';
|
|
28
|
+
import { findProjectRoot, readBoundPreviewKey, readLocalProjectConfig } from './projectConfig.js';
|
|
29
|
+
import { declaresCompletePreviewBinding, refuseWhenProjectHasNoTenant, resolveLocalBinding, resolvePinnedProfile } from './localBinding.js';
|
|
25
30
|
import { CLIError, ErrorCode } from './errors.js';
|
|
26
|
-
import {
|
|
31
|
+
import { normalizeConversationId } from './conversation.js';
|
|
32
|
+
import { ConfigResolutionError, isInsecureSiteUrl, missingKeyError, pickSiteUrl, resolveConfigResult, } from './configResult.js';
|
|
27
33
|
const HOME_CONFIG_DIR = resolve(homedir(), '.config', 'productbrain');
|
|
28
34
|
const HOME_ENV_PATH = resolve(HOME_CONFIG_DIR, '.env');
|
|
29
35
|
const CWD_ENV_PATHS = ['.env.mcp', 'packages/mcp-server/.env.mcp', '.env'];
|
|
30
|
-
// Short error when not TTY (scripts/pipes must not hang)
|
|
31
|
-
const NON_TTY_MESSAGE = 'No API key. Set PRODUCTBRAIN_API_KEY or run pb login.';
|
|
32
36
|
/** Track whether env has been loaded to avoid redundant file reads. */
|
|
33
37
|
let envLoaded = false;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
* A `.productbrain/` directory only counts as a CLI project root when it carries
|
|
38
|
-
* CLI configuration — `config.json` (committed siteUrl gateway) or
|
|
39
|
-
* `config.local.json` (machine-local profile pin or preview binding). A
|
|
40
|
-
* projection-only `.productbrain/` written by `pb handshake` (briefing.md,
|
|
41
|
-
* context.md, rules/, etc.) does NOT count — otherwise a subrepo like
|
|
42
|
-
* `packages/cli/.productbrain/` would shadow the real configuring root and
|
|
43
|
-
* `npm run pb:preview` writes (which always land at the repo-root
|
|
44
|
-
* `.productbrain/`) would be invisible to commands run from the subrepo.
|
|
45
|
-
*
|
|
46
|
-
* Stops at home directory or filesystem root. Returns the directory containing
|
|
47
|
-
* a config-bearing `.productbrain/`, or null if not found.
|
|
48
|
-
*/
|
|
49
|
-
export function findProjectRoot(startDir) {
|
|
50
|
-
let dir = startDir;
|
|
51
|
-
const home = homedir();
|
|
52
|
-
while (true) {
|
|
53
|
-
const pbDir = resolve(dir, '.productbrain');
|
|
54
|
-
if (existsSync(pbDir) &&
|
|
55
|
-
(existsSync(resolve(pbDir, 'config.json')) ||
|
|
56
|
-
existsSync(resolve(pbDir, 'config.local.json')))) {
|
|
57
|
-
return dir;
|
|
58
|
-
}
|
|
59
|
-
const parent = resolve(dir, '..');
|
|
60
|
-
if (parent === dir || dir === home)
|
|
61
|
-
return null;
|
|
62
|
-
dir = parent;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* Read .productbrain/config.json from the walked-up project root.
|
|
67
|
-
* Only reads siteUrl — profile and apiKey fields are ignored (legacy or misplaced).
|
|
68
|
-
* Returns null if file missing or project root not found.
|
|
69
|
-
* Warns to stderr on invalid JSON but does not throw.
|
|
70
|
-
*/
|
|
71
|
-
function readProjectConfig() {
|
|
72
|
-
const projectRoot = findProjectRoot(process.cwd());
|
|
73
|
-
if (!projectRoot)
|
|
74
|
-
return null;
|
|
75
|
-
const configPath = resolve(projectRoot, '.productbrain', 'config.json');
|
|
76
|
-
if (!existsSync(configPath))
|
|
77
|
-
return null;
|
|
78
|
-
try {
|
|
79
|
-
const raw = readFileSync(configPath, 'utf8');
|
|
80
|
-
const parsed = JSON.parse(raw);
|
|
81
|
-
if (typeof parsed !== 'object' || parsed === null || Array.isArray(parsed)) {
|
|
82
|
-
process.stderr.write('Warning: .productbrain/config.json is not a JSON object, skipping.\n');
|
|
83
|
-
return null;
|
|
84
|
-
}
|
|
85
|
-
const result = {};
|
|
86
|
-
if (typeof parsed.siteUrl === 'string' && parsed.siteUrl) {
|
|
87
|
-
result.siteUrl = parsed.siteUrl;
|
|
88
|
-
}
|
|
89
|
-
// Silently ignore `profile` and `apiKey` in config.json — those must be in config.local.json
|
|
90
|
-
return result;
|
|
91
|
-
}
|
|
92
|
-
catch {
|
|
93
|
-
process.stderr.write('Warning: .productbrain/config.json contains invalid JSON, skipping.\n');
|
|
94
|
-
return null;
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* Read .productbrain/config.local.json from the walked-up project root.
|
|
99
|
-
* Returns the machine-local pin (`profile`) and any preview-binding fields
|
|
100
|
-
* (`apiKey`, `siteUrl`, `preview`, `workspaceName`) written by
|
|
101
|
-
* `npm run pb:preview` — all gitignored, never committed.
|
|
102
|
-
* Returns null if file missing or project root not found.
|
|
103
|
-
* Warns to stderr on invalid JSON but does not throw.
|
|
104
|
-
*/
|
|
105
|
-
export function readLocalProjectConfig() {
|
|
106
|
-
const projectRoot = findProjectRoot(process.cwd());
|
|
107
|
-
if (!projectRoot)
|
|
108
|
-
return null;
|
|
109
|
-
const configPath = resolve(projectRoot, '.productbrain', 'config.local.json');
|
|
110
|
-
if (!existsSync(configPath))
|
|
111
|
-
return null;
|
|
112
|
-
try {
|
|
113
|
-
const raw = readFileSync(configPath, 'utf8');
|
|
114
|
-
const parsed = JSON.parse(raw);
|
|
115
|
-
if (typeof parsed !== 'object' || parsed === null || Array.isArray(parsed)) {
|
|
116
|
-
process.stderr.write('Warning: .productbrain/config.local.json is not a JSON object, skipping.\n');
|
|
117
|
-
return null;
|
|
118
|
-
}
|
|
119
|
-
const result = {};
|
|
120
|
-
if (typeof parsed.profile === 'string' && parsed.profile) {
|
|
121
|
-
result.profile = parsed.profile;
|
|
122
|
-
}
|
|
123
|
-
// Preview binding fields — written by `npm run pb:preview`, cleared by `npm run pb:real`.
|
|
124
|
-
if (typeof parsed.apiKey === 'string' && parsed.apiKey.startsWith(API_KEY_PREFIX)) {
|
|
125
|
-
result.apiKey = parsed.apiKey;
|
|
126
|
-
}
|
|
127
|
-
if (typeof parsed.siteUrl === 'string' && parsed.siteUrl) {
|
|
128
|
-
result.siteUrl = parsed.siteUrl;
|
|
129
|
-
}
|
|
130
|
-
if (parsed.preview === true) {
|
|
131
|
-
result.preview = true;
|
|
132
|
-
}
|
|
133
|
-
if (typeof parsed.workspaceName === 'string' && parsed.workspaceName) {
|
|
134
|
-
result.workspaceName = parsed.workspaceName;
|
|
135
|
-
}
|
|
136
|
-
return result;
|
|
137
|
-
}
|
|
138
|
-
catch {
|
|
139
|
-
process.stderr.write('Warning: .productbrain/config.local.json contains invalid JSON, skipping.\n');
|
|
140
|
-
return null;
|
|
141
|
-
}
|
|
142
|
-
}
|
|
38
|
+
// Re-exported so callers keep importing the repo-config readers from here (they are part of
|
|
39
|
+
// this module's long-standing public surface); the implementations live in projectConfig.ts.
|
|
40
|
+
export { findProjectRoot, readLocalProjectConfig } from './projectConfig.js';
|
|
143
41
|
/**
|
|
144
42
|
* Returns the preview binding metadata when pb is currently bound to a throwaway preview,
|
|
145
43
|
* or null when bound to the real Chain (the default).
|
|
@@ -161,11 +59,7 @@ export function getPreviewBinding() {
|
|
|
161
59
|
try {
|
|
162
60
|
if (process.env.PRODUCTBRAIN_API_KEY)
|
|
163
61
|
return null;
|
|
164
|
-
|
|
165
|
-
if (localConfig?.preview === true && localConfig.apiKey && localConfig.siteUrl) {
|
|
166
|
-
return { workspaceName: localConfig.workspaceName ?? null };
|
|
167
|
-
}
|
|
168
|
-
return null;
|
|
62
|
+
return declaresCompletePreviewBinding(readLocalProjectConfig());
|
|
169
63
|
}
|
|
170
64
|
catch {
|
|
171
65
|
return null;
|
|
@@ -178,7 +72,7 @@ export function getPreviewBinding() {
|
|
|
178
72
|
*
|
|
179
73
|
* Co-writer note (SF-2): scripts/pb-binding.mjs is the OTHER writer of config.local.json — it
|
|
180
74
|
* merges/strips the preview-binding keys (apiKey, siteUrl, preview, workspaceName) for
|
|
181
|
-
* `npm run pb:preview` / `npm run pb:real
|
|
75
|
+
* `npm run pb:preview` / `npm run pb:real`, plus previewKey*. Both writers keep the `profile` pin. If you add
|
|
182
76
|
* a preview-scoped key here or in readLocalProjectConfig(), update pb-binding.mjs's PREVIEW_KEYS.
|
|
183
77
|
*/
|
|
184
78
|
export function setLocalProfilePin(projectRoot, profile) {
|
|
@@ -194,22 +88,22 @@ export function setLocalProfilePin(projectRoot, profile) {
|
|
|
194
88
|
catch { /* ignore parse errors — we overwrite the pin below */ }
|
|
195
89
|
}
|
|
196
90
|
mkdirSync(configDir, { recursive: true });
|
|
197
|
-
|
|
91
|
+
writePrivateFile(localConfigPath, JSON.stringify({ ...existing, profile }, null, 2) + '\n'); // the file may hold a preview apiKey
|
|
198
92
|
}
|
|
199
93
|
/**
|
|
200
94
|
* WP-458 E2 — one-shot preview apiKey refresh from disk.
|
|
201
95
|
*
|
|
202
|
-
* After a worktree preview is reseeded, seed-preview.mjs Step 6 mints a NEW apiKey into
|
|
203
|
-
*
|
|
96
|
+
* After a worktree preview is reseeded, seed-preview.mjs Step 6 mints a NEW apiKey into the bound key
|
|
97
|
+
* file the binding recorded (`previewKey`), but `config.local.json` (and the live `process.env` binding it
|
|
204
98
|
* seeded via loadEnv) still carry the PRE-reseed key — so the next `pb session start` fails auth
|
|
205
|
-
* with an opaque INTERNAL. This re-reads the fresh key from
|
|
206
|
-
* ONCE (session.ts). It is deliberately disk-to-disk: it compares
|
|
99
|
+
* with an opaque INTERNAL. This re-reads the fresh key from that file so the caller can retry
|
|
100
|
+
* ONCE (session.ts). It is deliberately disk-to-disk: it compares that file's key against
|
|
207
101
|
* config.local.json's bound key, NOT against process.env (which loadEnv already populated from the
|
|
208
102
|
* stale binding), so it can't be confused by its own prior population. Never throws — any error
|
|
209
103
|
* degrades to 'unavailable'/'not-bound' so it can sit on the session-start path.
|
|
210
104
|
*
|
|
211
105
|
* Co-writer note (SF-2): mirrors pb-binding.mjs / setLocalProfilePin — preserves every sibling key
|
|
212
|
-
* in config.local.json (profile, preview, workspaceName) and only rewrites apiKey + siteUrl.
|
|
106
|
+
* in config.local.json (profile, preview, workspaceName, previewKey*) and only rewrites apiKey + siteUrl.
|
|
213
107
|
*/
|
|
214
108
|
export function refreshPreviewApiKeyFromDisk() {
|
|
215
109
|
try {
|
|
@@ -220,28 +114,18 @@ export function refreshPreviewApiKeyFromDisk() {
|
|
|
220
114
|
// Only act on a real preview binding (preview:true + atomic apiKey+siteUrl pair, SF-3).
|
|
221
115
|
if (!local?.preview || !local.apiKey || !local.siteUrl)
|
|
222
116
|
return 'not-bound';
|
|
223
|
-
// Never clobber a genuine env override:
|
|
224
|
-
// the
|
|
225
|
-
//
|
|
117
|
+
// Never clobber a genuine env override. BOTH signals: the value comparison misses an operator
|
|
118
|
+
// who exported the SAME key the binding holds (Codex P2 r12); the snapshot misses one set
|
|
119
|
+
// after module load. An unset key is fine — loadEnv may not have run yet.
|
|
226
120
|
const liveKey = process.env.PRODUCTBRAIN_API_KEY;
|
|
227
|
-
if (liveKey && liveKey !== local.apiKey)
|
|
121
|
+
if (isEnvKeyBinding() || (liveKey && liveKey !== local.apiKey))
|
|
228
122
|
return 'not-bound';
|
|
229
|
-
//
|
|
230
|
-
const
|
|
231
|
-
if (!
|
|
232
|
-
return 'unavailable';
|
|
233
|
-
let fresh;
|
|
234
|
-
try {
|
|
235
|
-
const parsed = JSON.parse(readFileSync(previewPath, 'utf8'));
|
|
236
|
-
if (typeof parsed !== 'object' || parsed === null || Array.isArray(parsed))
|
|
237
|
-
return 'unavailable';
|
|
238
|
-
fresh = parsed;
|
|
239
|
-
}
|
|
240
|
-
catch {
|
|
123
|
+
// Only the key file pb:preview bound, and only while it still names that person, workspace and seat (TEN-4883).
|
|
124
|
+
const fresh = local.previewKey ? readBoundPreviewKey(projectRoot, local.previewKey) : null;
|
|
125
|
+
if (!fresh)
|
|
241
126
|
return 'unavailable';
|
|
242
|
-
}
|
|
243
127
|
const freshKey = typeof fresh.apiKey === 'string' ? fresh.apiKey : '';
|
|
244
|
-
if (!freshKey
|
|
128
|
+
if (!isApiKeyShaped(freshKey))
|
|
245
129
|
return 'unavailable';
|
|
246
130
|
// Same key as the one already bound — retrying would just fail again; the failure is not a
|
|
247
131
|
// stale key, so the caller surfaces the real error rather than relabelling it.
|
|
@@ -259,7 +143,7 @@ export function refreshPreviewApiKeyFromDisk() {
|
|
|
259
143
|
}
|
|
260
144
|
catch { /* overwrite below */ }
|
|
261
145
|
}
|
|
262
|
-
|
|
146
|
+
writePrivateFile(localConfigPath, JSON.stringify({ ...existing, apiKey: freshKey, siteUrl: freshSite }, null, 2) + '\n');
|
|
263
147
|
// Update the live binding + drop the load cache so the next getConfig() uses the fresh key.
|
|
264
148
|
process.env.PRODUCTBRAIN_API_KEY = freshKey;
|
|
265
149
|
process.env.CONVEX_SITE_URL = freshSite.replace(/\/$/, '');
|
|
@@ -271,21 +155,40 @@ export function refreshPreviewApiKeyFromDisk() {
|
|
|
271
155
|
}
|
|
272
156
|
}
|
|
273
157
|
/**
|
|
274
|
-
*
|
|
275
|
-
*
|
|
276
|
-
*
|
|
277
|
-
*
|
|
278
|
-
* repo
|
|
279
|
-
|
|
280
|
-
|
|
158
|
+
* The profile a subagent's conversation runs on (TASK-1177; DEC-2298): the session-start hook saves the profile's NAME, never
|
|
159
|
+
* a key, in ~/.config/productbrain/conversations/<conversation>, and removes it when the subagent stops. A subagent shares
|
|
160
|
+
* its parent's env, so only a pb command prefixed with the subagent's own PB_CONVERSATION_ID finds it; that command runs on
|
|
161
|
+
* the profile's key ahead of the parent's exported key, and one without the prefix stays on the parent's key. In the home
|
|
162
|
+
* folder, not the repo: a subagent works in another worktree than the one its hook ran in.
|
|
163
|
+
*/
|
|
164
|
+
export function conversationKeyProfile() {
|
|
165
|
+
const raw = process.env.PB_CONVERSATION_ID?.trim();
|
|
166
|
+
if (!raw)
|
|
167
|
+
return null;
|
|
168
|
+
try {
|
|
169
|
+
// Line 1 is the profile; line 2 is the hook's (the Claude process it clears the record by).
|
|
170
|
+
return readFileSync(resolve(HOME_CONFIG_DIR, 'conversations', normalizeConversationId(raw)), 'utf8').split('\n')[0].trim() || null;
|
|
171
|
+
}
|
|
172
|
+
catch {
|
|
173
|
+
return null;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Resolve the effective profile NAME + where it came from. PRECEDENCE — local pin > env >
|
|
178
|
+
* global > default: the pin outranks `PB_PROFILE` because resolveConfig() 2b / loadEnv() 1b
|
|
179
|
+
* bind the pinned key before the profile system (the only step reading `PB_PROFILE`), so
|
|
180
|
+
* under both the env name never supplies the credential and must not be reported. Unlike
|
|
181
|
+
* resolveConfig() this names the *configured* pin even when unresolvable (deleted / missing
|
|
182
|
+
* key): a dangling pin must be surfaced by `pb whoami`, never masked by the global profile
|
|
183
|
+
* — the TEN-2163 silent-drift bug. Used by `pb whoami`, session labels, "now using" prints.
|
|
281
184
|
*/
|
|
282
185
|
export function resolveEffectiveProfile() {
|
|
283
|
-
const envProfile = process.env.PB_PROFILE?.trim();
|
|
284
|
-
if (envProfile)
|
|
285
|
-
return { profile: envProfile, source: 'env' };
|
|
286
186
|
const localProfile = readLocalProjectConfig()?.profile;
|
|
287
187
|
if (localProfile)
|
|
288
188
|
return { profile: localProfile, source: 'local' };
|
|
189
|
+
const envProfile = process.env.PB_PROFILE?.trim();
|
|
190
|
+
if (envProfile)
|
|
191
|
+
return { profile: envProfile, source: 'env' };
|
|
289
192
|
const globalProfile = getGlobalActiveProfile();
|
|
290
193
|
if (globalProfile)
|
|
291
194
|
return { profile: globalProfile, source: 'global' };
|
|
@@ -296,25 +199,43 @@ export function resolveEffectiveProfile() {
|
|
|
296
199
|
/**
|
|
297
200
|
* Run the full config resolution cascade and return a typed result.
|
|
298
201
|
* Resolution order:
|
|
299
|
-
*
|
|
202
|
+
* 0. The profile this subagent's conversation names (highest priority; it holds no key of its own)
|
|
203
|
+
* 1. Environment variables
|
|
300
204
|
* 2. config.local.json profile → resolveNamedProfileConfig(profile) for apiKey + siteUrl
|
|
301
|
-
*
|
|
205
|
+
* 2c. Declared project naming no tenant — refuses (config.json names neither a tenant nor a gateway)
|
|
302
206
|
* 3. Profile system (~/.config/productbrain/profiles/{name}.env)
|
|
303
207
|
* 4. Legacy home config (~/.config/productbrain/.env)
|
|
304
208
|
* 5. CWD .env files (.env.mcp, packages/mcp-server/.env.mcp, .env)
|
|
305
209
|
*
|
|
306
|
-
*
|
|
210
|
+
* A key travels only with the site URL stored or exported beside it (TEN-4500): every branch
|
|
211
|
+
* reads its URL from the same source as its key, and a key with no URL of its own goes to
|
|
212
|
+
* DEFAULT_SITE_URL. `.productbrain/config.json` is committed, so a cloned repo controls its
|
|
213
|
+
* siteUrl; it never routes a key. Same rule as resolveAdminConfig() (TEN-1334). loadEnv()
|
|
214
|
+
* exports this function's answer, so `pb doctor` and the command path cannot name different
|
|
215
|
+
* hosts. `siteUrlSource` records which source supplied the URL.
|
|
216
|
+
*
|
|
217
|
+
* THROWS at step 2 rather than substituting a different workspace: CONFIG_INVALID at 2a
|
|
218
|
+
* (incomplete binding), AUTH_MISSING at 2b (dangling pin), missing-pin at 2c. getConfigSafe()
|
|
219
|
+
* reports each as `ok: false` with the kind preserved, for callers that must not crash.
|
|
307
220
|
*/
|
|
308
|
-
export function resolveConfig() {
|
|
309
|
-
//
|
|
310
|
-
const
|
|
221
|
+
export function resolveConfig(ignoreEnvKey = false) {
|
|
222
|
+
// 0. A subagent's own role key: never fall back to the parent's key when the named profile is broken.
|
|
223
|
+
const keyProfile = conversationKeyProfile();
|
|
224
|
+
if (keyProfile) {
|
|
225
|
+
const named = resolveNamedProfileConfig(keyProfile);
|
|
226
|
+
if (!named?.apiKey || !isApiKeyShaped(named.apiKey)) {
|
|
227
|
+
throw new ConfigResolutionError(`This conversation runs on profile ${keyProfile}, which holds no valid key.`, {
|
|
228
|
+
code: ErrorCode.AUTH_MISSING, category: 'auth', kind: 'profile-pin',
|
|
229
|
+
nextCommand: `pb profile create ${keyProfile}`, guidance: `Save the agent's key again: pb profile create ${keyProfile}.`,
|
|
230
|
+
});
|
|
231
|
+
}
|
|
232
|
+
return { apiKey: named.apiKey, source: 'profile', profileName: keyProfile, ...pickSiteUrl([['profile', named.siteUrl]]) };
|
|
233
|
+
}
|
|
234
|
+
// 1. Env vars. `ignoreEnvKey`: reporting-only seam, rationale at its call site (TEN-3311).
|
|
235
|
+
const envKey = ignoreEnvKey ? undefined : process.env.PRODUCTBRAIN_API_KEY;
|
|
311
236
|
const envSite = process.env.CONVEX_SITE_URL;
|
|
312
237
|
if (envKey) {
|
|
313
|
-
return {
|
|
314
|
-
apiKey: envKey,
|
|
315
|
-
siteUrl: (envSite || DEFAULT_SITE_URL).replace(/\/$/, ''),
|
|
316
|
-
source: 'env',
|
|
317
|
-
};
|
|
238
|
+
return { apiKey: envKey, source: 'env', ...pickSiteUrl([['env', envSite]]) };
|
|
318
239
|
}
|
|
319
240
|
// 2. Local project config — check for direct preview binding first, then profile pin.
|
|
320
241
|
const localConfig = readLocalProjectConfig();
|
|
@@ -325,39 +246,35 @@ export function resolveConfig() {
|
|
|
325
246
|
//
|
|
326
247
|
// Atomic apiKey+siteUrl (SF-3): only honor the preview key when its OWN siteUrl is present.
|
|
327
248
|
// Never let a preview key borrow config.json's (real-dev) siteUrl — that would send a
|
|
328
|
-
// preview credential to a non-preview gateway (STD-261).
|
|
329
|
-
//
|
|
330
|
-
|
|
331
|
-
if (
|
|
249
|
+
// preview credential to a non-preview gateway (STD-261). A claimed but incomplete binding
|
|
250
|
+
// refuses before the profile pin, so neither credential nor tenant can silently change.
|
|
251
|
+
const localBinding = resolveLocalBinding(localConfig);
|
|
252
|
+
if (localBinding) {
|
|
253
|
+
// The binding carries its own atomic siteUrl (SF-3), so it is also the URL's origin.
|
|
332
254
|
return {
|
|
333
|
-
apiKey:
|
|
334
|
-
siteUrl:
|
|
255
|
+
apiKey: localBinding.apiKey,
|
|
256
|
+
siteUrl: localBinding.siteUrl,
|
|
335
257
|
source: 'project',
|
|
258
|
+
siteUrlSource: 'local-binding',
|
|
336
259
|
};
|
|
337
260
|
}
|
|
338
261
|
// 2b. Profile pin (config.local.json profile field, gitignored)
|
|
339
262
|
if (localConfig?.profile) {
|
|
340
|
-
const
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
siteUrl: (namedConfig.siteUrl || projectConfig?.siteUrl || envSite || DEFAULT_SITE_URL).replace(/\/$/, ''),
|
|
347
|
-
source: 'project',
|
|
348
|
-
};
|
|
349
|
-
}
|
|
263
|
+
const pinned = resolvePinnedProfile(localConfig.profile);
|
|
264
|
+
return {
|
|
265
|
+
apiKey: pinned.apiKey,
|
|
266
|
+
source: 'project', profileName: localConfig.profile,
|
|
267
|
+
...pickSiteUrl([['profile-pin', pinned.siteUrl]]),
|
|
268
|
+
};
|
|
350
269
|
}
|
|
351
|
-
//
|
|
352
|
-
// Falls through; siteUrl from config.json is used as a tiebreaker below in step 3.
|
|
270
|
+
refuseWhenProjectHasNoTenant(); // 2c — declared project, no tenant named
|
|
353
271
|
// 3. Profile system
|
|
354
|
-
const projectConfig = readProjectConfig();
|
|
355
272
|
const profileConfig = resolveProfileConfig();
|
|
356
273
|
if (profileConfig?.apiKey) {
|
|
357
274
|
return {
|
|
358
275
|
apiKey: profileConfig.apiKey,
|
|
359
|
-
|
|
360
|
-
|
|
276
|
+
source: 'profile', profileName: profileConfig.profileName ?? undefined,
|
|
277
|
+
...pickSiteUrl([['profile', profileConfig.siteUrl]]),
|
|
361
278
|
};
|
|
362
279
|
}
|
|
363
280
|
// 4. Legacy home config
|
|
@@ -366,8 +283,8 @@ export function resolveConfig() {
|
|
|
366
283
|
if (vars['PRODUCTBRAIN_API_KEY']) {
|
|
367
284
|
return {
|
|
368
285
|
apiKey: vars['PRODUCTBRAIN_API_KEY'],
|
|
369
|
-
siteUrl: (projectConfig?.siteUrl || vars['CONVEX_SITE_URL'] || envSite || DEFAULT_SITE_URL).replace(/\/$/, ''),
|
|
370
286
|
source: 'profile',
|
|
287
|
+
...pickSiteUrl([['legacy', vars['CONVEX_SITE_URL']]]),
|
|
371
288
|
};
|
|
372
289
|
}
|
|
373
290
|
}
|
|
@@ -379,29 +296,18 @@ export function resolveConfig() {
|
|
|
379
296
|
if (vars['PRODUCTBRAIN_API_KEY']) {
|
|
380
297
|
return {
|
|
381
298
|
apiKey: vars['PRODUCTBRAIN_API_KEY'],
|
|
382
|
-
siteUrl: (projectConfig?.siteUrl || vars['CONVEX_SITE_URL'] || envSite || DEFAULT_SITE_URL).replace(/\/$/, ''),
|
|
383
299
|
source: 'cwd',
|
|
300
|
+
...pickSiteUrl([['cwd', vars['CONVEX_SITE_URL'], p]]),
|
|
384
301
|
};
|
|
385
302
|
}
|
|
386
303
|
break;
|
|
387
304
|
}
|
|
388
305
|
}
|
|
389
|
-
// 6. No API key found anywhere —
|
|
390
|
-
const resolvedSiteUrl = (projectConfig?.siteUrl || envSite || DEFAULT_SITE_URL).replace(/\/$/, '');
|
|
391
|
-
// TEN-2382: the published CLI's prod default is intended (WP-301), so we do NOT
|
|
392
|
-
// warn on prod fall-through in general. The ONE exception is the preview-scrub
|
|
393
|
-
// misroute — a preview binding whose apiKey is present but whose siteUrl was
|
|
394
|
-
// scrubbed (the STD-261 atomic guard at step 2a dropped the key), now silently
|
|
395
|
-
// resolving to the production gateway. That single case is a real misroute.
|
|
396
|
-
if (localConfig?.apiKey && resolvedSiteUrl === DEFAULT_SITE_URL.replace(/\/$/, '')) {
|
|
397
|
-
process.stderr.write(`Warning: a preview API key is configured but its deployment URL is missing — ` +
|
|
398
|
-
`defaulting to the production gateway ${DEFAULT_SITE_URL}. Run ` +
|
|
399
|
-
`\`npm run pb:preview\` to rebind the preview, or set CONVEX_SITE_URL.\n`);
|
|
400
|
-
}
|
|
306
|
+
// 6. No API key found anywhere — siteUrl still resolves so diagnostics can report a gateway.
|
|
401
307
|
return {
|
|
402
308
|
apiKey: undefined,
|
|
403
|
-
siteUrl: resolvedSiteUrl,
|
|
404
309
|
source: 'default',
|
|
310
|
+
...pickSiteUrl([['env', envSite]]),
|
|
405
311
|
};
|
|
406
312
|
}
|
|
407
313
|
/** Parse env file content and return key-value pairs (without mutating process.env). */
|
|
@@ -426,53 +332,21 @@ function parseEnvContent(content) {
|
|
|
426
332
|
function loadEnv() {
|
|
427
333
|
if (envLoaded)
|
|
428
334
|
return;
|
|
429
|
-
|
|
430
|
-
//
|
|
431
|
-
|
|
432
|
-
//
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
process.env.PRODUCTBRAIN_API_KEY = localConfig.apiKey;
|
|
438
|
-
// SF-3 atomic pair: when we accept the preview key, we MUST pair it with
|
|
439
|
-
// its OWN siteUrl — even if CONVEX_SITE_URL is already exported. Otherwise
|
|
440
|
-
// a stale/real exported CONVEX_SITE_URL would silently route the preview
|
|
441
|
-
// credential to a non-preview gateway. Mirror of resolveConfig() step 2a,
|
|
442
|
-
// which returns localConfig.siteUrl unconditionally inside this branch.
|
|
443
|
-
process.env.CONVEX_SITE_URL = localConfig.siteUrl.replace(/\/$/, '');
|
|
444
|
-
}
|
|
445
|
-
// 1b. Profile pin
|
|
446
|
-
if (localConfig?.profile && !process.env.PRODUCTBRAIN_API_KEY) {
|
|
447
|
-
const namedConfig = resolveNamedProfileConfig(localConfig.profile);
|
|
448
|
-
if (namedConfig?.apiKey) {
|
|
449
|
-
process.env.PRODUCTBRAIN_API_KEY = namedConfig.apiKey;
|
|
450
|
-
if (!process.env.CONVEX_SITE_URL && namedConfig.siteUrl) {
|
|
451
|
-
process.env.CONVEX_SITE_URL = namedConfig.siteUrl.replace(/\/$/, '');
|
|
452
|
-
}
|
|
453
|
-
}
|
|
454
|
-
}
|
|
455
|
-
// 1b. Apply siteUrl from config.json (gateway override — no apiKey reading here)
|
|
456
|
-
const projectConfig = readProjectConfig();
|
|
457
|
-
if (projectConfig?.siteUrl && !process.env.CONVEX_SITE_URL) {
|
|
458
|
-
process.env.CONVEX_SITE_URL = projectConfig.siteUrl.replace(/\/$/, '');
|
|
459
|
-
}
|
|
460
|
-
// 2. Try profile system (handles auto-migration from legacy .env)
|
|
461
|
-
const profileConfig = resolveProfileConfig();
|
|
462
|
-
if (profileConfig) {
|
|
463
|
-
// Only set if not already set by env vars or project config
|
|
464
|
-
if (!process.env.PRODUCTBRAIN_API_KEY) {
|
|
465
|
-
process.env.PRODUCTBRAIN_API_KEY = profileConfig.apiKey;
|
|
466
|
-
}
|
|
467
|
-
if (!process.env.CONVEX_SITE_URL && profileConfig.siteUrl) {
|
|
468
|
-
process.env.CONVEX_SITE_URL = profileConfig.siteUrl.replace(/\/$/, '');
|
|
469
|
-
}
|
|
335
|
+
// 1. The credential and its site URL come from resolveConfig() as one pair, so the URL a key
|
|
336
|
+
// is sent to is decided in one place and `pb doctor` (getConfigSafe) names the same host this
|
|
337
|
+
// exports (TEN-4500). resolveConfig() throws the same refusals this path must raise: an
|
|
338
|
+
// incomplete preview binding, a dangling pin, a declared project with no pin.
|
|
339
|
+
const resolved = resolveConfig();
|
|
340
|
+
if (resolved.apiKey) {
|
|
341
|
+
process.env.PRODUCTBRAIN_API_KEY = resolved.apiKey;
|
|
342
|
+
process.env.CONVEX_SITE_URL = resolved.siteUrl;
|
|
470
343
|
}
|
|
471
|
-
//
|
|
344
|
+
// 2. The legacy home file and the first CWD env file still seed any OTHER unset variable they
|
|
345
|
+
// hold. They cannot move the pair above: both variables are already set whenever a key
|
|
346
|
+
// resolved, and when none did, resolveConfig() already read these files and found no key.
|
|
472
347
|
if (existsSync(HOME_ENV_PATH)) {
|
|
473
348
|
parseEnvContent(readFileSync(HOME_ENV_PATH, 'utf8'));
|
|
474
349
|
}
|
|
475
|
-
// 4. CWD env files
|
|
476
350
|
for (const p of CWD_ENV_PATHS) {
|
|
477
351
|
const full = resolve(process.cwd(), p);
|
|
478
352
|
if (existsSync(full)) {
|
|
@@ -480,79 +354,35 @@ function loadEnv() {
|
|
|
480
354
|
break;
|
|
481
355
|
}
|
|
482
356
|
}
|
|
357
|
+
// Marked loaded only on success: a dangling pin (step 1) throws, and latching the flag
|
|
358
|
+
// before that would leave the module "loaded" with no credential, so a caller that catches
|
|
359
|
+
// the refusal and retries would silently get the keyless path instead of the refusal again.
|
|
360
|
+
envLoaded = true;
|
|
483
361
|
}
|
|
484
362
|
/** Reset env loaded state — used for profile switching. */
|
|
485
363
|
export function resetConfigCache() {
|
|
486
364
|
envLoaded = false;
|
|
487
365
|
}
|
|
488
|
-
/**
|
|
489
|
-
* Guided flow when key is missing (TTY only). Per docs/cli-unauthenticated-user-journey.md.
|
|
490
|
-
* Returns true if we saved and ran retry; false if user said No (caller should exit).
|
|
491
|
-
*/
|
|
492
|
-
async function runGuidedFlow(retry) {
|
|
493
|
-
const hasKey = await promptConfirm({
|
|
494
|
-
message: 'Do you have an API key from Product Brain?',
|
|
495
|
-
initialValue: false,
|
|
496
|
-
});
|
|
497
|
-
if (!hasKey) {
|
|
498
|
-
console.log('Get your key: Product Brain app → Settings → API Keys. Then run: pb login');
|
|
499
|
-
process.exit(0);
|
|
500
|
-
}
|
|
501
|
-
let apiKey = await promptPassword({
|
|
502
|
-
message: `Paste your API key (${API_KEY_PREFIX}...)`,
|
|
503
|
-
validate: (v) => (!v ? 'Key is required' : undefined),
|
|
504
|
-
});
|
|
505
|
-
if (!apiKey.startsWith(API_KEY_PREFIX)) {
|
|
506
|
-
console.log(`Key must start with ${API_KEY_PREFIX}. Try again or run pb login.`);
|
|
507
|
-
apiKey = await promptPassword({
|
|
508
|
-
message: `Paste your API key (${API_KEY_PREFIX}...)`,
|
|
509
|
-
validate: (v) => (!v || !v.startsWith(API_KEY_PREFIX) ? `Key must start with ${API_KEY_PREFIX}` : undefined),
|
|
510
|
-
});
|
|
511
|
-
}
|
|
512
|
-
if (!apiKey || !apiKey.startsWith(API_KEY_PREFIX)) {
|
|
513
|
-
console.log('Get your key: Product Brain app → Settings → API Keys. Then run: pb login');
|
|
514
|
-
process.exit(0);
|
|
515
|
-
}
|
|
516
|
-
// Save as a named profile via the profile system
|
|
517
|
-
const { createProfile, getActiveProfile } = await import('./profiles.js');
|
|
518
|
-
const profileName = getActiveProfile() || 'default';
|
|
519
|
-
try {
|
|
520
|
-
createProfile(profileName, apiKey, DEFAULT_SITE_URL.replace(/\/$/, ''));
|
|
521
|
-
}
|
|
522
|
-
catch {
|
|
523
|
-
// Profile already exists — fall back to legacy path
|
|
524
|
-
const content = [
|
|
525
|
-
`# Product Brain CLI — saved by guided setup`,
|
|
526
|
-
`PRODUCTBRAIN_API_KEY=${apiKey}`,
|
|
527
|
-
`CONVEX_SITE_URL=${DEFAULT_SITE_URL.replace(/\/$/, '')}`,
|
|
528
|
-
'',
|
|
529
|
-
].join('\n');
|
|
530
|
-
mkdirSync(HOME_CONFIG_DIR, { recursive: true });
|
|
531
|
-
writeFileSync(HOME_ENV_PATH, content, { mode: 0o600 });
|
|
532
|
-
}
|
|
533
|
-
process.env.PRODUCTBRAIN_API_KEY = apiKey;
|
|
534
|
-
process.env.CONVEX_SITE_URL = DEFAULT_SITE_URL.replace(/\/$/, '');
|
|
535
|
-
console.log('Saved your key. Running your command…\n');
|
|
536
|
-
await retry();
|
|
537
|
-
return true;
|
|
538
|
-
}
|
|
539
366
|
export function getConfig() {
|
|
540
367
|
loadEnv();
|
|
541
368
|
const apiKey = process.env.PRODUCTBRAIN_API_KEY ?? '';
|
|
542
369
|
const siteUrl = (process.env.CONVEX_SITE_URL ?? DEFAULT_SITE_URL).replace(/\/$/, '');
|
|
543
|
-
|
|
544
|
-
|
|
370
|
+
// TASK-562: no key throws the one missing-key sentence getConfigSafe reports (configResult.ts).
|
|
371
|
+
if (!apiKey)
|
|
372
|
+
throw missingKeyError();
|
|
373
|
+
if (!isApiKeyShaped(apiKey)) {
|
|
374
|
+
throw new CLIError(API_KEY_FORMAT_LINE, {
|
|
545
375
|
code: ErrorCode.AUTH_MISSING,
|
|
546
376
|
category: 'auth',
|
|
547
|
-
guidance: '
|
|
377
|
+
guidance: 'Run `pb doctor` to see which source supplied it.',
|
|
548
378
|
});
|
|
549
379
|
}
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
throw new CLIError(`
|
|
380
|
+
if (isInsecureSiteUrl(siteUrl)) {
|
|
381
|
+
// loadEnv() exports a file-sourced URL into CONVEX_SITE_URL, so only `pb doctor` can name the origin.
|
|
382
|
+
throw new CLIError(`Site URL must use HTTPS (got "${siteUrl.slice(0, 30)}…"). API keys must not be sent over unencrypted connections.`, {
|
|
553
383
|
code: ErrorCode.CONFIG_INVALID,
|
|
554
384
|
category: 'config',
|
|
555
|
-
guidance: '
|
|
385
|
+
guidance: 'Run `pb doctor` to see which source supplied the URL, then set an https:// URL there.',
|
|
556
386
|
});
|
|
557
387
|
}
|
|
558
388
|
return { apiKey, siteUrl };
|
|
@@ -567,103 +397,25 @@ export function getConfig() {
|
|
|
567
397
|
* coexist by design — see WP-303 review (DW#5).
|
|
568
398
|
*
|
|
569
399
|
* Uses resolveConfig() directly (no loadEnv) to avoid env var pollution affecting source attribution.
|
|
400
|
+
*
|
|
401
|
+
* A refusal from resolveConfig() (dangling repo pin) is reported as `ok: false` with the
|
|
402
|
+
* refusal as the reason — NOT rethrown. This surface is what `pb doctor` and the bare-`pb`
|
|
403
|
+
* dashboard use to *diagnose*, and a diagnostic that dies on the condition it exists to
|
|
404
|
+
* explain is useless. The refusal keeps its teeth either way: `ok: false` hands out no
|
|
405
|
+
* credential, so nothing can proceed against the wrong workspace.
|
|
570
406
|
*/
|
|
571
407
|
export function getConfigSafe() {
|
|
572
|
-
|
|
573
|
-
if (!resolved.apiKey || !resolved.apiKey.startsWith(API_KEY_PREFIX)) {
|
|
574
|
-
return { ok: false, reason: 'No API key. Run pb login or set PRODUCTBRAIN_API_KEY.' };
|
|
575
|
-
}
|
|
576
|
-
const siteUrl = resolved.siteUrl;
|
|
577
|
-
const allowHttp = isDevMode() && siteUrl.startsWith('http://localhost');
|
|
578
|
-
if (!siteUrl.startsWith('https://') && !allowHttp) {
|
|
579
|
-
return {
|
|
580
|
-
ok: false,
|
|
581
|
-
reason: `CONVEX_SITE_URL must use HTTPS (got "${siteUrl.slice(0, 30)}…"). API keys must not be sent over unencrypted connections.`,
|
|
582
|
-
};
|
|
583
|
-
}
|
|
584
|
-
return { ok: true, apiKey: resolved.apiKey, siteUrl, source: resolved.source };
|
|
585
|
-
}
|
|
586
|
-
/**
|
|
587
|
-
* Get config; if key is missing and stdin is a TTY, run guided flow (y/n → paste key → save → retry).
|
|
588
|
-
* @param retry Called after saving key so the original command runs in-process.
|
|
589
|
-
* @returns Config, or null if we ran retry (caller should return without running again).
|
|
590
|
-
*/
|
|
591
|
-
export async function getConfigOrGuide(retry) {
|
|
592
|
-
loadEnv();
|
|
593
|
-
const apiKey = process.env.PRODUCTBRAIN_API_KEY ?? '';
|
|
594
|
-
const siteUrl = (process.env.CONVEX_SITE_URL ?? DEFAULT_SITE_URL).replace(/\/$/, '');
|
|
595
|
-
const allowHttp = isDevMode() && siteUrl.startsWith('http://localhost');
|
|
596
|
-
if (apiKey.startsWith(API_KEY_PREFIX) && (siteUrl.startsWith('https://') || allowHttp)) {
|
|
597
|
-
return { apiKey, siteUrl };
|
|
598
|
-
}
|
|
599
|
-
if (!process.stdin.isTTY) {
|
|
600
|
-
throw new CLIError(NON_TTY_MESSAGE, {
|
|
601
|
-
code: ErrorCode.AUTH_MISSING,
|
|
602
|
-
category: 'auth',
|
|
603
|
-
guidance: 'Set PRODUCTBRAIN_API_KEY or run `pb login`.',
|
|
604
|
-
});
|
|
605
|
-
}
|
|
606
|
-
const didRetry = await runGuidedFlow(retry);
|
|
607
|
-
return didRetry ? null : null;
|
|
408
|
+
return resolveConfigResult(resolveConfig);
|
|
608
409
|
}
|
|
609
410
|
/**
|
|
610
|
-
*
|
|
611
|
-
*
|
|
612
|
-
* Admin commands (pb admin ...) must NOT read .productbrain/config.json or CWD env files.
|
|
613
|
-
* The project config intentionally pins the repo to a dev Convex site; admin operations
|
|
614
|
-
* target PROD workspaces via the operator's active profile. Reading project config here
|
|
615
|
-
* would silently route admin calls to the wrong gateway (TEN-1334).
|
|
616
|
-
*
|
|
617
|
-
* Resolution order:
|
|
618
|
-
* 1. Shell env vars (PRODUCTBRAIN_API_KEY / CONVEX_SITE_URL) — always win
|
|
619
|
-
* 2. Active named profile (~/.config/productbrain/profiles/{name}.env)
|
|
620
|
-
* 3. Legacy home config (~/.config/productbrain/.env)
|
|
621
|
-
* 4. DEFAULT_SITE_URL as fallback for siteUrl
|
|
622
|
-
*
|
|
623
|
-
* Throws CLIError with AUTH_MISSING if no API key is found.
|
|
411
|
+
* Get config for a command that needs auth. TASK-562: the paste-a-key guided flow is deleted; a
|
|
412
|
+
* missing key throws the same missing-key sentence as getConfig, in a TTY too (connect, never paste).
|
|
624
413
|
*/
|
|
625
|
-
export function
|
|
626
|
-
|
|
627
|
-
let rawSiteUrl;
|
|
628
|
-
// 1. Shell env vars — always highest priority
|
|
629
|
-
const envKey = process.env.PRODUCTBRAIN_API_KEY;
|
|
630
|
-
if (envKey?.startsWith(API_KEY_PREFIX)) {
|
|
631
|
-
apiKey = envKey;
|
|
632
|
-
rawSiteUrl = process.env.CONVEX_SITE_URL;
|
|
633
|
-
}
|
|
634
|
-
// 2. Active profile (no project config, no CWD files)
|
|
635
|
-
if (!apiKey) {
|
|
636
|
-
const profileConfig = resolveProfileConfig();
|
|
637
|
-
if (profileConfig?.apiKey?.startsWith(API_KEY_PREFIX)) {
|
|
638
|
-
apiKey = profileConfig.apiKey;
|
|
639
|
-
rawSiteUrl = profileConfig.siteUrl;
|
|
640
|
-
}
|
|
641
|
-
}
|
|
642
|
-
// 3. Legacy ~/.config/productbrain/.env
|
|
643
|
-
if (!apiKey && existsSync(HOME_ENV_PATH)) {
|
|
644
|
-
const vars = parseEnvVars(readFileSync(HOME_ENV_PATH, 'utf8'));
|
|
645
|
-
if (vars['PRODUCTBRAIN_API_KEY']?.startsWith(API_KEY_PREFIX)) {
|
|
646
|
-
apiKey = vars['PRODUCTBRAIN_API_KEY'];
|
|
647
|
-
rawSiteUrl = vars['CONVEX_SITE_URL'];
|
|
648
|
-
}
|
|
649
|
-
}
|
|
650
|
-
if (!apiKey) {
|
|
651
|
-
throw new CLIError('No API key found. Run pb login or set PRODUCTBRAIN_API_KEY.', {
|
|
652
|
-
code: ErrorCode.AUTH_MISSING,
|
|
653
|
-
category: 'auth',
|
|
654
|
-
guidance: 'Run `pb login` to set your API key.',
|
|
655
|
-
});
|
|
656
|
-
}
|
|
657
|
-
const siteUrl = (rawSiteUrl || DEFAULT_SITE_URL).replace(/\/$/, '');
|
|
658
|
-
const allowHttp = isDevMode() && siteUrl.startsWith('http://localhost');
|
|
659
|
-
if (!siteUrl.startsWith('https://') && !allowHttp) {
|
|
660
|
-
throw new CLIError(`CONVEX_SITE_URL must use HTTPS for admin operations (got "${siteUrl.slice(0, 30)}…").`, {
|
|
661
|
-
code: ErrorCode.CONFIG_INVALID,
|
|
662
|
-
category: 'config',
|
|
663
|
-
guidance: 'Set CONVEX_SITE_URL to an https:// URL.',
|
|
664
|
-
});
|
|
665
|
-
}
|
|
666
|
-
return { apiKey, siteUrl };
|
|
414
|
+
export async function getConfigOrGuide() {
|
|
415
|
+
return getConfig();
|
|
667
416
|
}
|
|
668
|
-
|
|
417
|
+
// resolveAdminConfig() lives in adminConfig.ts (WP-681: split out to stay under the 500-LOC
|
|
418
|
+
// budget). NOT re-exported here — that would be a circular import (adminConfig.ts imports
|
|
419
|
+
// readLocalProjectConfig/HOME_ENV_PATH from this file); every caller imports it directly.
|
|
420
|
+
export { HOME_CONFIG_DIR, HOME_ENV_PATH };
|
|
669
421
|
//# sourceMappingURL=config.js.map
|