@productbrain/cli 0.1.0-beta.47 → 0.1.0-beta.4721
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -1
- package/dist/__tests__/adapters.test.js +54 -1
- package/dist/__tests__/adapters.test.js.map +1 -1
- package/dist/__tests__/adminConfig.test.d.ts +18 -0
- package/dist/__tests__/adminConfig.test.d.ts.map +1 -0
- package/dist/__tests__/adminConfig.test.js +161 -0
- package/dist/__tests__/adminConfig.test.js.map +1 -0
- package/dist/__tests__/audit.test.js +65 -44
- package/dist/__tests__/audit.test.js.map +1 -1
- package/dist/__tests__/authority-domains-queue.test.d.ts +2 -0
- package/dist/__tests__/authority-domains-queue.test.d.ts.map +1 -0
- package/dist/__tests__/authority-domains-queue.test.js +169 -0
- package/dist/__tests__/authority-domains-queue.test.js.map +1 -0
- package/dist/__tests__/authority-domains.test.d.ts +2 -0
- package/dist/__tests__/authority-domains.test.d.ts.map +1 -0
- package/dist/__tests__/authority-domains.test.js +48 -0
- package/dist/__tests__/authority-domains.test.js.map +1 -0
- package/dist/__tests__/canonicalRefs.vocab.test.d.ts +2 -0
- package/dist/__tests__/canonicalRefs.vocab.test.d.ts.map +1 -0
- package/dist/__tests__/canonicalRefs.vocab.test.js +251 -0
- package/dist/__tests__/canonicalRefs.vocab.test.js.map +1 -0
- package/dist/__tests__/capture-receipt-coaching.test.d.ts +2 -0
- package/dist/__tests__/capture-receipt-coaching.test.d.ts.map +1 -0
- package/dist/__tests__/capture-receipt-coaching.test.js +89 -0
- package/dist/__tests__/capture-receipt-coaching.test.js.map +1 -0
- package/dist/__tests__/capture-receipt-domain.test.d.ts +2 -0
- package/dist/__tests__/capture-receipt-domain.test.d.ts.map +1 -0
- package/dist/__tests__/capture-receipt-domain.test.js +29 -0
- package/dist/__tests__/capture-receipt-domain.test.js.map +1 -0
- package/dist/__tests__/capture.test.js +625 -33
- package/dist/__tests__/capture.test.js.map +1 -1
- package/dist/__tests__/coaching-mirror-drift.test.d.ts +2 -0
- package/dist/__tests__/coaching-mirror-drift.test.d.ts.map +1 -0
- package/dist/__tests__/coaching-mirror-drift.test.js +47 -0
- package/dist/__tests__/coaching-mirror-drift.test.js.map +1 -0
- package/dist/__tests__/codex-prep-parity.test.d.ts +2 -0
- package/dist/__tests__/codex-prep-parity.test.d.ts.map +1 -0
- package/dist/__tests__/codex-prep-parity.test.js +107 -0
- package/dist/__tests__/codex-prep-parity.test.js.map +1 -0
- package/dist/__tests__/collection-registry-seed-drift.test.d.ts +2 -0
- package/dist/__tests__/collection-registry-seed-drift.test.d.ts.map +1 -0
- package/dist/__tests__/collection-registry-seed-drift.test.js +58 -0
- package/dist/__tests__/collection-registry-seed-drift.test.js.map +1 -0
- package/dist/__tests__/config-prod-fallthrough.test.d.ts +2 -0
- package/dist/__tests__/config-prod-fallthrough.test.d.ts.map +1 -0
- package/dist/__tests__/config-prod-fallthrough.test.js +82 -0
- package/dist/__tests__/config-prod-fallthrough.test.js.map +1 -0
- package/dist/__tests__/config.test.d.ts +1 -1
- package/dist/__tests__/config.test.js +410 -10
- package/dist/__tests__/config.test.js.map +1 -1
- package/dist/__tests__/constants.test.js +6 -1
- package/dist/__tests__/constants.test.js.map +1 -1
- package/dist/__tests__/constellation.test.js +14 -14
- package/dist/__tests__/constellation.test.js.map +1 -1
- package/dist/__tests__/context-strategy.test.js +8 -8
- package/dist/__tests__/context-strategy.test.js.map +1 -1
- package/dist/__tests__/conversation.test.d.ts +2 -0
- package/dist/__tests__/conversation.test.d.ts.map +1 -0
- package/dist/__tests__/conversation.test.js +113 -0
- package/dist/__tests__/conversation.test.js.map +1 -0
- package/dist/__tests__/entry-formatter.test.d.ts +2 -0
- package/dist/__tests__/entry-formatter.test.d.ts.map +1 -0
- package/dist/__tests__/entry-formatter.test.js +82 -0
- package/dist/__tests__/entry-formatter.test.js.map +1 -0
- package/dist/__tests__/entryArchive.test.d.ts +2 -0
- package/dist/__tests__/entryArchive.test.d.ts.map +1 -0
- package/dist/__tests__/entryArchive.test.js +35 -0
- package/dist/__tests__/entryArchive.test.js.map +1 -0
- package/dist/__tests__/envelope-contract.test.d.ts +15 -0
- package/dist/__tests__/envelope-contract.test.d.ts.map +1 -0
- package/dist/__tests__/envelope-contract.test.js +154 -0
- package/dist/__tests__/envelope-contract.test.js.map +1 -0
- package/dist/__tests__/errors.test.js +26 -0
- package/dist/__tests__/errors.test.js.map +1 -1
- package/dist/__tests__/fields.test.js +20 -20
- package/dist/__tests__/fields.test.js.map +1 -1
- package/dist/__tests__/gateway-dry-run-timeout.test.d.ts +2 -0
- package/dist/__tests__/gateway-dry-run-timeout.test.d.ts.map +1 -0
- package/dist/__tests__/gateway-dry-run-timeout.test.js +70 -0
- package/dist/__tests__/gateway-dry-run-timeout.test.js.map +1 -0
- package/dist/__tests__/gateway-timeout-body-phase.test.d.ts +2 -0
- package/dist/__tests__/gateway-timeout-body-phase.test.d.ts.map +1 -0
- package/dist/__tests__/gateway-timeout-body-phase.test.js +121 -0
- package/dist/__tests__/gateway-timeout-body-phase.test.js.map +1 -0
- package/dist/__tests__/handshake-augment.test.d.ts +2 -0
- package/dist/__tests__/handshake-augment.test.d.ts.map +1 -0
- package/dist/__tests__/handshake-augment.test.js +424 -0
- package/dist/__tests__/handshake-augment.test.js.map +1 -0
- package/dist/__tests__/handshake-dormancy.test.d.ts +2 -0
- package/dist/__tests__/handshake-dormancy.test.d.ts.map +1 -0
- package/dist/__tests__/handshake-dormancy.test.js +207 -0
- package/dist/__tests__/handshake-dormancy.test.js.map +1 -0
- package/dist/__tests__/handshake-formatter.test.d.ts +2 -0
- package/dist/__tests__/handshake-formatter.test.d.ts.map +1 -0
- package/dist/__tests__/handshake-formatter.test.js +67 -0
- package/dist/__tests__/handshake-formatter.test.js.map +1 -0
- package/dist/__tests__/handshake-preview.test.d.ts +2 -0
- package/dist/__tests__/handshake-preview.test.d.ts.map +1 -0
- package/dist/__tests__/handshake-preview.test.js +950 -0
- package/dist/__tests__/handshake-preview.test.js.map +1 -0
- package/dist/__tests__/handshake.e2e.test.d.ts +2 -0
- package/dist/__tests__/handshake.e2e.test.d.ts.map +1 -0
- package/dist/__tests__/handshake.e2e.test.js +1255 -0
- package/dist/__tests__/handshake.e2e.test.js.map +1 -0
- package/dist/__tests__/handshake.test.js +787 -2
- package/dist/__tests__/handshake.test.js.map +1 -1
- package/dist/__tests__/health-gap-kinds-drift.test.d.ts +2 -0
- package/dist/__tests__/health-gap-kinds-drift.test.d.ts.map +1 -0
- package/dist/__tests__/health-gap-kinds-drift.test.js +41 -0
- package/dist/__tests__/health-gap-kinds-drift.test.js.map +1 -0
- package/dist/__tests__/hook-intents.test.d.ts +2 -0
- package/dist/__tests__/hook-intents.test.d.ts.map +1 -0
- package/dist/__tests__/hook-intents.test.js +184 -0
- package/dist/__tests__/hook-intents.test.js.map +1 -0
- package/dist/__tests__/ingest.test.js +37 -28
- package/dist/__tests__/ingest.test.js.map +1 -1
- package/dist/__tests__/kernel-value-sets-drift.test.d.ts +2 -0
- package/dist/__tests__/kernel-value-sets-drift.test.d.ts.map +1 -0
- package/dist/__tests__/kernel-value-sets-drift.test.js +46 -0
- package/dist/__tests__/kernel-value-sets-drift.test.js.map +1 -0
- package/dist/__tests__/kernel-value-sets-generator.test.d.ts +2 -0
- package/dist/__tests__/kernel-value-sets-generator.test.d.ts.map +1 -0
- package/dist/__tests__/kernel-value-sets-generator.test.js +108 -0
- package/dist/__tests__/kernel-value-sets-generator.test.js.map +1 -0
- package/dist/__tests__/manifest.test.d.ts +6 -0
- package/dist/__tests__/manifest.test.d.ts.map +1 -0
- package/dist/__tests__/manifest.test.js +255 -0
- package/dist/__tests__/manifest.test.js.map +1 -0
- package/dist/__tests__/method-publish-coherency.test.d.ts +9 -0
- package/dist/__tests__/method-publish-coherency.test.d.ts.map +1 -0
- package/dist/__tests__/method-publish-coherency.test.js +71 -0
- package/dist/__tests__/method-publish-coherency.test.js.map +1 -0
- package/dist/__tests__/method-registry.integration.test.d.ts +6 -0
- package/dist/__tests__/method-registry.integration.test.d.ts.map +1 -0
- package/dist/__tests__/method-registry.integration.test.js +17 -0
- package/dist/__tests__/method-registry.integration.test.js.map +1 -0
- package/dist/__tests__/method-registry.test.d.ts +12 -0
- package/dist/__tests__/method-registry.test.d.ts.map +1 -0
- package/dist/__tests__/method-registry.test.js +86 -0
- package/dist/__tests__/method-registry.test.js.map +1 -0
- package/dist/__tests__/notice-marker.test.d.ts +2 -0
- package/dist/__tests__/notice-marker.test.d.ts.map +1 -0
- package/dist/__tests__/notice-marker.test.js +41 -0
- package/dist/__tests__/notice-marker.test.js.map +1 -0
- package/dist/__tests__/onboarding-path-b.test.js +4 -4
- package/dist/__tests__/onboarding-path-b.test.js.map +1 -1
- package/dist/__tests__/orient.test.js +502 -12
- package/dist/__tests__/orient.test.js.map +1 -1
- package/dist/__tests__/perimeter.test.d.ts +2 -0
- package/dist/__tests__/perimeter.test.d.ts.map +1 -0
- package/dist/__tests__/perimeter.test.js +165 -0
- package/dist/__tests__/perimeter.test.js.map +1 -0
- package/dist/__tests__/personal-layer.test.d.ts +11 -0
- package/dist/__tests__/personal-layer.test.d.ts.map +1 -0
- package/dist/__tests__/personal-layer.test.js +268 -0
- package/dist/__tests__/personal-layer.test.js.map +1 -0
- package/dist/__tests__/preview-key-refresh.test.d.ts +2 -0
- package/dist/__tests__/preview-key-refresh.test.d.ts.map +1 -0
- package/dist/__tests__/preview-key-refresh.test.js +126 -0
- package/dist/__tests__/preview-key-refresh.test.js.map +1 -0
- package/dist/__tests__/profiles.test.js +257 -10
- package/dist/__tests__/profiles.test.js.map +1 -1
- package/dist/__tests__/promote-batch.test.d.ts +2 -0
- package/dist/__tests__/promote-batch.test.d.ts.map +1 -0
- package/dist/__tests__/promote-batch.test.js +185 -0
- package/dist/__tests__/promote-batch.test.js.map +1 -0
- package/dist/__tests__/promote.test.js +292 -23
- package/dist/__tests__/promote.test.js.map +1 -1
- package/dist/__tests__/proof-run.test.d.ts +2 -0
- package/dist/__tests__/proof-run.test.d.ts.map +1 -0
- package/dist/__tests__/proof-run.test.js +255 -0
- package/dist/__tests__/proof-run.test.js.map +1 -0
- package/dist/__tests__/proposals.test.js +19 -19
- package/dist/__tests__/proposals.test.js.map +1 -1
- package/dist/__tests__/rate-limit-resilience.test.d.ts +7 -0
- package/dist/__tests__/rate-limit-resilience.test.d.ts.map +1 -0
- package/dist/__tests__/rate-limit-resilience.test.js +209 -0
- package/dist/__tests__/rate-limit-resilience.test.js.map +1 -0
- package/dist/__tests__/relate.test.js +42 -14
- package/dist/__tests__/relate.test.js.map +1 -1
- package/dist/__tests__/restore.test.d.ts +2 -0
- package/dist/__tests__/restore.test.d.ts.map +1 -0
- package/dist/__tests__/restore.test.js +85 -0
- package/dist/__tests__/restore.test.js.map +1 -0
- package/dist/__tests__/route-latency-budget.test.d.ts +2 -0
- package/dist/__tests__/route-latency-budget.test.d.ts.map +1 -0
- package/dist/__tests__/route-latency-budget.test.js +103 -0
- package/dist/__tests__/route-latency-budget.test.js.map +1 -0
- package/dist/__tests__/session-close-loop.test.d.ts +2 -0
- package/dist/__tests__/session-close-loop.test.d.ts.map +1 -0
- package/dist/__tests__/session-close-loop.test.js +231 -0
- package/dist/__tests__/session-close-loop.test.js.map +1 -0
- package/dist/__tests__/session-label.test.d.ts +2 -0
- package/dist/__tests__/session-label.test.d.ts.map +1 -0
- package/dist/__tests__/session-label.test.js +46 -0
- package/dist/__tests__/session-label.test.js.map +1 -0
- package/dist/__tests__/session-list-show.test.d.ts +2 -0
- package/dist/__tests__/session-list-show.test.d.ts.map +1 -0
- package/dist/__tests__/session-list-show.test.js +174 -0
- package/dist/__tests__/session-list-show.test.js.map +1 -0
- package/dist/__tests__/session-reset.test.d.ts +2 -0
- package/dist/__tests__/session-reset.test.d.ts.map +1 -0
- package/dist/__tests__/session-reset.test.js +138 -0
- package/dist/__tests__/session-reset.test.js.map +1 -0
- package/dist/__tests__/session-resume-backstop.test.d.ts +2 -0
- package/dist/__tests__/session-resume-backstop.test.d.ts.map +1 -0
- package/dist/__tests__/session-resume-backstop.test.js +99 -0
- package/dist/__tests__/session-resume-backstop.test.js.map +1 -0
- package/dist/__tests__/session-start-key-refresh.test.d.ts +2 -0
- package/dist/__tests__/session-start-key-refresh.test.d.ts.map +1 -0
- package/dist/__tests__/session-start-key-refresh.test.js +183 -0
- package/dist/__tests__/session-start-key-refresh.test.js.map +1 -0
- package/dist/__tests__/session-state-machine.test.d.ts +2 -0
- package/dist/__tests__/session-state-machine.test.d.ts.map +1 -0
- package/dist/__tests__/session-state-machine.test.js +379 -0
- package/dist/__tests__/session-state-machine.test.js.map +1 -0
- package/dist/__tests__/session-switch.test.d.ts +2 -0
- package/dist/__tests__/session-switch.test.d.ts.map +1 -0
- package/dist/__tests__/session-switch.test.js +132 -0
- package/dist/__tests__/session-switch.test.js.map +1 -0
- package/dist/__tests__/session-touch.test.js +16 -11
- package/dist/__tests__/session-touch.test.js.map +1 -1
- package/dist/__tests__/session.test.js +2 -2
- package/dist/__tests__/session.test.js.map +1 -1
- package/dist/__tests__/setup-ingest.test.d.ts +2 -0
- package/dist/__tests__/setup-ingest.test.d.ts.map +1 -0
- package/dist/__tests__/setup-ingest.test.js +71 -0
- package/dist/__tests__/setup-ingest.test.js.map +1 -0
- package/dist/__tests__/setup-resolver.test.d.ts +14 -0
- package/dist/__tests__/setup-resolver.test.d.ts.map +1 -0
- package/dist/__tests__/setup-resolver.test.js +228 -0
- package/dist/__tests__/setup-resolver.test.js.map +1 -0
- package/dist/__tests__/skill-vocabulary.test.d.ts +21 -0
- package/dist/__tests__/skill-vocabulary.test.d.ts.map +1 -0
- package/dist/__tests__/skill-vocabulary.test.js +192 -0
- package/dist/__tests__/skill-vocabulary.test.js.map +1 -0
- package/dist/__tests__/state.test.d.ts +6 -0
- package/dist/__tests__/state.test.d.ts.map +1 -0
- package/dist/__tests__/state.test.js +97 -0
- package/dist/__tests__/state.test.js.map +1 -0
- package/dist/__tests__/strip.test.js +31 -3
- package/dist/__tests__/strip.test.js.map +1 -1
- package/dist/__tests__/surfaces.test.d.ts +2 -0
- package/dist/__tests__/surfaces.test.d.ts.map +1 -0
- package/dist/__tests__/surfaces.test.js +46 -0
- package/dist/__tests__/surfaces.test.js.map +1 -0
- package/dist/__tests__/update-check.test.d.ts +2 -0
- package/dist/__tests__/update-check.test.d.ts.map +1 -0
- package/dist/__tests__/update-check.test.js +215 -0
- package/dist/__tests__/update-check.test.js.map +1 -0
- package/dist/__tests__/update.test.js +263 -22
- package/dist/__tests__/update.test.js.map +1 -1
- package/dist/__tests__/upgrade-runner.test.d.ts +2 -0
- package/dist/__tests__/upgrade-runner.test.d.ts.map +1 -0
- package/dist/__tests__/upgrade-runner.test.js +54 -0
- package/dist/__tests__/upgrade-runner.test.js.map +1 -0
- package/dist/__tests__/upgrade.test.d.ts +2 -0
- package/dist/__tests__/upgrade.test.d.ts.map +1 -0
- package/dist/__tests__/upgrade.test.js +56 -0
- package/dist/__tests__/upgrade.test.js.map +1 -0
- package/dist/__tests__/verify-formatter.test.d.ts +2 -0
- package/dist/__tests__/verify-formatter.test.d.ts.map +1 -0
- package/dist/__tests__/verify-formatter.test.js +85 -0
- package/dist/__tests__/verify-formatter.test.js.map +1 -0
- package/dist/__tests__/vocabulary-leak.test.d.ts +39 -0
- package/dist/__tests__/vocabulary-leak.test.d.ts.map +1 -0
- package/dist/__tests__/vocabulary-leak.test.js +539 -0
- package/dist/__tests__/vocabulary-leak.test.js.map +1 -0
- package/dist/__tests__/workspace.test.js +52 -32
- package/dist/__tests__/workspace.test.js.map +1 -1
- package/dist/__tests__/workspaceNotice.test.d.ts +2 -0
- package/dist/__tests__/workspaceNotice.test.d.ts.map +1 -0
- package/dist/__tests__/workspaceNotice.test.js +338 -0
- package/dist/__tests__/workspaceNotice.test.js.map +1 -0
- package/dist/commands/__tests__/connect-handoff.test.d.ts +11 -0
- package/dist/commands/__tests__/connect-handoff.test.d.ts.map +1 -0
- package/dist/commands/__tests__/connect-handoff.test.js +111 -0
- package/dist/commands/__tests__/connect-handoff.test.js.map +1 -0
- package/dist/commands/__tests__/quality.test.d.ts +2 -0
- package/dist/commands/__tests__/quality.test.d.ts.map +1 -0
- package/dist/commands/__tests__/quality.test.js +156 -0
- package/dist/commands/__tests__/quality.test.js.map +1 -0
- package/dist/commands/__tests__/rework.test.d.ts +2 -0
- package/dist/commands/__tests__/rework.test.d.ts.map +1 -0
- package/dist/commands/__tests__/rework.test.js +149 -0
- package/dist/commands/__tests__/rework.test.js.map +1 -0
- package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts +15 -0
- package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts.map +1 -0
- package/dist/commands/__tests__/setup-detect-surfaces.test.js +149 -0
- package/dist/commands/__tests__/setup-detect-surfaces.test.js.map +1 -0
- package/dist/commands/__tests__/setup-state.test.d.ts +2 -0
- package/dist/commands/__tests__/setup-state.test.d.ts.map +1 -0
- package/dist/commands/__tests__/setup-state.test.js +194 -0
- package/dist/commands/__tests__/setup-state.test.js.map +1 -0
- package/dist/commands/accept-policy.d.ts +10 -0
- package/dist/commands/accept-policy.d.ts.map +1 -0
- package/dist/commands/accept-policy.js +107 -0
- package/dist/commands/accept-policy.js.map +1 -0
- package/dist/commands/accept.d.ts.map +1 -1
- package/dist/commands/accept.js +5 -5
- package/dist/commands/accept.js.map +1 -1
- package/dist/commands/admin/cockpit.d.ts +91 -0
- package/dist/commands/admin/cockpit.d.ts.map +1 -0
- package/dist/commands/admin/cockpit.js +617 -0
- package/dist/commands/admin/cockpit.js.map +1 -0
- package/dist/commands/admin/index.d.ts +54 -1
- package/dist/commands/admin/index.d.ts.map +1 -1
- package/dist/commands/admin/index.js +286 -16
- package/dist/commands/admin/index.js.map +1 -1
- package/dist/commands/admin/index.test.d.ts +2 -0
- package/dist/commands/admin/index.test.d.ts.map +1 -0
- package/dist/commands/admin/index.test.js +68 -0
- package/dist/commands/admin/index.test.js.map +1 -0
- package/dist/commands/admin/inspect.d.ts +21 -3
- package/dist/commands/admin/inspect.d.ts.map +1 -1
- package/dist/commands/admin/inspect.js +69 -20
- package/dist/commands/admin/inspect.js.map +1 -1
- package/dist/commands/admin/inspect.test.d.ts +2 -0
- package/dist/commands/admin/inspect.test.d.ts.map +1 -1
- package/dist/commands/admin/inspect.test.js +63 -13
- package/dist/commands/admin/inspect.test.js.map +1 -1
- package/dist/commands/admin/manage.d.ts +8 -0
- package/dist/commands/admin/manage.d.ts.map +1 -0
- package/dist/commands/admin/manage.js +260 -0
- package/dist/commands/admin/manage.js.map +1 -0
- package/dist/commands/admin/manage.test.d.ts +16 -0
- package/dist/commands/admin/manage.test.d.ts.map +1 -0
- package/dist/commands/admin/manage.test.js +159 -0
- package/dist/commands/admin/manage.test.js.map +1 -0
- package/dist/commands/admin/probe.d.ts +48 -0
- package/dist/commands/admin/probe.d.ts.map +1 -0
- package/dist/commands/admin/probe.js +191 -0
- package/dist/commands/admin/probe.js.map +1 -0
- package/dist/commands/admin/probe.test.d.ts +2 -0
- package/dist/commands/admin/probe.test.d.ts.map +1 -0
- package/dist/commands/admin/probe.test.js +146 -0
- package/dist/commands/admin/probe.test.js.map +1 -0
- package/dist/commands/admin/run.d.ts +43 -0
- package/dist/commands/admin/run.d.ts.map +1 -0
- package/dist/commands/admin/run.js +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 +46 -3
- package/dist/commands/admin/seed.d.ts.map +1 -1
- package/dist/commands/admin/seed.js +491 -74
- package/dist/commands/admin/seed.js.map +1 -1
- package/dist/commands/admin/seed.test.d.ts +5 -0
- package/dist/commands/admin/seed.test.d.ts.map +1 -1
- package/dist/commands/admin/seed.test.js +67 -5
- package/dist/commands/admin/seed.test.js.map +1 -1
- package/dist/commands/admin/seedRegistryEntries.generated.d.ts +14 -0
- package/dist/commands/admin/seedRegistryEntries.generated.d.ts.map +1 -0
- package/dist/commands/admin/seedRegistryEntries.generated.js +153 -0
- package/dist/commands/admin/seedRegistryEntries.generated.js.map +1 -0
- package/dist/commands/admin/seedRegistryEntries.test.d.ts +13 -0
- package/dist/commands/admin/seedRegistryEntries.test.d.ts.map +1 -0
- package/dist/commands/admin/seedRegistryEntries.test.js +91 -0
- package/dist/commands/admin/seedRegistryEntries.test.js.map +1 -0
- package/dist/commands/audit.d.ts.map +1 -1
- package/dist/commands/audit.js +42 -7
- package/dist/commands/audit.js.map +1 -1
- package/dist/commands/authority-domains.d.ts +157 -0
- package/dist/commands/authority-domains.d.ts.map +1 -0
- package/dist/commands/authority-domains.js +387 -0
- package/dist/commands/authority-domains.js.map +1 -0
- package/dist/commands/brief.d.ts.map +1 -1
- package/dist/commands/brief.js +9 -5
- package/dist/commands/brief.js.map +1 -1
- package/dist/commands/capture.d.ts +12 -0
- package/dist/commands/capture.d.ts.map +1 -1
- package/dist/commands/capture.js +266 -69
- package/dist/commands/capture.js.map +1 -1
- package/dist/commands/chain-walk.d.ts.map +1 -1
- package/dist/commands/chain-walk.js +2 -2
- package/dist/commands/chain-walk.js.map +1 -1
- package/dist/commands/changes.d.ts.map +1 -1
- package/dist/commands/changes.js +2 -2
- package/dist/commands/changes.js.map +1 -1
- package/dist/commands/codex-prep.d.ts +12 -1
- package/dist/commands/codex-prep.d.ts.map +1 -1
- package/dist/commands/codex-prep.js +19 -85
- package/dist/commands/codex-prep.js.map +1 -1
- package/dist/commands/collections.d.ts.map +1 -1
- package/dist/commands/collections.js +5 -5
- package/dist/commands/collections.js.map +1 -1
- package/dist/commands/conflicts.d.ts +40 -0
- package/dist/commands/conflicts.d.ts.map +1 -0
- package/dist/commands/conflicts.js +267 -0
- package/dist/commands/conflicts.js.map +1 -0
- package/dist/commands/conflicts.test.d.ts +2 -0
- package/dist/commands/conflicts.test.d.ts.map +1 -0
- package/dist/commands/conflicts.test.js +219 -0
- package/dist/commands/conflicts.test.js.map +1 -0
- package/dist/commands/connect-config.test.d.ts +2 -0
- package/dist/commands/connect-config.test.d.ts.map +1 -0
- package/dist/commands/connect-config.test.js +44 -0
- package/dist/commands/connect-config.test.js.map +1 -0
- package/dist/commands/connect-context.d.ts +45 -0
- package/dist/commands/connect-context.d.ts.map +1 -0
- package/dist/commands/connect-context.js +83 -0
- package/dist/commands/connect-context.js.map +1 -0
- package/dist/commands/connect-context.test.d.ts +2 -0
- package/dist/commands/connect-context.test.d.ts.map +1 -0
- package/dist/commands/connect-context.test.js +158 -0
- package/dist/commands/connect-context.test.js.map +1 -0
- package/dist/commands/connect-handoff.d.ts +51 -0
- package/dist/commands/connect-handoff.d.ts.map +1 -0
- package/dist/commands/connect-handoff.js +70 -0
- package/dist/commands/connect-handoff.js.map +1 -0
- package/dist/commands/connect-integration.test.js +58 -35
- package/dist/commands/connect-integration.test.js.map +1 -1
- package/dist/commands/connect-legacy-migration.test.d.ts +2 -0
- package/dist/commands/connect-legacy-migration.test.d.ts.map +1 -0
- package/dist/commands/connect-legacy-migration.test.js +109 -0
- package/dist/commands/connect-legacy-migration.test.js.map +1 -0
- package/dist/commands/connect-screens.d.ts +33 -0
- package/dist/commands/connect-screens.d.ts.map +1 -0
- package/dist/commands/connect-screens.js +124 -0
- package/dist/commands/connect-screens.js.map +1 -0
- package/dist/commands/connect.d.ts +27 -6
- package/dist/commands/connect.d.ts.map +1 -1
- package/dist/commands/connect.js +256 -119
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/connect.test.js +348 -7
- package/dist/commands/connect.test.js.map +1 -1
- package/dist/commands/constellation.d.ts.map +1 -1
- package/dist/commands/constellation.js +2 -2
- package/dist/commands/constellation.js.map +1 -1
- package/dist/commands/context.d.ts.map +1 -1
- package/dist/commands/context.js +2 -2
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/cross-cut.d.ts.map +1 -1
- package/dist/commands/cross-cut.js +2 -2
- package/dist/commands/cross-cut.js.map +1 -1
- package/dist/commands/direction.d.ts +10 -0
- package/dist/commands/direction.d.ts.map +1 -0
- package/dist/commands/direction.js +79 -0
- package/dist/commands/direction.js.map +1 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +73 -7
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/doctor.test.js +151 -1
- package/dist/commands/doctor.test.js.map +1 -1
- package/dist/commands/entryArchive.d.ts +8 -0
- package/dist/commands/entryArchive.d.ts.map +1 -0
- package/dist/commands/entryArchive.js +37 -0
- package/dist/commands/entryArchive.js.map +1 -0
- package/dist/commands/feedback.d.ts +36 -0
- package/dist/commands/feedback.d.ts.map +1 -0
- package/dist/commands/feedback.js +193 -0
- package/dist/commands/feedback.js.map +1 -0
- package/dist/commands/feedback.test.d.ts +2 -0
- package/dist/commands/feedback.test.d.ts.map +1 -0
- package/dist/commands/feedback.test.js +125 -0
- package/dist/commands/feedback.test.js.map +1 -0
- package/dist/commands/fields.d.ts.map +1 -1
- package/dist/commands/fields.js +3 -3
- package/dist/commands/fields.js.map +1 -1
- package/dist/commands/files.d.ts +26 -0
- package/dist/commands/files.d.ts.map +1 -0
- package/dist/commands/files.js +160 -0
- package/dist/commands/files.js.map +1 -0
- package/dist/commands/files.test.d.ts +2 -0
- package/dist/commands/files.test.d.ts.map +1 -0
- package/dist/commands/files.test.js +278 -0
- package/dist/commands/files.test.js.map +1 -0
- package/dist/commands/get.js +3 -3
- package/dist/commands/get.js.map +1 -1
- package/dist/commands/handshake.d.ts +223 -2
- package/dist/commands/handshake.d.ts.map +1 -1
- package/dist/commands/handshake.js +2106 -62
- package/dist/commands/handshake.js.map +1 -1
- package/dist/commands/ingest.d.ts.map +1 -1
- package/dist/commands/ingest.js +15 -6
- package/dist/commands/ingest.js.map +1 -1
- package/dist/commands/init.d.ts +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +1 -9
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +6 -5
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/method.d.ts +99 -0
- package/dist/commands/method.d.ts.map +1 -0
- package/dist/commands/method.js +804 -0
- package/dist/commands/method.js.map +1 -0
- package/dist/commands/migrate-setup.d.ts +18 -0
- package/dist/commands/migrate-setup.d.ts.map +1 -0
- package/dist/commands/migrate-setup.js +148 -0
- package/dist/commands/migrate-setup.js.map +1 -0
- package/dist/commands/organisation.d.ts +41 -0
- package/dist/commands/organisation.d.ts.map +1 -0
- package/dist/commands/organisation.js +353 -0
- package/dist/commands/organisation.js.map +1 -0
- package/dist/commands/organisation.test.d.ts +2 -0
- package/dist/commands/organisation.test.d.ts.map +1 -0
- package/dist/commands/organisation.test.js +233 -0
- package/dist/commands/organisation.test.js.map +1 -0
- package/dist/commands/organisationHierarchy.d.ts +8 -0
- package/dist/commands/organisationHierarchy.d.ts.map +1 -0
- package/dist/commands/organisationHierarchy.js +67 -0
- package/dist/commands/organisationHierarchy.js.map +1 -0
- package/dist/commands/organisationHierarchy.test.d.ts +2 -0
- package/dist/commands/organisationHierarchy.test.d.ts.map +1 -0
- package/dist/commands/organisationHierarchy.test.js +55 -0
- package/dist/commands/organisationHierarchy.test.js.map +1 -0
- package/dist/commands/organisationWrite.d.ts +18 -0
- package/dist/commands/organisationWrite.d.ts.map +1 -0
- package/dist/commands/organisationWrite.js +50 -0
- package/dist/commands/organisationWrite.js.map +1 -0
- package/dist/commands/orient.d.ts +131 -2
- package/dist/commands/orient.d.ts.map +1 -1
- package/dist/commands/orient.js +223 -7
- package/dist/commands/orient.js.map +1 -1
- package/dist/commands/profile.d.ts +11 -1
- package/dist/commands/profile.d.ts.map +1 -1
- package/dist/commands/profile.js +114 -26
- package/dist/commands/profile.js.map +1 -1
- package/dist/commands/promote.d.ts +12 -1
- package/dist/commands/promote.d.ts.map +1 -1
- package/dist/commands/promote.js +243 -57
- package/dist/commands/promote.js.map +1 -1
- package/dist/commands/proof-run.d.ts +51 -0
- package/dist/commands/proof-run.d.ts.map +1 -0
- package/dist/commands/proof-run.js +209 -0
- package/dist/commands/proof-run.js.map +1 -0
- package/dist/commands/proposals.d.ts.map +1 -1
- package/dist/commands/proposals.js +2 -2
- package/dist/commands/proposals.js.map +1 -1
- package/dist/commands/quality.d.ts +16 -0
- package/dist/commands/quality.d.ts.map +1 -0
- package/dist/commands/quality.js +29 -0
- package/dist/commands/quality.js.map +1 -0
- package/dist/commands/questions.d.ts +33 -0
- package/dist/commands/questions.d.ts.map +1 -0
- package/dist/commands/questions.js +300 -0
- package/dist/commands/questions.js.map +1 -0
- package/dist/commands/questions.test.d.ts +2 -0
- package/dist/commands/questions.test.d.ts.map +1 -0
- package/dist/commands/questions.test.js +175 -0
- package/dist/commands/questions.test.js.map +1 -0
- package/dist/commands/reject.d.ts.map +1 -1
- package/dist/commands/reject.js +5 -4
- package/dist/commands/reject.js.map +1 -1
- package/dist/commands/relate.d.ts.map +1 -1
- package/dist/commands/relate.js +31 -6
- package/dist/commands/relate.js.map +1 -1
- package/dist/commands/restore.d.ts +2 -0
- package/dist/commands/restore.d.ts.map +1 -0
- package/dist/commands/restore.js +83 -0
- package/dist/commands/restore.js.map +1 -0
- package/dist/commands/rework.d.ts +24 -0
- package/dist/commands/rework.d.ts.map +1 -0
- package/dist/commands/rework.js +97 -0
- package/dist/commands/rework.js.map +1 -0
- package/dist/commands/scoreboard.d.ts +28 -0
- package/dist/commands/scoreboard.d.ts.map +1 -0
- package/dist/commands/scoreboard.js +40 -0
- package/dist/commands/scoreboard.js.map +1 -0
- package/dist/commands/search.d.ts.map +1 -1
- package/dist/commands/search.js +2 -2
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/session.d.ts +59 -7
- package/dist/commands/session.d.ts.map +1 -1
- package/dist/commands/session.js +483 -46
- package/dist/commands/session.js.map +1 -1
- package/dist/commands/setup-audit.d.ts +59 -0
- package/dist/commands/setup-audit.d.ts.map +1 -0
- package/dist/commands/setup-audit.js +250 -0
- package/dist/commands/setup-audit.js.map +1 -0
- package/dist/commands/setup-detect-surfaces.d.ts +38 -0
- package/dist/commands/setup-detect-surfaces.d.ts.map +1 -0
- package/dist/commands/setup-detect-surfaces.js +76 -0
- package/dist/commands/setup-detect-surfaces.js.map +1 -0
- package/dist/commands/setup-ingest.d.ts +17 -0
- package/dist/commands/setup-ingest.d.ts.map +1 -0
- package/dist/commands/setup-ingest.js +174 -0
- package/dist/commands/setup-ingest.js.map +1 -0
- package/dist/commands/setup-resolver.d.ts +58 -0
- package/dist/commands/setup-resolver.d.ts.map +1 -0
- package/dist/commands/setup-resolver.js +150 -0
- package/dist/commands/setup-resolver.js.map +1 -0
- package/dist/commands/setup-state.d.ts +42 -0
- package/dist/commands/setup-state.d.ts.map +1 -0
- package/dist/commands/setup-state.js +93 -0
- package/dist/commands/setup-state.js.map +1 -0
- package/dist/commands/setup.d.ts +17 -9
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +53 -152
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/shape.d.ts +16 -0
- package/dist/commands/shape.d.ts.map +1 -0
- package/dist/commands/shape.js +149 -0
- package/dist/commands/shape.js.map +1 -0
- package/dist/commands/shape.test.d.ts +2 -0
- package/dist/commands/shape.test.d.ts.map +1 -0
- package/dist/commands/shape.test.js +148 -0
- package/dist/commands/shape.test.js.map +1 -0
- package/dist/commands/update.d.ts +20 -0
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +91 -34
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/upgrade.d.ts +5 -0
- package/dist/commands/upgrade.d.ts.map +1 -0
- package/dist/commands/upgrade.js +110 -0
- package/dist/commands/upgrade.js.map +1 -0
- package/dist/commands/usage.d.ts +40 -0
- package/dist/commands/usage.d.ts.map +1 -0
- package/dist/commands/usage.js +214 -0
- package/dist/commands/usage.js.map +1 -0
- package/dist/commands/verify.d.ts.map +1 -1
- package/dist/commands/verify.js +9 -3
- package/dist/commands/verify.js.map +1 -1
- package/dist/commands/welcome.d.ts +21 -0
- package/dist/commands/welcome.d.ts.map +1 -0
- package/dist/commands/welcome.js +50 -0
- package/dist/commands/welcome.js.map +1 -0
- package/dist/commands/whoami.d.ts +12 -0
- package/dist/commands/whoami.d.ts.map +1 -0
- package/dist/commands/whoami.js +70 -0
- package/dist/commands/whoami.js.map +1 -0
- package/dist/commands/whoami.test.d.ts +2 -0
- package/dist/commands/whoami.test.d.ts.map +1 -0
- package/dist/commands/whoami.test.js +50 -0
- package/dist/commands/whoami.test.js.map +1 -0
- package/dist/commands/workspace.d.ts +76 -2
- package/dist/commands/workspace.d.ts.map +1 -1
- package/dist/commands/workspace.js +30 -6
- package/dist/commands/workspace.js.map +1 -1
- package/dist/formatters/__tests__/orient-possibleConflict.test.d.ts +2 -0
- package/dist/formatters/__tests__/orient-possibleConflict.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/orient-possibleConflict.test.js +68 -0
- package/dist/formatters/__tests__/orient-possibleConflict.test.js.map +1 -0
- package/dist/formatters/__tests__/orient-provenance.test.d.ts +7 -0
- package/dist/formatters/__tests__/orient-provenance.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/orient-provenance.test.js +548 -0
- package/dist/formatters/__tests__/orient-provenance.test.js.map +1 -0
- package/dist/formatters/__tests__/session-list-show.test.d.ts +2 -0
- package/dist/formatters/__tests__/session-list-show.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/session-list-show.test.js +159 -0
- package/dist/formatters/__tests__/session-list-show.test.js.map +1 -0
- package/dist/formatters/__tests__/session.test.d.ts +2 -0
- package/dist/formatters/__tests__/session.test.d.ts.map +1 -0
- package/dist/formatters/__tests__/session.test.js +206 -0
- package/dist/formatters/__tests__/session.test.js.map +1 -0
- package/dist/formatters/audit.d.ts +6 -0
- package/dist/formatters/audit.d.ts.map +1 -1
- package/dist/formatters/audit.js +1 -1
- package/dist/formatters/audit.js.map +1 -1
- package/dist/formatters/brief.js +1 -1
- package/dist/formatters/brief.js.map +1 -1
- package/dist/formatters/capture.d.ts +8 -0
- package/dist/formatters/capture.d.ts.map +1 -1
- package/dist/formatters/capture.js +9 -0
- package/dist/formatters/capture.js.map +1 -1
- package/dist/formatters/coaching.d.ts +55 -0
- package/dist/formatters/coaching.d.ts.map +1 -0
- package/dist/formatters/coaching.js +46 -0
- package/dist/formatters/coaching.js.map +1 -0
- package/dist/formatters/conflicts.d.ts +69 -0
- package/dist/formatters/conflicts.d.ts.map +1 -0
- package/dist/formatters/conflicts.js +87 -0
- package/dist/formatters/conflicts.js.map +1 -0
- package/dist/formatters/conflicts.test.d.ts +2 -0
- package/dist/formatters/conflicts.test.d.ts.map +1 -0
- package/dist/formatters/conflicts.test.js +136 -0
- package/dist/formatters/conflicts.test.js.map +1 -0
- package/dist/formatters/context.d.ts +1 -1
- package/dist/formatters/context.d.ts.map +1 -1
- package/dist/formatters/context.js.map +1 -1
- package/dist/formatters/direction.d.ts +48 -0
- package/dist/formatters/direction.d.ts.map +1 -0
- package/dist/formatters/direction.js +75 -0
- package/dist/formatters/direction.js.map +1 -0
- package/dist/formatters/direction.test.d.ts +2 -0
- package/dist/formatters/direction.test.d.ts.map +1 -0
- package/dist/formatters/direction.test.js +70 -0
- package/dist/formatters/direction.test.js.map +1 -0
- package/dist/formatters/entry.d.ts +44 -0
- package/dist/formatters/entry.d.ts.map +1 -1
- package/dist/formatters/entry.js +70 -7
- package/dist/formatters/entry.js.map +1 -1
- package/dist/formatters/feedback.d.ts +56 -0
- package/dist/formatters/feedback.d.ts.map +1 -0
- package/dist/formatters/feedback.js +89 -0
- package/dist/formatters/feedback.js.map +1 -0
- package/dist/formatters/feedback.test.d.ts +2 -0
- package/dist/formatters/feedback.test.d.ts.map +1 -0
- package/dist/formatters/feedback.test.js +112 -0
- package/dist/formatters/feedback.test.js.map +1 -0
- package/dist/formatters/handshake.d.ts +39 -0
- package/dist/formatters/handshake.d.ts.map +1 -1
- package/dist/formatters/handshake.js +133 -3
- package/dist/formatters/handshake.js.map +1 -1
- package/dist/formatters/orient.coherencyCheckTag.test.d.ts +2 -0
- package/dist/formatters/orient.coherencyCheckTag.test.d.ts.map +1 -0
- package/dist/formatters/orient.coherencyCheckTag.test.js +22 -0
- package/dist/formatters/orient.coherencyCheckTag.test.js.map +1 -0
- package/dist/formatters/orient.d.ts +248 -8
- package/dist/formatters/orient.d.ts.map +1 -1
- package/dist/formatters/orient.js +277 -35
- package/dist/formatters/orient.js.map +1 -1
- package/dist/formatters/orient.rcrtMiss.test.d.ts +2 -0
- package/dist/formatters/orient.rcrtMiss.test.d.ts.map +1 -0
- package/dist/formatters/orient.rcrtMiss.test.js +146 -0
- package/dist/formatters/orient.rcrtMiss.test.js.map +1 -0
- package/dist/formatters/orient.rituals.test.d.ts +2 -0
- package/dist/formatters/orient.rituals.test.d.ts.map +1 -0
- package/dist/formatters/orient.rituals.test.js +70 -0
- package/dist/formatters/orient.rituals.test.js.map +1 -0
- package/dist/formatters/orient.shapeAdvisorySummary.test.d.ts +2 -0
- package/dist/formatters/orient.shapeAdvisorySummary.test.d.ts.map +1 -0
- package/dist/formatters/orient.shapeAdvisorySummary.test.js +62 -0
- package/dist/formatters/orient.shapeAdvisorySummary.test.js.map +1 -0
- package/dist/formatters/orientDegradation.d.ts +21 -0
- package/dist/formatters/orientDegradation.d.ts.map +1 -0
- package/dist/formatters/orientDegradation.js +33 -0
- package/dist/formatters/orientDegradation.js.map +1 -0
- package/dist/formatters/orientDirection.d.ts +77 -0
- package/dist/formatters/orientDirection.d.ts.map +1 -0
- package/dist/formatters/orientDirection.js +94 -0
- package/dist/formatters/orientDirection.js.map +1 -0
- package/dist/formatters/orientDirection.test.d.ts +2 -0
- package/dist/formatters/orientDirection.test.d.ts.map +1 -0
- package/dist/formatters/orientDirection.test.js +193 -0
- package/dist/formatters/orientDirection.test.js.map +1 -0
- package/dist/formatters/orientRetrievalMiss.d.ts +30 -0
- package/dist/formatters/orientRetrievalMiss.d.ts.map +1 -0
- package/dist/formatters/orientRetrievalMiss.js +24 -0
- package/dist/formatters/orientRetrievalMiss.js.map +1 -0
- package/dist/formatters/promote.d.ts +49 -0
- package/dist/formatters/promote.d.ts.map +1 -1
- package/dist/formatters/promote.js +40 -0
- package/dist/formatters/promote.js.map +1 -1
- package/dist/formatters/proposals.js +2 -2
- package/dist/formatters/proposals.js.map +1 -1
- package/dist/formatters/questions.d.ts +100 -0
- package/dist/formatters/questions.d.ts.map +1 -0
- package/dist/formatters/questions.js +146 -0
- package/dist/formatters/questions.js.map +1 -0
- package/dist/formatters/questions.test.d.ts +2 -0
- package/dist/formatters/questions.test.d.ts.map +1 -0
- package/dist/formatters/questions.test.js +184 -0
- package/dist/formatters/questions.test.js.map +1 -0
- package/dist/formatters/relate.d.ts +9 -0
- package/dist/formatters/relate.d.ts.map +1 -1
- package/dist/formatters/relate.js +5 -3
- package/dist/formatters/relate.js.map +1 -1
- package/dist/formatters/relate.test.d.ts +2 -0
- package/dist/formatters/relate.test.d.ts.map +1 -0
- package/dist/formatters/relate.test.js +62 -0
- package/dist/formatters/relate.test.js.map +1 -0
- package/dist/formatters/scoreboard.d.ts +11 -0
- package/dist/formatters/scoreboard.d.ts.map +1 -0
- package/dist/formatters/scoreboard.js +164 -0
- package/dist/formatters/scoreboard.js.map +1 -0
- package/dist/formatters/scoreboard.test.d.ts +2 -0
- package/dist/formatters/scoreboard.test.d.ts.map +1 -0
- package/dist/formatters/scoreboard.test.js +303 -0
- package/dist/formatters/scoreboard.test.js.map +1 -0
- package/dist/formatters/search.d.ts.map +1 -1
- package/dist/formatters/search.js +17 -1
- package/dist/formatters/search.js.map +1 -1
- package/dist/formatters/search.test.d.ts +2 -0
- package/dist/formatters/search.test.d.ts.map +1 -0
- package/dist/formatters/search.test.js +46 -0
- package/dist/formatters/search.test.js.map +1 -0
- package/dist/formatters/session-feedback.test.d.ts +2 -0
- package/dist/formatters/session-feedback.test.d.ts.map +1 -0
- package/dist/formatters/session-feedback.test.js +61 -0
- package/dist/formatters/session-feedback.test.js.map +1 -0
- package/dist/formatters/session.d.ts +123 -5
- package/dist/formatters/session.d.ts.map +1 -1
- package/dist/formatters/session.js +317 -12
- package/dist/formatters/session.js.map +1 -1
- package/dist/formatters/shape.d.ts +54 -0
- package/dist/formatters/shape.d.ts.map +1 -0
- package/dist/formatters/shape.js +97 -0
- package/dist/formatters/shape.js.map +1 -0
- package/dist/formatters/shape.test.d.ts +2 -0
- package/dist/formatters/shape.test.d.ts.map +1 -0
- package/dist/formatters/shape.test.js +80 -0
- package/dist/formatters/shape.test.js.map +1 -0
- package/dist/formatters/spineCheck.d.ts +64 -0
- package/dist/formatters/spineCheck.d.ts.map +1 -0
- package/dist/formatters/spineCheck.js +92 -0
- package/dist/formatters/spineCheck.js.map +1 -0
- package/dist/formatters/update.d.ts +3 -0
- package/dist/formatters/update.d.ts.map +1 -1
- package/dist/formatters/update.js +4 -0
- package/dist/formatters/update.js.map +1 -1
- package/dist/formatters/verify.d.ts +12 -4
- package/dist/formatters/verify.d.ts.map +1 -1
- package/dist/formatters/verify.js +20 -2
- package/dist/formatters/verify.js.map +1 -1
- package/dist/generated/healthGapKinds.generated.d.ts +12 -0
- package/dist/generated/healthGapKinds.generated.d.ts.map +1 -0
- package/dist/generated/healthGapKinds.generated.js +24 -0
- package/dist/generated/healthGapKinds.generated.js.map +1 -0
- package/dist/generated/routeLatencyBudget.generated.d.ts +55 -0
- package/dist/generated/routeLatencyBudget.generated.d.ts.map +1 -0
- package/dist/generated/routeLatencyBudget.generated.js +360 -0
- package/dist/generated/routeLatencyBudget.generated.js.map +1 -0
- package/dist/generated/sourceSurfaces.generated.d.ts +12 -0
- package/dist/generated/sourceSurfaces.generated.d.ts.map +1 -0
- package/dist/generated/sourceSurfaces.generated.js +11 -0
- package/dist/generated/sourceSurfaces.generated.js.map +1 -0
- package/dist/generators/adapters.d.ts +33 -0
- package/dist/generators/adapters.d.ts.map +1 -1
- package/dist/generators/adapters.js +68 -8
- package/dist/generators/adapters.js.map +1 -1
- package/dist/generators/archetypes.d.ts.map +1 -1
- package/dist/generators/archetypes.js +46 -9
- package/dist/generators/archetypes.js.map +1 -1
- package/dist/generators/archetypes.test.js +35 -0
- package/dist/generators/archetypes.test.js.map +1 -1
- package/dist/generators/boundary-manifest.d.ts +29 -0
- package/dist/generators/boundary-manifest.d.ts.map +1 -0
- package/dist/generators/boundary-manifest.js +183 -0
- package/dist/generators/boundary-manifest.js.map +1 -0
- package/dist/generators/boundary-manifest.real-file.test.d.ts +2 -0
- package/dist/generators/boundary-manifest.real-file.test.d.ts.map +1 -0
- package/dist/generators/boundary-manifest.real-file.test.js +70 -0
- package/dist/generators/boundary-manifest.real-file.test.js.map +1 -0
- package/dist/generators/boundary-manifest.test.d.ts +2 -0
- package/dist/generators/boundary-manifest.test.d.ts.map +1 -0
- package/dist/generators/boundary-manifest.test.js +91 -0
- package/dist/generators/boundary-manifest.test.js.map +1 -0
- package/dist/generators/chain-classifier-kernel-client-drift.test.d.ts +2 -0
- package/dist/generators/chain-classifier-kernel-client-drift.test.d.ts.map +1 -0
- package/dist/generators/chain-classifier-kernel-client-drift.test.js +41 -0
- package/dist/generators/chain-classifier-kernel-client-drift.test.js.map +1 -0
- package/dist/generators/chain-classifier.d.ts +67 -14
- package/dist/generators/chain-classifier.d.ts.map +1 -1
- package/dist/generators/chain-classifier.js +46 -174
- package/dist/generators/chain-classifier.js.map +1 -1
- package/dist/generators/chain-rules.d.ts +3 -3
- package/dist/generators/chain-rules.d.ts.map +1 -1
- package/dist/generators/chain-rules.js +118 -6
- package/dist/generators/chain-rules.js.map +1 -1
- package/dist/generators/chain-rules.test.js +273 -4
- package/dist/generators/chain-rules.test.js.map +1 -1
- package/dist/generators/context-md.js +7 -7
- package/dist/generators/context-md.js.map +1 -1
- package/dist/generators/manifest.d.ts +115 -0
- package/dist/generators/manifest.d.ts.map +1 -0
- package/dist/generators/manifest.js +277 -0
- package/dist/generators/manifest.js.map +1 -0
- package/dist/generators/portable-knowledge.d.ts +24 -2
- package/dist/generators/portable-knowledge.d.ts.map +1 -1
- package/dist/generators/portable-knowledge.js +97 -2
- package/dist/generators/portable-knowledge.js.map +1 -1
- package/dist/generators/portable-knowledge.test.js +43 -0
- package/dist/generators/portable-knowledge.test.js.map +1 -1
- package/dist/generators/region-projections.d.ts +18 -0
- package/dist/generators/region-projections.d.ts.map +1 -0
- package/dist/generators/region-projections.js +49 -0
- package/dist/generators/region-projections.js.map +1 -0
- package/dist/generators/region-projections.test.d.ts +2 -0
- package/dist/generators/region-projections.test.d.ts.map +1 -0
- package/dist/generators/region-projections.test.js +63 -0
- package/dist/generators/region-projections.test.js.map +1 -0
- package/dist/generators/region.d.ts +24 -0
- package/dist/generators/region.d.ts.map +1 -0
- package/dist/generators/region.js +87 -0
- package/dist/generators/region.js.map +1 -0
- package/dist/generators/region.test.d.ts +2 -0
- package/dist/generators/region.test.d.ts.map +1 -0
- package/dist/generators/region.test.js +126 -0
- package/dist/generators/region.test.js.map +1 -0
- package/dist/generators/surface-profiles.d.ts +1 -2
- package/dist/generators/surface-profiles.d.ts.map +1 -1
- package/dist/generators/surface-profiles.js.map +1 -1
- package/dist/index.d.ts +0 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +504 -148
- package/dist/index.js.map +1 -1
- package/dist/lib/__tests__/parseFields.test.d.ts +2 -0
- package/dist/lib/__tests__/parseFields.test.d.ts.map +1 -0
- package/dist/lib/__tests__/parseFields.test.js +40 -0
- package/dist/lib/__tests__/parseFields.test.js.map +1 -0
- package/dist/lib/activation.d.ts.map +1 -1
- package/dist/lib/activation.js +8 -4
- package/dist/lib/activation.js.map +1 -1
- package/dist/lib/activation.test.js +6 -6
- package/dist/lib/activation.test.js.map +1 -1
- package/dist/lib/adminConfig.d.ts +43 -0
- package/dist/lib/adminConfig.d.ts.map +1 -0
- package/dist/lib/adminConfig.js +132 -0
- package/dist/lib/adminConfig.js.map +1 -0
- package/dist/lib/canonicalRefs.d.ts +160 -0
- package/dist/lib/canonicalRefs.d.ts.map +1 -0
- package/dist/lib/canonicalRefs.js +169 -0
- package/dist/lib/canonicalRefs.js.map +1 -0
- package/dist/lib/client.d.ts +39 -15
- package/dist/lib/client.d.ts.map +1 -1
- package/dist/lib/client.js +195 -48
- package/dist/lib/client.js.map +1 -1
- package/dist/lib/collectionRegistry.d.ts +52 -0
- package/dist/lib/collectionRegistry.d.ts.map +1 -0
- package/dist/lib/collectionRegistry.js +118 -0
- package/dist/lib/collectionRegistry.js.map +1 -0
- package/dist/lib/commanderOptions.d.ts +8 -0
- package/dist/lib/commanderOptions.d.ts.map +1 -0
- package/dist/lib/commanderOptions.js +10 -0
- package/dist/lib/commanderOptions.js.map +1 -0
- package/dist/lib/compose-wrapup-view.d.ts +48 -0
- package/dist/lib/compose-wrapup-view.d.ts.map +1 -0
- package/dist/lib/compose-wrapup-view.js +37 -0
- package/dist/lib/compose-wrapup-view.js.map +1 -0
- package/dist/lib/config.d.ts +129 -9
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +329 -53
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/connectKeyLabel.d.ts +9 -0
- package/dist/lib/connectKeyLabel.d.ts.map +1 -0
- package/dist/lib/connectKeyLabel.js +12 -0
- package/dist/lib/connectKeyLabel.js.map +1 -0
- package/dist/lib/constants.d.ts +5 -1
- package/dist/lib/constants.d.ts.map +1 -1
- package/dist/lib/constants.js +8 -1
- package/dist/lib/constants.js.map +1 -1
- package/dist/lib/conversation.d.ts +36 -0
- package/dist/lib/conversation.d.ts.map +1 -0
- package/dist/lib/conversation.js +66 -0
- package/dist/lib/conversation.js.map +1 -0
- package/dist/lib/createEntryResult.d.ts +34 -0
- package/dist/lib/createEntryResult.d.ts.map +1 -0
- package/dist/lib/createEntryResult.js +12 -0
- package/dist/lib/createEntryResult.js.map +1 -0
- package/dist/lib/errors.d.ts +67 -0
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +67 -0
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/frontmatter.d.ts +55 -0
- package/dist/lib/frontmatter.d.ts.map +1 -0
- package/dist/lib/frontmatter.js +92 -0
- package/dist/lib/frontmatter.js.map +1 -0
- package/dist/lib/frontmatter.test.d.ts +15 -0
- package/dist/lib/frontmatter.test.d.ts.map +1 -0
- package/dist/lib/frontmatter.test.js +98 -0
- package/dist/lib/frontmatter.test.js.map +1 -0
- package/dist/lib/gatewayTimeout.d.ts +88 -0
- package/dist/lib/gatewayTimeout.d.ts.map +1 -0
- package/dist/lib/gatewayTimeout.js +118 -0
- package/dist/lib/gatewayTimeout.js.map +1 -0
- package/dist/lib/gitEnvLeakKeysParity.test.d.ts +2 -0
- package/dist/lib/gitEnvLeakKeysParity.test.d.ts.map +1 -0
- package/dist/lib/gitEnvLeakKeysParity.test.js +73 -0
- package/dist/lib/gitEnvLeakKeysParity.test.js.map +1 -0
- package/dist/lib/glossary.js +1 -1
- package/dist/lib/glossary.js.map +1 -1
- package/dist/lib/hook-intents.d.ts +51 -0
- package/dist/lib/hook-intents.d.ts.map +1 -0
- package/dist/lib/hook-intents.js +85 -0
- package/dist/lib/hook-intents.js.map +1 -0
- package/dist/lib/inferSourceDate.d.ts +12 -0
- package/dist/lib/inferSourceDate.d.ts.map +1 -0
- package/dist/lib/inferSourceDate.js +44 -0
- package/dist/lib/inferSourceDate.js.map +1 -0
- package/dist/lib/kernelEnvelope.d.ts +31 -0
- package/dist/lib/kernelEnvelope.d.ts.map +1 -0
- package/dist/lib/kernelEnvelope.js +52 -0
- package/dist/lib/kernelEnvelope.js.map +1 -0
- package/dist/lib/method-registry.d.ts +37 -0
- package/dist/lib/method-registry.d.ts.map +1 -0
- package/dist/lib/method-registry.js +41 -0
- package/dist/lib/method-registry.js.map +1 -0
- package/dist/lib/normalizeMaterializedFilename.d.ts +28 -0
- package/dist/lib/normalizeMaterializedFilename.d.ts.map +1 -0
- package/dist/lib/normalizeMaterializedFilename.js +56 -0
- package/dist/lib/normalizeMaterializedFilename.js.map +1 -0
- package/dist/lib/normalizeMaterializedFilename.test.d.ts +16 -0
- package/dist/lib/normalizeMaterializedFilename.test.d.ts.map +1 -0
- package/dist/lib/normalizeMaterializedFilename.test.js +90 -0
- package/dist/lib/normalizeMaterializedFilename.test.js.map +1 -0
- package/dist/lib/notice-marker.d.ts +3 -0
- package/dist/lib/notice-marker.d.ts.map +1 -0
- package/dist/lib/notice-marker.js +53 -0
- package/dist/lib/notice-marker.js.map +1 -0
- package/dist/lib/onboarding-path-b.d.ts.map +1 -1
- package/dist/lib/onboarding-path-b.js +42 -13
- package/dist/lib/onboarding-path-b.js.map +1 -1
- package/dist/lib/onboarding-shared.d.ts +4 -4
- package/dist/lib/onboarding-shared.d.ts.map +1 -1
- package/dist/lib/onboarding-shared.js +7 -22
- package/dist/lib/onboarding-shared.js.map +1 -1
- package/dist/lib/onboarding.d.ts.map +1 -1
- package/dist/lib/onboarding.js +12 -4
- package/dist/lib/onboarding.js.map +1 -1
- package/dist/lib/parseFields.d.ts +19 -0
- package/dist/lib/parseFields.d.ts.map +1 -0
- package/dist/lib/parseFields.js +49 -0
- package/dist/lib/parseFields.js.map +1 -0
- package/dist/lib/previewBanner.d.ts +9 -0
- package/dist/lib/previewBanner.d.ts.map +1 -0
- package/dist/lib/previewBanner.js +37 -0
- package/dist/lib/previewBanner.js.map +1 -0
- package/dist/lib/productbrain-files.d.ts +94 -0
- package/dist/lib/productbrain-files.d.ts.map +1 -0
- package/dist/lib/productbrain-files.js +214 -0
- package/dist/lib/productbrain-files.js.map +1 -0
- package/dist/lib/productbrain-files.test.d.ts +2 -0
- package/dist/lib/productbrain-files.test.d.ts.map +1 -0
- package/dist/lib/productbrain-files.test.js +293 -0
- package/dist/lib/productbrain-files.test.js.map +1 -0
- package/dist/lib/profiles.d.ts +53 -5
- package/dist/lib/profiles.d.ts.map +1 -1
- package/dist/lib/profiles.js +82 -23
- package/dist/lib/profiles.js.map +1 -1
- package/dist/lib/rate-limit.d.ts +37 -0
- package/dist/lib/rate-limit.d.ts.map +1 -0
- package/dist/lib/rate-limit.js +83 -0
- package/dist/lib/rate-limit.js.map +1 -0
- package/dist/lib/runner.d.ts +8 -0
- package/dist/lib/runner.d.ts.map +1 -1
- package/dist/lib/runner.js +23 -0
- package/dist/lib/runner.js.map +1 -1
- package/dist/lib/session.d.ts +85 -4
- package/dist/lib/session.d.ts.map +1 -1
- package/dist/lib/session.js +276 -13
- package/dist/lib/session.js.map +1 -1
- package/dist/lib/sessionNotices.d.ts +57 -0
- package/dist/lib/sessionNotices.d.ts.map +1 -0
- package/dist/lib/sessionNotices.js +128 -0
- package/dist/lib/sessionNotices.js.map +1 -0
- package/dist/lib/sessionNotices.test.d.ts +2 -0
- package/dist/lib/sessionNotices.test.d.ts.map +1 -0
- package/dist/lib/sessionNotices.test.js +48 -0
- package/dist/lib/sessionNotices.test.js.map +1 -0
- package/dist/lib/spinner.js +2 -2
- package/dist/lib/spinner.js.map +1 -1
- package/dist/lib/startup-resolution-signals.d.ts +34 -0
- package/dist/lib/startup-resolution-signals.d.ts.map +1 -0
- package/dist/lib/startup-resolution-signals.js +116 -0
- package/dist/lib/startup-resolution-signals.js.map +1 -0
- package/dist/lib/startup-resolution-signals.test.d.ts +2 -0
- package/dist/lib/startup-resolution-signals.test.d.ts.map +1 -0
- package/dist/lib/startup-resolution-signals.test.js +113 -0
- package/dist/lib/startup-resolution-signals.test.js.map +1 -0
- package/dist/lib/startup-signals.d.ts +12 -0
- package/dist/lib/startup-signals.d.ts.map +1 -0
- package/dist/lib/startup-signals.js +172 -0
- package/dist/lib/startup-signals.js.map +1 -0
- package/dist/lib/startup-signals.test.d.ts +2 -0
- package/dist/lib/startup-signals.test.d.ts.map +1 -0
- package/dist/lib/startup-signals.test.js +165 -0
- package/dist/lib/startup-signals.test.js.map +1 -0
- package/dist/lib/state.d.ts +51 -0
- package/dist/lib/state.d.ts.map +1 -0
- package/dist/lib/state.js +90 -0
- package/dist/lib/state.js.map +1 -0
- package/dist/lib/strip.d.ts +8 -0
- package/dist/lib/strip.d.ts.map +1 -1
- package/dist/lib/strip.js +23 -1
- package/dist/lib/strip.js.map +1 -1
- package/dist/lib/style.d.ts +3 -1
- package/dist/lib/style.d.ts.map +1 -1
- package/dist/lib/style.js +9 -2
- package/dist/lib/style.js.map +1 -1
- package/dist/lib/tokenConstants.d.ts +19 -0
- package/dist/lib/tokenConstants.d.ts.map +1 -0
- package/dist/lib/tokenConstants.js +19 -0
- package/dist/lib/tokenConstants.js.map +1 -0
- package/dist/lib/update-check.d.ts +56 -0
- package/dist/lib/update-check.d.ts.map +1 -0
- package/dist/lib/update-check.js +296 -0
- package/dist/lib/update-check.js.map +1 -0
- package/dist/lib/upgrade-runner.d.ts +22 -0
- package/dist/lib/upgrade-runner.d.ts.map +1 -0
- package/dist/lib/upgrade-runner.js +110 -0
- package/dist/lib/upgrade-runner.js.map +1 -0
- package/dist/lib/workspace-probe.d.ts +3 -0
- package/dist/lib/workspace-probe.d.ts.map +1 -1
- package/dist/lib/workspace-probe.js +8 -14
- package/dist/lib/workspace-probe.js.map +1 -1
- package/dist/lib/workspaceNotice.d.ts +59 -0
- package/dist/lib/workspaceNotice.d.ts.map +1 -0
- package/dist/lib/workspaceNotice.js +77 -0
- package/dist/lib/workspaceNotice.js.map +1 -0
- package/dist/lib/workspaceVocabCache.d.ts +60 -0
- package/dist/lib/workspaceVocabCache.d.ts.map +1 -0
- package/dist/lib/workspaceVocabCache.js +98 -0
- package/dist/lib/workspaceVocabCache.js.map +1 -0
- package/dist/registerEntryCommands.d.ts +16 -0
- package/dist/registerEntryCommands.d.ts.map +1 -0
- package/dist/registerEntryCommands.js +62 -0
- package/dist/registerEntryCommands.js.map +1 -0
- package/dist/registerProposalCommands.d.ts +13 -0
- package/dist/registerProposalCommands.d.ts.map +1 -0
- package/dist/registerProposalCommands.js +76 -0
- package/dist/registerProposalCommands.js.map +1 -0
- package/dist/scoreboard/diagnose.d.ts +226 -0
- package/dist/scoreboard/diagnose.d.ts.map +1 -0
- package/dist/scoreboard/diagnose.js +344 -0
- package/dist/scoreboard/diagnose.js.map +1 -0
- package/dist/scoreboard/diagnose.test.d.ts +15 -0
- package/dist/scoreboard/diagnose.test.d.ts.map +1 -0
- package/dist/scoreboard/diagnose.test.js +355 -0
- package/dist/scoreboard/diagnose.test.js.map +1 -0
- package/dist/scoreboard/floors.d.ts +47 -0
- package/dist/scoreboard/floors.d.ts.map +1 -0
- package/dist/scoreboard/floors.js +33 -0
- package/dist/scoreboard/floors.js.map +1 -0
- package/dist/scoreboard/localDrift.d.ts +23 -0
- package/dist/scoreboard/localDrift.d.ts.map +1 -0
- package/dist/scoreboard/localDrift.js +111 -0
- package/dist/scoreboard/localDrift.js.map +1 -0
- package/dist/scoreboard/localDrift.test.d.ts +9 -0
- package/dist/scoreboard/localDrift.test.d.ts.map +1 -0
- package/dist/scoreboard/localDrift.test.js +82 -0
- package/dist/scoreboard/localDrift.test.js.map +1 -0
- package/dist/setup/__tests__/coach-traces.test.d.ts +2 -0
- package/dist/setup/__tests__/coach-traces.test.d.ts.map +1 -0
- package/dist/setup/__tests__/coach-traces.test.js +189 -0
- package/dist/setup/__tests__/coach-traces.test.js.map +1 -0
- package/dist/setup/__tests__/setup-commands.test.d.ts +2 -0
- package/dist/setup/__tests__/setup-commands.test.d.ts.map +1 -0
- package/dist/setup/__tests__/setup-commands.test.js +177 -0
- package/dist/setup/__tests__/setup-commands.test.js.map +1 -0
- package/dist/setup/__tests__/state-machine.test.d.ts +2 -0
- package/dist/setup/__tests__/state-machine.test.d.ts.map +1 -0
- package/dist/setup/__tests__/state-machine.test.js +341 -0
- package/dist/setup/__tests__/state-machine.test.js.map +1 -0
- package/dist/setup/detect-surfaces.d.ts +21 -0
- package/dist/setup/detect-surfaces.d.ts.map +1 -0
- package/dist/setup/detect-surfaces.js +39 -0
- package/dist/setup/detect-surfaces.js.map +1 -0
- package/dist/setup/manifest-writer.d.ts +17 -0
- package/dist/setup/manifest-writer.d.ts.map +1 -0
- package/dist/setup/manifest-writer.js +153 -0
- package/dist/setup/manifest-writer.js.map +1 -0
- package/dist/setup/perimeter.d.ts +72 -0
- package/dist/setup/perimeter.d.ts.map +1 -0
- package/dist/setup/perimeter.js +128 -0
- package/dist/setup/perimeter.js.map +1 -0
- package/dist/setup/state-machine.d.ts +67 -0
- package/dist/setup/state-machine.d.ts.map +1 -0
- package/dist/setup/state-machine.js +124 -0
- package/dist/setup/state-machine.js.map +1 -0
- package/dist/surfaces/__tests__/adapter.test.d.ts +2 -0
- package/dist/surfaces/__tests__/adapter.test.d.ts.map +1 -0
- package/dist/surfaces/__tests__/adapter.test.js +90 -0
- package/dist/surfaces/__tests__/adapter.test.js.map +1 -0
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts +2 -0
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts.map +1 -0
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.js +132 -0
- package/dist/surfaces/__tests__/pb-setup-passthrough.test.js.map +1 -0
- package/dist/surfaces/__tests__/telemetry.test.d.ts +2 -0
- package/dist/surfaces/__tests__/telemetry.test.d.ts.map +1 -0
- package/dist/surfaces/__tests__/telemetry.test.js +55 -0
- package/dist/surfaces/__tests__/telemetry.test.js.map +1 -0
- package/dist/surfaces/adapter.d.ts +70 -0
- package/dist/surfaces/adapter.d.ts.map +1 -0
- package/dist/surfaces/adapter.js +2 -0
- package/dist/surfaces/adapter.js.map +1 -0
- package/dist/surfaces/adapters/claude.d.ts +3 -0
- package/dist/surfaces/adapters/claude.d.ts.map +1 -0
- package/dist/surfaces/adapters/claude.js +67 -0
- package/dist/surfaces/adapters/claude.js.map +1 -0
- package/dist/surfaces/adapters/codex.d.ts +3 -0
- package/dist/surfaces/adapters/codex.d.ts.map +1 -0
- package/dist/surfaces/adapters/codex.js +61 -0
- package/dist/surfaces/adapters/codex.js.map +1 -0
- package/dist/surfaces/adapters/copilot.d.ts +3 -0
- package/dist/surfaces/adapters/copilot.d.ts.map +1 -0
- package/dist/surfaces/adapters/copilot.js +59 -0
- package/dist/surfaces/adapters/copilot.js.map +1 -0
- package/dist/surfaces/adapters/cursor.d.ts +3 -0
- package/dist/surfaces/adapters/cursor.d.ts.map +1 -0
- package/dist/surfaces/adapters/cursor.js +78 -0
- package/dist/surfaces/adapters/cursor.js.map +1 -0
- package/dist/surfaces/registry.d.ts +76 -0
- package/dist/surfaces/registry.d.ts.map +1 -0
- package/dist/surfaces/registry.js +117 -0
- package/dist/surfaces/registry.js.map +1 -0
- package/dist/surfaces/telemetry.d.ts +17 -0
- package/dist/surfaces/telemetry.d.ts.map +1 -0
- package/dist/surfaces/telemetry.js +31 -0
- package/dist/surfaces/telemetry.js.map +1 -0
- package/package.json +11 -3
- package/templates/method-registry.json +16 -0
- package/dist/__tests__/setup.test.d.ts +0 -2
- package/dist/__tests__/setup.test.d.ts.map +0 -1
- package/dist/__tests__/setup.test.js +0 -141
- package/dist/__tests__/setup.test.js.map +0 -1
- package/dist/generators/__tests__/surface-profiles.test.d.ts +0 -2
- package/dist/generators/__tests__/surface-profiles.test.d.ts.map +0 -1
- package/dist/generators/__tests__/surface-profiles.test.js +0 -89
- package/dist/generators/__tests__/surface-profiles.test.js.map +0 -1
- package/dist/generators/chain-classifier.test.d.ts +0 -2
- package/dist/generators/chain-classifier.test.d.ts.map +0 -1
- package/dist/generators/chain-classifier.test.js +0 -257
- package/dist/generators/chain-classifier.test.js.map +0 -1
- package/dist/lib/onboarding-phases.d.ts +0 -9
- package/dist/lib/onboarding-phases.d.ts.map +0 -1
- package/dist/lib/onboarding-phases.js +0 -120
- package/dist/lib/onboarding-phases.js.map +0 -1
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* parseSetupFrontmatter regression tests.
|
|
3
|
+
*
|
|
4
|
+
* The load-bearing assertion: the array-item quote-stripping divergence between
|
|
5
|
+
* handshake (stripped) and migrate-setup / setup-ingest (did not strip) is
|
|
6
|
+
* closed. All three now route through this one function, so a trigger written
|
|
7
|
+
* as `- "triage: [anything]"` resolves to `triage: [anything]` on every path.
|
|
8
|
+
*
|
|
9
|
+
* We parse the REAL fixture `.productbrain/skills/triage.md` rather than a
|
|
10
|
+
* synthetic string so the test fails if that file's shape drifts.
|
|
11
|
+
*
|
|
12
|
+
* Chain: TEN-1459, WP-345.
|
|
13
|
+
*/
|
|
14
|
+
import { describe, expect, it } from 'vitest';
|
|
15
|
+
import { readFileSync } from 'node:fs';
|
|
16
|
+
import { fileURLToPath } from 'node:url';
|
|
17
|
+
import { dirname, join } from 'node:path';
|
|
18
|
+
import { parseSetupFrontmatter } from './frontmatter.js';
|
|
19
|
+
// repo root: packages/cli/src/lib → up four levels
|
|
20
|
+
const here = dirname(fileURLToPath(import.meta.url));
|
|
21
|
+
const repoRoot = join(here, '..', '..', '..', '..');
|
|
22
|
+
const triagePath = join(repoRoot, '.productbrain', 'skills', 'triage.md');
|
|
23
|
+
describe('parseSetupFrontmatter — array-quote divergence is closed', () => {
|
|
24
|
+
it('strips surrounding quotes from the triage.md `triggers` list item', () => {
|
|
25
|
+
const raw = readFileSync(triagePath, 'utf8');
|
|
26
|
+
const parsed = parseSetupFrontmatter(raw);
|
|
27
|
+
// The fixture contains a YAML list item: - "triage: [anything]"
|
|
28
|
+
// Quotes MUST be stripped (handshake's behavior, now canonical).
|
|
29
|
+
expect(parsed.triggers).toContain('triage: [anything]');
|
|
30
|
+
// And the un-stripped form must NOT survive.
|
|
31
|
+
expect(parsed.triggers).not.toContain('"triage: [anything]"');
|
|
32
|
+
});
|
|
33
|
+
it('extracts the scalar fields the callers depend on', () => {
|
|
34
|
+
const raw = readFileSync(triagePath, 'utf8');
|
|
35
|
+
const parsed = parseSetupFrontmatter(raw);
|
|
36
|
+
expect(parsed.name).toBe('triage');
|
|
37
|
+
// body is everything after the closing fence — contains the H1.
|
|
38
|
+
expect(parsed.body).toContain('# Triage');
|
|
39
|
+
// The multi-line `>-` block scalar is preserved as the literal token
|
|
40
|
+
// (the originals never expanded it; we keep that behavior).
|
|
41
|
+
expect(parsed.description).toBe('>-');
|
|
42
|
+
});
|
|
43
|
+
it('resolves the full triggers list to its canonical (quote-stripped) form', () => {
|
|
44
|
+
// The divergence is structurally gone because all three callers now invoke
|
|
45
|
+
// this one function. What that function MUST produce is asserted literally
|
|
46
|
+
// here: the quoted item `- "triage: [anything]"` strips to `triage:
|
|
47
|
+
// [anything]` while every bare item is untouched. Under the old
|
|
48
|
+
// migrate-setup / setup-ingest path the third item would have retained its
|
|
49
|
+
// quotes — so this exact array is what closes the bug, not a self-comparison.
|
|
50
|
+
const raw = readFileSync(triagePath, 'utf8');
|
|
51
|
+
const parsed = parseSetupFrontmatter(raw);
|
|
52
|
+
expect(parsed.triggers).toEqual([
|
|
53
|
+
'triage',
|
|
54
|
+
'triage this',
|
|
55
|
+
'triage: [anything]',
|
|
56
|
+
'what should I focus on?',
|
|
57
|
+
'what should I work on?',
|
|
58
|
+
'where do I start?',
|
|
59
|
+
'help me think about this',
|
|
60
|
+
'diagnose',
|
|
61
|
+
]);
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
describe('parseSetupFrontmatter — boundary cases', () => {
|
|
65
|
+
it('returns empty fields and the raw body when there is no `---` fence', () => {
|
|
66
|
+
const parsed = parseSetupFrontmatter('# Heading Only\n\nbody text');
|
|
67
|
+
expect(parsed.name).toBe('Heading Only');
|
|
68
|
+
expect(parsed.description).toBe('');
|
|
69
|
+
expect(parsed.triggers).toEqual([]);
|
|
70
|
+
expect(parsed.semanticRefs).toEqual([]);
|
|
71
|
+
expect(parsed.frontmatterId).toBeUndefined();
|
|
72
|
+
expect(parsed.assetKind).toBeUndefined();
|
|
73
|
+
expect(parsed.body).toBe('# Heading Only\n\nbody text');
|
|
74
|
+
});
|
|
75
|
+
it('handles an empty frontmatter block', () => {
|
|
76
|
+
const parsed = parseSetupFrontmatter('---\n\n---\n# Title\n');
|
|
77
|
+
expect(parsed.name).toBe('Title');
|
|
78
|
+
expect(parsed.triggers).toEqual([]);
|
|
79
|
+
});
|
|
80
|
+
it('extracts id and assetKind scalar fields when present', () => {
|
|
81
|
+
const raw = [
|
|
82
|
+
'---',
|
|
83
|
+
'id: SETUP-SKILL-EXAMPLE',
|
|
84
|
+
'name: example',
|
|
85
|
+
'assetKind: skill',
|
|
86
|
+
'triggers:',
|
|
87
|
+
" - 'quoted trigger'",
|
|
88
|
+
' - bare trigger',
|
|
89
|
+
'---',
|
|
90
|
+
'# Example',
|
|
91
|
+
].join('\n');
|
|
92
|
+
const parsed = parseSetupFrontmatter(raw);
|
|
93
|
+
expect(parsed.frontmatterId).toBe('SETUP-SKILL-EXAMPLE');
|
|
94
|
+
expect(parsed.assetKind).toBe('skill');
|
|
95
|
+
expect(parsed.triggers).toEqual(['quoted trigger', 'bare trigger']);
|
|
96
|
+
});
|
|
97
|
+
});
|
|
98
|
+
//# sourceMappingURL=frontmatter.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frontmatter.test.js","sourceRoot":"","sources":["../../src/lib/frontmatter.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gateway latency-budget aborts on the CLI — WP-575 (TEN-2917, TEN-1126).
|
|
3
|
+
*
|
|
4
|
+
* Before this, `./client.ts` set NO timeout on any gateway call: the same missing-declaration
|
|
5
|
+
* defect as MCP's blanket 10s constant, in the opposite direction (hang forever instead of
|
|
6
|
+
* give up too early). Both now derive their budget from the route contract; this module owns
|
|
7
|
+
* what to SAY when one is hit.
|
|
8
|
+
*
|
|
9
|
+
* Split out of client.ts at the 500-LOC ratchet's insistence (STD-2 / DEC-1504), and the
|
|
10
|
+
* ratchet read it correctly: "how do we explain a timeout, and is it safe to retry" is a
|
|
11
|
+
* decision with its own reason to change, separate from how a request is sent.
|
|
12
|
+
*
|
|
13
|
+
* The budget itself is DECLARED once at the route contract
|
|
14
|
+
* (packages/kernel-client/src/routeLatencyBudget.ts) and reaches this connector as a
|
|
15
|
+
* drift-checked generated copy. A runtime value import from @productbrain/kernel-client is
|
|
16
|
+
* impossible here — it is a devDependency and this package is PUBLISHED, so the specifier
|
|
17
|
+
* would be unresolvable in dist/ for every installed user.
|
|
18
|
+
*/
|
|
19
|
+
import { CLIError } from './errors.js';
|
|
20
|
+
/**
|
|
21
|
+
* Does this route mutate state?
|
|
22
|
+
*
|
|
23
|
+
* Read off the route contract's own Convex function type — `mutation` and `action` can write,
|
|
24
|
+
* `query` cannot — never inferred from the route's NAME. This decides whether the user is told
|
|
25
|
+
* a timed-out call may have landed, so an UNKNOWN route fails safe to `true`: telling someone
|
|
26
|
+
* "nothing was written" when something was is the worse error, and it is the one that invites
|
|
27
|
+
* a duplicating retry.
|
|
28
|
+
*/
|
|
29
|
+
export declare function routeMayMutate(fn: string): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Was this call a DRY RUN? (PR #533 review, Codex P2)
|
|
32
|
+
*
|
|
33
|
+
* `preview: true` is a gateway-wide contract meaning "run every validation, write nothing" —
|
|
34
|
+
* every registered route accepting it returns before its first write (the routes are
|
|
35
|
+
* enumerated with line citations in the mcp-server twin of this function,
|
|
36
|
+
* packages/mcp-server/src/gatewaySeam.ts).
|
|
37
|
+
*
|
|
38
|
+
* MIRRORED, NOT SHARED, and deliberately so: a runtime value import from
|
|
39
|
+
* @productbrain/kernel-client is impossible in both connectors (see this module's header for
|
|
40
|
+
* the CLI's reason, DEC-701 for mcp-server's), and this derivation needs no route data, so
|
|
41
|
+
* routing it through the generated-copy pipeline would buy codegen machinery for two
|
|
42
|
+
* three-line functions. What must not drift is the ANSWER — pinned by a parity test asserting
|
|
43
|
+
* both connectors classify the same (fn, args) identically.
|
|
44
|
+
*/
|
|
45
|
+
export declare function isDryRunCall(args: unknown): boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Could a timed-out call have LANDED A WRITE?
|
|
48
|
+
*
|
|
49
|
+
* The route's type answers "can this route write at all"; the call's own arguments answer
|
|
50
|
+
* "was this particular call asking it to". `pb capture` never sends `preview: true` today and
|
|
51
|
+
* says so loudly (../commands/capture.ts:445-450), so the CLI has no live defect here — but
|
|
52
|
+
* the two connectors holding DIFFERENT answers to the same question is the exact failure mode
|
|
53
|
+
* WP-575 exists to remove, so the derivation is kept identical on both sides rather than added
|
|
54
|
+
* only where a bug was observed.
|
|
55
|
+
*/
|
|
56
|
+
export declare function mayHaveLandedOnTimeout(fn: string, args: unknown): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Did this throw come from the budget signal firing?
|
|
59
|
+
*
|
|
60
|
+
* `AbortSignal.timeout` rejects with a DOMException named "TimeoutError", but an abort that
|
|
61
|
+
* lands while the response BODY is streaming can surface as "AbortError" instead, depending on
|
|
62
|
+
* where in undici the signal is observed. Matching only the first name left that case falling
|
|
63
|
+
* through `parseKernelEnvelope`'s lenient branch into an empty envelope — which a 200 status
|
|
64
|
+
* then reads as SUCCESS with `undefined` data, the exact false-completion this work package
|
|
65
|
+
* exists to remove, surviving in the one phase it was fixed for.
|
|
66
|
+
*
|
|
67
|
+
* Accepting both is also what the mcp-server twin already does
|
|
68
|
+
* (`throwClassifiedGatewayFailure`, packages/mcp-server/src/gatewaySeam.ts), and the two
|
|
69
|
+
* connectors disagreeing about what a budget abort IS is the same defect class as them
|
|
70
|
+
* disagreeing about how long a route may take.
|
|
71
|
+
*
|
|
72
|
+
* Safe to widen because of WHERE this is consulted: both call sites are guarded on a `route`
|
|
73
|
+
* being present (./client.ts and ./kernelEnvelope.ts), and `route` is supplied only for the
|
|
74
|
+
* gateway fetches that carry `AbortSignal.timeout(budgetMs)`. On those paths there is no other
|
|
75
|
+
* abort to confuse this with — the caller-driven `controller.abort()` surfaces
|
|
76
|
+
* (`/api/admin`, proof-run, connect) never pass a route and never reach here.
|
|
77
|
+
*/
|
|
78
|
+
export declare function isTimeoutAbort(err: unknown): boolean;
|
|
79
|
+
/**
|
|
80
|
+
* The error a budget abort deserves.
|
|
81
|
+
*
|
|
82
|
+
* A budget abort is NOT an unreachable host. The connection succeeded; we stopped waiting.
|
|
83
|
+
* Reporting "could not reach" would be a false statement about the server AND would imply
|
|
84
|
+
* nothing ran — but for a write route the server may well have finished. Say what is actually
|
|
85
|
+
* known, and name the one action that resolves it.
|
|
86
|
+
*/
|
|
87
|
+
export declare function gatewayTimeoutError(fn: string, budgetMs: number, args?: unknown): CLIError;
|
|
88
|
+
//# sourceMappingURL=gatewayTimeout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gatewayTimeout.d.ts","sourceRoot":"","sources":["../../src/lib/gatewayTimeout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,QAAQ,EAAa,MAAM,aAAa,CAAC;AAGlD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAGlD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAEnD;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAEzE;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAGpD;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,CAmB1F"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gateway latency-budget aborts on the CLI — WP-575 (TEN-2917, TEN-1126).
|
|
3
|
+
*
|
|
4
|
+
* Before this, `./client.ts` set NO timeout on any gateway call: the same missing-declaration
|
|
5
|
+
* defect as MCP's blanket 10s constant, in the opposite direction (hang forever instead of
|
|
6
|
+
* give up too early). Both now derive their budget from the route contract; this module owns
|
|
7
|
+
* what to SAY when one is hit.
|
|
8
|
+
*
|
|
9
|
+
* Split out of client.ts at the 500-LOC ratchet's insistence (STD-2 / DEC-1504), and the
|
|
10
|
+
* ratchet read it correctly: "how do we explain a timeout, and is it safe to retry" is a
|
|
11
|
+
* decision with its own reason to change, separate from how a request is sent.
|
|
12
|
+
*
|
|
13
|
+
* The budget itself is DECLARED once at the route contract
|
|
14
|
+
* (packages/kernel-client/src/routeLatencyBudget.ts) and reaches this connector as a
|
|
15
|
+
* drift-checked generated copy. A runtime value import from @productbrain/kernel-client is
|
|
16
|
+
* impossible here — it is a devDependency and this package is PUBLISHED, so the specifier
|
|
17
|
+
* would be unresolvable in dist/ for every installed user.
|
|
18
|
+
*/
|
|
19
|
+
import { CLIError, ErrorCode } from './errors.js';
|
|
20
|
+
import { ROUTE_TYPE_BY_NAME } from '../generated/routeLatencyBudget.generated.js';
|
|
21
|
+
/**
|
|
22
|
+
* Does this route mutate state?
|
|
23
|
+
*
|
|
24
|
+
* Read off the route contract's own Convex function type — `mutation` and `action` can write,
|
|
25
|
+
* `query` cannot — never inferred from the route's NAME. This decides whether the user is told
|
|
26
|
+
* a timed-out call may have landed, so an UNKNOWN route fails safe to `true`: telling someone
|
|
27
|
+
* "nothing was written" when something was is the worse error, and it is the one that invites
|
|
28
|
+
* a duplicating retry.
|
|
29
|
+
*/
|
|
30
|
+
export function routeMayMutate(fn) {
|
|
31
|
+
const type = ROUTE_TYPE_BY_NAME[fn];
|
|
32
|
+
return type === undefined || type !== 'query';
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Was this call a DRY RUN? (PR #533 review, Codex P2)
|
|
36
|
+
*
|
|
37
|
+
* `preview: true` is a gateway-wide contract meaning "run every validation, write nothing" —
|
|
38
|
+
* every registered route accepting it returns before its first write (the routes are
|
|
39
|
+
* enumerated with line citations in the mcp-server twin of this function,
|
|
40
|
+
* packages/mcp-server/src/gatewaySeam.ts).
|
|
41
|
+
*
|
|
42
|
+
* MIRRORED, NOT SHARED, and deliberately so: a runtime value import from
|
|
43
|
+
* @productbrain/kernel-client is impossible in both connectors (see this module's header for
|
|
44
|
+
* the CLI's reason, DEC-701 for mcp-server's), and this derivation needs no route data, so
|
|
45
|
+
* routing it through the generated-copy pipeline would buy codegen machinery for two
|
|
46
|
+
* three-line functions. What must not drift is the ANSWER — pinned by a parity test asserting
|
|
47
|
+
* both connectors classify the same (fn, args) identically.
|
|
48
|
+
*/
|
|
49
|
+
export function isDryRunCall(args) {
|
|
50
|
+
return args?.preview === true;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Could a timed-out call have LANDED A WRITE?
|
|
54
|
+
*
|
|
55
|
+
* The route's type answers "can this route write at all"; the call's own arguments answer
|
|
56
|
+
* "was this particular call asking it to". `pb capture` never sends `preview: true` today and
|
|
57
|
+
* says so loudly (../commands/capture.ts:445-450), so the CLI has no live defect here — but
|
|
58
|
+
* the two connectors holding DIFFERENT answers to the same question is the exact failure mode
|
|
59
|
+
* WP-575 exists to remove, so the derivation is kept identical on both sides rather than added
|
|
60
|
+
* only where a bug was observed.
|
|
61
|
+
*/
|
|
62
|
+
export function mayHaveLandedOnTimeout(fn, args) {
|
|
63
|
+
return routeMayMutate(fn) && !isDryRunCall(args);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Did this throw come from the budget signal firing?
|
|
67
|
+
*
|
|
68
|
+
* `AbortSignal.timeout` rejects with a DOMException named "TimeoutError", but an abort that
|
|
69
|
+
* lands while the response BODY is streaming can surface as "AbortError" instead, depending on
|
|
70
|
+
* where in undici the signal is observed. Matching only the first name left that case falling
|
|
71
|
+
* through `parseKernelEnvelope`'s lenient branch into an empty envelope — which a 200 status
|
|
72
|
+
* then reads as SUCCESS with `undefined` data, the exact false-completion this work package
|
|
73
|
+
* exists to remove, surviving in the one phase it was fixed for.
|
|
74
|
+
*
|
|
75
|
+
* Accepting both is also what the mcp-server twin already does
|
|
76
|
+
* (`throwClassifiedGatewayFailure`, packages/mcp-server/src/gatewaySeam.ts), and the two
|
|
77
|
+
* connectors disagreeing about what a budget abort IS is the same defect class as them
|
|
78
|
+
* disagreeing about how long a route may take.
|
|
79
|
+
*
|
|
80
|
+
* Safe to widen because of WHERE this is consulted: both call sites are guarded on a `route`
|
|
81
|
+
* being present (./client.ts and ./kernelEnvelope.ts), and `route` is supplied only for the
|
|
82
|
+
* gateway fetches that carry `AbortSignal.timeout(budgetMs)`. On those paths there is no other
|
|
83
|
+
* abort to confuse this with — the caller-driven `controller.abort()` surfaces
|
|
84
|
+
* (`/api/admin`, proof-run, connect) never pass a route and never reach here.
|
|
85
|
+
*/
|
|
86
|
+
export function isTimeoutAbort(err) {
|
|
87
|
+
const name = err?.name;
|
|
88
|
+
return name === 'TimeoutError' || name === 'AbortError';
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* The error a budget abort deserves.
|
|
92
|
+
*
|
|
93
|
+
* A budget abort is NOT an unreachable host. The connection succeeded; we stopped waiting.
|
|
94
|
+
* Reporting "could not reach" would be a false statement about the server AND would imply
|
|
95
|
+
* nothing ran — but for a write route the server may well have finished. Say what is actually
|
|
96
|
+
* known, and name the one action that resolves it.
|
|
97
|
+
*/
|
|
98
|
+
export function gatewayTimeoutError(fn, budgetMs, args) {
|
|
99
|
+
return new CLIError(`"${fn}" exceeded its ${budgetMs}ms latency budget.`, {
|
|
100
|
+
// PR #533 review (Copilot + Codex, same finding independently): this was
|
|
101
|
+
// NETWORK_UNREACHABLE, which contradicted the very distinction this module exists to
|
|
102
|
+
// make — the host WAS reachable. The taxonomy already had the right code and nothing
|
|
103
|
+
// used it. A caller branching on the code (retry policy, error reporting) would have
|
|
104
|
+
// been told "unreachable" about a server that answered the connection.
|
|
105
|
+
code: ErrorCode.NETWORK_TIMEOUT,
|
|
106
|
+
category: 'network',
|
|
107
|
+
guidance: mayHaveLandedOnTimeout(fn, args)
|
|
108
|
+
? `The server was reachable — this client stopped waiting, so the operation may have\n` +
|
|
109
|
+
`COMPLETED anyway. Check before retrying (a blind retry can duplicate the write):\n` +
|
|
110
|
+
` pb search "<what you were writing>" # or: pb get <ID>`
|
|
111
|
+
: isDryRunCall(args)
|
|
112
|
+
? `The server was reachable but did not respond in time. This was a preview, so\n` +
|
|
113
|
+
`nothing was written — safe to retry.`
|
|
114
|
+
: `The server was reachable but did not respond in time. This is a read, so nothing\n` +
|
|
115
|
+
`was written — safe to retry.`,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=gatewayTimeout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gatewayTimeout.js","sourceRoot":"","sources":["../../src/lib/gatewayTimeout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAElF;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,EAAU;IACvC,MAAM,IAAI,GAAG,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACpC,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,OAAO,CAAC;AAChD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,YAAY,CAAC,IAAa;IACxC,OAAQ,IAAiD,EAAE,OAAO,KAAK,IAAI,CAAC;AAC9E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,sBAAsB,CAAC,EAAU,EAAE,IAAa;IAC9D,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,cAAc,CAAC,GAAY;IACzC,MAAM,IAAI,GAAI,GAA4C,EAAE,IAAI,CAAC;IACjE,OAAO,IAAI,KAAK,cAAc,IAAI,IAAI,KAAK,YAAY,CAAC;AAC1D,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAAU,EAAE,QAAgB,EAAE,IAAc;IAC9E,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,kBAAkB,QAAQ,oBAAoB,EAAE;QACxE,yEAAyE;QACzE,qFAAqF;QACrF,qFAAqF;QACrF,qFAAqF;QACrF,uEAAuE;QACvE,IAAI,EAAE,SAAS,CAAC,eAAe;QAC/B,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,sBAAsB,CAAC,EAAE,EAAE,IAAI,CAAC;YACxC,CAAC,CAAC,qFAAqF;gBACrF,oFAAoF;gBACpF,2DAA2D;YAC7D,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;gBAClB,CAAC,CAAC,gFAAgF;oBAChF,sCAAsC;gBACxC,CAAC,CAAC,oFAAoF;oBACpF,8BAA8B;KACrC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitEnvLeakKeysParity.test.d.ts","sourceRoot":"","sources":["../../src/lib/gitEnvLeakKeysParity.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
// Parity test for the two hand-synced GIT_ENV_LEAK_KEYS copies in packages/cli (review round 4,
|
|
2
|
+
// PR #632 follow-up, PRRT_kwDORS4ils6YoYoM).
|
|
3
|
+
//
|
|
4
|
+
// packages/cli/src/commands/files.test.ts and packages/cli/src/lib/productbrain-files.test.ts
|
|
5
|
+
// each carry a LOCAL inline copy of scripts/lib/gitFixtureEnv.mjs's canonical GIT_ENV_LEAK_KEYS
|
|
6
|
+
// array — kept local (rather than a cross-package import) per the note on each copy. A future
|
|
7
|
+
// git version bump updates the canonical array (its own superset test,
|
|
8
|
+
// scripts/lib/gitFixtureEnv.node-test.mjs, would fail and prompt the fix there) but nothing
|
|
9
|
+
// previously asserted the two packages/cli copies got updated too — they could silently rot out
|
|
10
|
+
// of sync, each one individually still "passing" its own file's tests while quietly missing a
|
|
11
|
+
// newer git-named env var.
|
|
12
|
+
//
|
|
13
|
+
// Reads all three sources as TEXT and extracts each array by regex (no cross-package import —
|
|
14
|
+
// packages/cli is a separately published package, and scripts/lib/gitFixtureEnv.mjs lives
|
|
15
|
+
// outside its rootDir; importing another *.test.ts file directly would also risk vitest
|
|
16
|
+
// double-collecting its describe/it blocks). This is exactly the "reading the canonical file
|
|
17
|
+
// from repo root is fine in a test" approach.
|
|
18
|
+
import { describe, it, expect } from 'vitest';
|
|
19
|
+
import { readFileSync } from 'node:fs';
|
|
20
|
+
import { resolve, dirname } from 'node:path';
|
|
21
|
+
import { fileURLToPath } from 'node:url';
|
|
22
|
+
const HERE = dirname(fileURLToPath(import.meta.url));
|
|
23
|
+
// packages/cli/src/lib -> packages/cli/src -> packages/cli -> packages -> repo root
|
|
24
|
+
const REPO_ROOT = resolve(HERE, '../../../..');
|
|
25
|
+
// Review round 3 (PR #634, PRRT_kwDORS4ils6Yp28g): a commented-out quoted token inside the array
|
|
26
|
+
// span (e.g. `// 'GIT_OLD_VAR', -- retired`) previously counted as a real list entry, since the
|
|
27
|
+
// extraction regex below doesn't distinguish code from comments — making the parity check dishonest
|
|
28
|
+
// (it could pass or fail based on comment text, not the actual arrays). Strips both comment forms
|
|
29
|
+
// from the matched span before extracting; safe in this narrow context (a flat array of ALL-CAPS
|
|
30
|
+
// env-var-name string literals — no regex literals or other content that a naive comment strip
|
|
31
|
+
// could misparse, unlike the general-purpose scripts/lib/gitFixtureTextMask.mjs this repo uses
|
|
32
|
+
// elsewhere for exactly that reason).
|
|
33
|
+
function extractGitEnvLeakKeys(source) {
|
|
34
|
+
const match = /\bGIT_ENV_LEAK_KEYS[^=]*=\s*\[([\s\S]*?)\]/m.exec(source);
|
|
35
|
+
if (!match)
|
|
36
|
+
throw new Error('GIT_ENV_LEAK_KEYS array not found in source');
|
|
37
|
+
const withoutComments = match[1].replace(/\/\*[\s\S]*?\*\//g, '').replace(/\/\/.*$/gm, '');
|
|
38
|
+
return [...withoutComments.matchAll(/'([^']+)'/g)].map((m) => m[1]);
|
|
39
|
+
}
|
|
40
|
+
describe('GIT_ENV_LEAK_KEYS parity across the canonical source and both packages/cli inline copies', () => {
|
|
41
|
+
const canonicalPath = resolve(REPO_ROOT, 'scripts/lib/gitFixtureEnv.mjs');
|
|
42
|
+
const canonical = extractGitEnvLeakKeys(readFileSync(canonicalPath, 'utf8'));
|
|
43
|
+
it('the canonical list itself is non-empty (sanity check on the extraction regex, not just the comparisons below)', () => {
|
|
44
|
+
expect(canonical.length).toBeGreaterThan(0);
|
|
45
|
+
});
|
|
46
|
+
it('packages/cli/src/commands/files.test.ts stays in sync with the canonical scripts/lib/gitFixtureEnv.mjs list', () => {
|
|
47
|
+
const source = readFileSync(resolve(REPO_ROOT, 'packages/cli/src/commands/files.test.ts'), 'utf8');
|
|
48
|
+
const copy = extractGitEnvLeakKeys(source);
|
|
49
|
+
expect([...copy].sort()).toEqual([...canonical].sort());
|
|
50
|
+
});
|
|
51
|
+
it('packages/cli/src/lib/productbrain-files.test.ts stays in sync with the canonical scripts/lib/gitFixtureEnv.mjs list', () => {
|
|
52
|
+
const source = readFileSync(resolve(REPO_ROOT, 'packages/cli/src/lib/productbrain-files.test.ts'), 'utf8');
|
|
53
|
+
const copy = extractGitEnvLeakKeys(source);
|
|
54
|
+
expect([...copy].sort()).toEqual([...canonical].sort());
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
describe('extractGitEnvLeakKeys ignores commented-out entries (review round 3, PRRT_kwDORS4ils6Yp28g)', () => {
|
|
58
|
+
it('a line-commented-out quoted token inside the array span is NOT counted as a real entry', () => {
|
|
59
|
+
const source = [
|
|
60
|
+
'export const GIT_ENV_LEAK_KEYS = [',
|
|
61
|
+
"\t'GIT_DIR',",
|
|
62
|
+
"\t// 'GIT_RETIRED_VAR', -- no longer needed",
|
|
63
|
+
"\t'GIT_WORK_TREE',",
|
|
64
|
+
'];',
|
|
65
|
+
].join('\n');
|
|
66
|
+
expect(extractGitEnvLeakKeys(source)).toEqual(['GIT_DIR', 'GIT_WORK_TREE']);
|
|
67
|
+
});
|
|
68
|
+
it('a block-commented-out quoted token inside the array span is NOT counted as a real entry', () => {
|
|
69
|
+
const source = ["export const GIT_ENV_LEAK_KEYS = [", "\t'GIT_DIR',", "\t/* 'GIT_RETIRED_VAR', */", "\t'GIT_WORK_TREE',", '];'].join('\n');
|
|
70
|
+
expect(extractGitEnvLeakKeys(source)).toEqual(['GIT_DIR', 'GIT_WORK_TREE']);
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
//# sourceMappingURL=gitEnvLeakKeysParity.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitEnvLeakKeysParity.test.js","sourceRoot":"","sources":["../../src/lib/gitEnvLeakKeysParity.test.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/glossary.js
CHANGED
|
@@ -14,7 +14,7 @@ export const GLOSSARY = [
|
|
|
14
14
|
},
|
|
15
15
|
{
|
|
16
16
|
term: 'entry',
|
|
17
|
-
definition: 'A unit of product knowledge (
|
|
17
|
+
definition: 'A unit of product knowledge (work package, decision, tension, standard, etc.).',
|
|
18
18
|
},
|
|
19
19
|
{
|
|
20
20
|
term: 'collection',
|
package/dist/lib/glossary.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glossary.js","sourceRoot":"","sources":["../../src/lib/glossary.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAOvC,MAAM,CAAC,MAAM,QAAQ,GAAoB;IACvC;QACE,IAAI,EAAE,WAAW;QACjB,UAAU,EAAE,4DAA4D;KACzE;IACD;QACE,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"glossary.js","sourceRoot":"","sources":["../../src/lib/glossary.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAOvC,MAAM,CAAC,MAAM,QAAQ,GAAoB;IACvC;QACE,IAAI,EAAE,WAAW;QACjB,UAAU,EAAE,4DAA4D;KACzE;IACD;QACE,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,gFAAgF;KAC7F;IACD;QACE,IAAI,EAAE,YAAY;QAClB,UAAU,EAAE,wEAAwE;KACrF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,UAAU,EAAE,sEAAsE;KACnF;IACD;QACE,IAAI,EAAE,SAAS;QACf,UAAU,EAAE,wEAAwE;KACrF;IACD;QACE,IAAI,EAAE,SAAS;QACf,UAAU,EAAE,iDAAiD;KAC9D;IACD;QACE,IAAI,EAAE,SAAS;QACf,UAAU,EAAE,4DAA4D;KACzE;CACF,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAEnE,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACjD,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hook intent model — WP-310 E3a.
|
|
3
|
+
* Defines the three pb hook intents and a composition function that returns
|
|
4
|
+
* only the hook entries not already present in existing settings.
|
|
5
|
+
*
|
|
6
|
+
* Also exposes getHookStatusForSurface (WP-310 E3b / S4) for multi-surface
|
|
7
|
+
* opt-in reporting in runHandshakeInit().
|
|
8
|
+
*
|
|
9
|
+
* Kept separate from handshake.ts so S4 (multi-surface opt-in) can import
|
|
10
|
+
* composeHooksFromIntents without pulling in the full handshake module.
|
|
11
|
+
*/
|
|
12
|
+
import type { SurfaceName } from '../surfaces/registry.js';
|
|
13
|
+
export type HookIntent = 'session-start' | 'session-close' | 'pre-compact';
|
|
14
|
+
export interface HookIntentConfig {
|
|
15
|
+
command: string;
|
|
16
|
+
statusMessage?: string;
|
|
17
|
+
hookEvent: 'SessionStart' | 'Stop' | 'PreCompact';
|
|
18
|
+
}
|
|
19
|
+
export declare const HOOK_INTENT_CONFIGS: Record<HookIntent, HookIntentConfig>;
|
|
20
|
+
export interface HookAddition {
|
|
21
|
+
event: 'SessionStart' | 'Stop' | 'PreCompact';
|
|
22
|
+
entry: {
|
|
23
|
+
hooks: Array<{
|
|
24
|
+
type: string;
|
|
25
|
+
command: string;
|
|
26
|
+
statusMessage?: string;
|
|
27
|
+
}>;
|
|
28
|
+
};
|
|
29
|
+
label: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Returns the hook additions needed for the given intents.
|
|
33
|
+
* Only returns entries whose command is NOT already present in existingHooks.
|
|
34
|
+
*
|
|
35
|
+
* @param intents - The hook intents to compose.
|
|
36
|
+
* @param existingHooks - The current hooks object from settings (e.g. settings.hooks ?? {}).
|
|
37
|
+
*/
|
|
38
|
+
export declare function composeHooksFromIntents(intents: HookIntent[], existingHooks: Record<string, unknown>): HookAddition[];
|
|
39
|
+
export interface HookStatusResult {
|
|
40
|
+
writable: boolean;
|
|
41
|
+
reason: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Determines whether hook files can be written for a given surface.
|
|
45
|
+
*
|
|
46
|
+
* INS-740: Cursor and Copilot have empty hookEvents in SURFACE_REGISTRY,
|
|
47
|
+
* so no hook files are written for them. This function reports that status
|
|
48
|
+
* so runHandshakeInit() can surface an informational note to the user.
|
|
49
|
+
*/
|
|
50
|
+
export declare function getHookStatusForSurface(surface: SurfaceName): HookStatusResult;
|
|
51
|
+
//# sourceMappingURL=hook-intents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hook-intents.d.ts","sourceRoot":"","sources":["../../src/lib/hook-intents.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,MAAM,UAAU,GAAG,eAAe,GAAG,eAAe,GAAG,aAAa,CAAC;AAE3E,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,cAAc,GAAG,MAAM,GAAG,YAAY,CAAC;CACnD;AAID,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,UAAU,EAAE,gBAAgB,CAgBpE,CAAC;AASF,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,cAAc,GAAG,MAAM,GAAG,YAAY,CAAC;IAC9C,KAAK,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,aAAa,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;IACnF,KAAK,EAAE,MAAM,CAAC;CACf;AAQD;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,UAAU,EAAE,EACrB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,YAAY,EAAE,CAyBhB;AAID,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,WAAW,GAAG,gBAAgB,CAS9E"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hook intent model — WP-310 E3a.
|
|
3
|
+
* Defines the three pb hook intents and a composition function that returns
|
|
4
|
+
* only the hook entries not already present in existing settings.
|
|
5
|
+
*
|
|
6
|
+
* Also exposes getHookStatusForSurface (WP-310 E3b / S4) for multi-surface
|
|
7
|
+
* opt-in reporting in runHandshakeInit().
|
|
8
|
+
*
|
|
9
|
+
* Kept separate from handshake.ts so S4 (multi-surface opt-in) can import
|
|
10
|
+
* composeHooksFromIntents without pulling in the full handshake module.
|
|
11
|
+
*/
|
|
12
|
+
import { SURFACE_REGISTRY } from '../surfaces/registry.js';
|
|
13
|
+
// Hook failure contract (TEN-712): all hook commands MUST end with '2>/dev/null || true'
|
|
14
|
+
// so Claude Code always starts even if pb is unavailable. Never remove this suffix.
|
|
15
|
+
export const HOOK_INTENT_CONFIGS = {
|
|
16
|
+
'session-start': {
|
|
17
|
+
command: 'pb session start 2>/dev/null || true',
|
|
18
|
+
statusMessage: 'Opening pb session...',
|
|
19
|
+
hookEvent: 'SessionStart',
|
|
20
|
+
},
|
|
21
|
+
'session-close': {
|
|
22
|
+
command: 'pb session close 2>/dev/null || true',
|
|
23
|
+
statusMessage: 'Closing pb session...',
|
|
24
|
+
hookEvent: 'Stop',
|
|
25
|
+
},
|
|
26
|
+
'pre-compact': {
|
|
27
|
+
command: 'pb session id > /dev/null 2>&1 && echo \'{"systemMessage": "pb session active — capture decisions/tensions before compacting: pb capture \\"DEC: ...\\""}\' || true',
|
|
28
|
+
hookEvent: 'PreCompact',
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
function hasCommand(groups, cmd) {
|
|
32
|
+
return (groups ?? []).some((g) => g.hooks?.some((h) => h.command === cmd));
|
|
33
|
+
}
|
|
34
|
+
const INTENT_LABELS = {
|
|
35
|
+
'session-start': 'SessionStart → pb session start',
|
|
36
|
+
'session-close': 'Stop → pb session close',
|
|
37
|
+
'pre-compact': 'PreCompact → decision capture reminder',
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Returns the hook additions needed for the given intents.
|
|
41
|
+
* Only returns entries whose command is NOT already present in existingHooks.
|
|
42
|
+
*
|
|
43
|
+
* @param intents - The hook intents to compose.
|
|
44
|
+
* @param existingHooks - The current hooks object from settings (e.g. settings.hooks ?? {}).
|
|
45
|
+
*/
|
|
46
|
+
export function composeHooksFromIntents(intents, existingHooks) {
|
|
47
|
+
const additions = [];
|
|
48
|
+
for (const intent of intents) {
|
|
49
|
+
const cfg = HOOK_INTENT_CONFIGS[intent];
|
|
50
|
+
const existing = existingHooks[cfg.hookEvent];
|
|
51
|
+
if (hasCommand(existing, cfg.command))
|
|
52
|
+
continue;
|
|
53
|
+
const hookEntry = {
|
|
54
|
+
type: 'command',
|
|
55
|
+
command: cfg.command,
|
|
56
|
+
};
|
|
57
|
+
if (cfg.statusMessage !== undefined) {
|
|
58
|
+
hookEntry.statusMessage = cfg.statusMessage;
|
|
59
|
+
}
|
|
60
|
+
additions.push({
|
|
61
|
+
event: cfg.hookEvent,
|
|
62
|
+
entry: { hooks: [hookEntry] },
|
|
63
|
+
label: INTENT_LABELS[intent],
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
return additions;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Determines whether hook files can be written for a given surface.
|
|
70
|
+
*
|
|
71
|
+
* INS-740: Cursor and Copilot have empty hookEvents in SURFACE_REGISTRY,
|
|
72
|
+
* so no hook files are written for them. This function reports that status
|
|
73
|
+
* so runHandshakeInit() can surface an informational note to the user.
|
|
74
|
+
*/
|
|
75
|
+
export function getHookStatusForSurface(surface) {
|
|
76
|
+
const cap = SURFACE_REGISTRY[surface];
|
|
77
|
+
if (cap.hookEvents.length > 0) {
|
|
78
|
+
return { writable: true, reason: 'native hook events supported' };
|
|
79
|
+
}
|
|
80
|
+
return {
|
|
81
|
+
writable: false,
|
|
82
|
+
reason: `${surface} has no session hook events — run \`pb session start\` manually`,
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=hook-intents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hook-intents.js","sourceRoot":"","sources":["../../src/lib/hook-intents.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAW3D,yFAAyF;AACzF,oFAAoF;AACpF,MAAM,CAAC,MAAM,mBAAmB,GAAyC;IACvE,eAAe,EAAE;QACf,OAAO,EAAE,sCAAsC;QAC/C,aAAa,EAAE,uBAAuB;QACtC,SAAS,EAAE,cAAc;KAC1B;IACD,eAAe,EAAE;QACf,OAAO,EAAE,sCAAsC;QAC/C,aAAa,EAAE,uBAAuB;QACtC,SAAS,EAAE,MAAM;KAClB;IACD,aAAa,EAAE;QACb,OAAO,EACL,sKAAsK;QACxK,SAAS,EAAE,YAAY;KACxB;CACF,CAAC;AAKF,SAAS,UAAU,CAAC,MAAuC,EAAE,GAAW;IACtE,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC;AAC7E,CAAC;AAQD,MAAM,aAAa,GAA+B;IAChD,eAAe,EAAE,iCAAiC;IAClD,eAAe,EAAE,yBAAyB;IAC1C,aAAa,EAAE,wCAAwC;CACxD,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAAqB,EACrB,aAAsC;IAEtC,MAAM,SAAS,GAAmB,EAAE,CAAC;IAErC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAoC,CAAC;QAEjF,IAAI,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC;YAAE,SAAS;QAEhD,MAAM,SAAS,GAA8D;YAC3E,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB,CAAC;QACF,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACpC,SAAS,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;QAC9C,CAAC;QAED,SAAS,CAAC,IAAI,CAAC;YACb,KAAK,EAAE,GAAG,CAAC,SAAS;YACpB,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE;YAC7B,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC;SAC7B,CAAC,CAAC;IACL,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AASD;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAoB;IAC1D,MAAM,GAAG,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,8BAA8B,EAAE,CAAC;IACpE,CAAC;IACD,OAAO;QACL,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,GAAG,OAAO,iEAAiE;KACpF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Synced from convex/lib/inferSourceDate.ts (FEAT-885: shared date inference, BR-108: CLI import boundary).
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Infer an ISO date (YYYY-MM-DD) from free-text values.
|
|
6
|
+
*
|
|
7
|
+
* Canonical source for MCP (packages/mcp-server/src/lib/inferSourceDate.ts)
|
|
8
|
+
* and CLI (packages/cli/src/lib/inferSourceDate.ts) — both are synced copies
|
|
9
|
+
* maintained by scripts/sync-convex-lib-to-mcp.mjs (FEAT-885, BR-108).
|
|
10
|
+
*/
|
|
11
|
+
export declare function inferSourceDate(...values: Array<string | undefined>): string | undefined;
|
|
12
|
+
//# sourceMappingURL=inferSourceDate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inferSourceDate.d.ts","sourceRoot":"","sources":["../../src/lib/inferSourceDate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;GAMG;AAEH,wBAAgB,eAAe,CAAC,GAAG,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,SAAS,CAmCxF"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Synced from convex/lib/inferSourceDate.ts (FEAT-885: shared date inference, BR-108: CLI import boundary).
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Infer an ISO date (YYYY-MM-DD) from free-text values.
|
|
6
|
+
*
|
|
7
|
+
* Canonical source for MCP (packages/mcp-server/src/lib/inferSourceDate.ts)
|
|
8
|
+
* and CLI (packages/cli/src/lib/inferSourceDate.ts) — both are synced copies
|
|
9
|
+
* maintained by scripts/sync-convex-lib-to-mcp.mjs (FEAT-885, BR-108).
|
|
10
|
+
*/
|
|
11
|
+
export function inferSourceDate(...values) {
|
|
12
|
+
const combined = values
|
|
13
|
+
.filter((value) => typeof value === 'string' && value.trim().length > 0)
|
|
14
|
+
.join('\n');
|
|
15
|
+
if (!combined)
|
|
16
|
+
return undefined;
|
|
17
|
+
const isoMatch = combined.match(/\b(20\d{2}-\d{2}-\d{2})\b/);
|
|
18
|
+
if (isoMatch)
|
|
19
|
+
return isoMatch[1];
|
|
20
|
+
const monthMatch = combined.match(/\b(january|february|march|april|may|june|july|august|september|october|november|december)\s+(\d{1,2})(?:st|nd|rd|th)?(?:,?\s+(20\d{2}))?\b/i);
|
|
21
|
+
if (!monthMatch)
|
|
22
|
+
return undefined;
|
|
23
|
+
const monthIndex = [
|
|
24
|
+
'january',
|
|
25
|
+
'february',
|
|
26
|
+
'march',
|
|
27
|
+
'april',
|
|
28
|
+
'may',
|
|
29
|
+
'june',
|
|
30
|
+
'july',
|
|
31
|
+
'august',
|
|
32
|
+
'september',
|
|
33
|
+
'october',
|
|
34
|
+
'november',
|
|
35
|
+
'december',
|
|
36
|
+
].indexOf(monthMatch[1].toLowerCase());
|
|
37
|
+
if (monthIndex < 0)
|
|
38
|
+
return undefined;
|
|
39
|
+
const inferredYear = monthMatch[3] ?? combined.match(/\b(20\d{2})\b/)?.[1] ?? String(new Date().getUTCFullYear());
|
|
40
|
+
const month = String(monthIndex + 1).padStart(2, '0');
|
|
41
|
+
const day = monthMatch[2].padStart(2, '0');
|
|
42
|
+
return `${inferredYear}-${month}-${day}`;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=inferSourceDate.js.map
|