usesteady 0.1.0-alpha.1
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/LICENSE +186 -0
- package/README.md +724 -0
- package/bin/use-steady.js +13 -0
- package/dist/server-store.d.ts +68 -0
- package/dist/server-store.d.ts.map +1 -0
- package/dist/server-store.js +133 -0
- package/dist/server-store.js.map +1 -0
- package/dist/server.d.ts +35 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +569 -0
- package/dist/server.js.map +1 -0
- package/dist/src/claude/adapters/api-adapter.d.ts +99 -0
- package/dist/src/claude/adapters/api-adapter.d.ts.map +1 -0
- package/dist/src/claude/adapters/api-adapter.js +415 -0
- package/dist/src/claude/adapters/api-adapter.js.map +1 -0
- package/dist/src/claude/adapters/stub-adapter.d.ts +73 -0
- package/dist/src/claude/adapters/stub-adapter.d.ts.map +1 -0
- package/dist/src/claude/adapters/stub-adapter.js +114 -0
- package/dist/src/claude/adapters/stub-adapter.js.map +1 -0
- package/dist/src/claude/artifact-mapper.d.ts +85 -0
- package/dist/src/claude/artifact-mapper.d.ts.map +1 -0
- package/dist/src/claude/artifact-mapper.js +187 -0
- package/dist/src/claude/artifact-mapper.js.map +1 -0
- package/dist/src/claude/delivery-gate.d.ts +136 -0
- package/dist/src/claude/delivery-gate.d.ts.map +1 -0
- package/dist/src/claude/delivery-gate.js +231 -0
- package/dist/src/claude/delivery-gate.js.map +1 -0
- package/dist/src/claude/index.d.ts +24 -0
- package/dist/src/claude/index.d.ts.map +1 -0
- package/dist/src/claude/index.js +23 -0
- package/dist/src/claude/index.js.map +1 -0
- package/dist/src/claude/types.d.ts +223 -0
- package/dist/src/claude/types.d.ts.map +1 -0
- package/dist/src/claude/types.js +64 -0
- package/dist/src/claude/types.js.map +1 -0
- package/dist/src/control/compiler.d.ts +125 -0
- package/dist/src/control/compiler.d.ts.map +1 -0
- package/dist/src/control/compiler.js +179 -0
- package/dist/src/control/compiler.js.map +1 -0
- package/dist/src/control/constraints.d.ts +42 -0
- package/dist/src/control/constraints.d.ts.map +1 -0
- package/dist/src/control/constraints.js +116 -0
- package/dist/src/control/constraints.js.map +1 -0
- package/dist/src/control/drift-detector.d.ts +49 -0
- package/dist/src/control/drift-detector.d.ts.map +1 -0
- package/dist/src/control/drift-detector.js +115 -0
- package/dist/src/control/drift-detector.js.map +1 -0
- package/dist/src/control/index.d.ts +44 -0
- package/dist/src/control/index.d.ts.map +1 -0
- package/dist/src/control/index.js +40 -0
- package/dist/src/control/index.js.map +1 -0
- package/dist/src/control/types.d.ts +144 -0
- package/dist/src/control/types.d.ts.map +1 -0
- package/dist/src/control/types.js +57 -0
- package/dist/src/control/types.js.map +1 -0
- package/dist/src/cursor/adapters/inprocess-adapter.d.ts +78 -0
- package/dist/src/cursor/adapters/inprocess-adapter.d.ts.map +1 -0
- package/dist/src/cursor/adapters/inprocess-adapter.js +308 -0
- package/dist/src/cursor/adapters/inprocess-adapter.js.map +1 -0
- package/dist/src/cursor/adapters/stub-adapter.d.ts +75 -0
- package/dist/src/cursor/adapters/stub-adapter.d.ts.map +1 -0
- package/dist/src/cursor/adapters/stub-adapter.js +120 -0
- package/dist/src/cursor/adapters/stub-adapter.js.map +1 -0
- package/dist/src/cursor/artifact-mapper.d.ts +81 -0
- package/dist/src/cursor/artifact-mapper.d.ts.map +1 -0
- package/dist/src/cursor/artifact-mapper.js +203 -0
- package/dist/src/cursor/artifact-mapper.js.map +1 -0
- package/dist/src/cursor/delivery-gate.d.ts +144 -0
- package/dist/src/cursor/delivery-gate.d.ts.map +1 -0
- package/dist/src/cursor/delivery-gate.js +208 -0
- package/dist/src/cursor/delivery-gate.js.map +1 -0
- package/dist/src/cursor/glob-matcher.d.ts +30 -0
- package/dist/src/cursor/glob-matcher.d.ts.map +1 -0
- package/dist/src/cursor/glob-matcher.js +68 -0
- package/dist/src/cursor/glob-matcher.js.map +1 -0
- package/dist/src/cursor/index.d.ts +43 -0
- package/dist/src/cursor/index.d.ts.map +1 -0
- package/dist/src/cursor/index.js +44 -0
- package/dist/src/cursor/index.js.map +1 -0
- package/dist/src/cursor/ocd-evaluator.d.ts +89 -0
- package/dist/src/cursor/ocd-evaluator.d.ts.map +1 -0
- package/dist/src/cursor/ocd-evaluator.js +142 -0
- package/dist/src/cursor/ocd-evaluator.js.map +1 -0
- package/dist/src/cursor/types.d.ts +309 -0
- package/dist/src/cursor/types.d.ts.map +1 -0
- package/dist/src/cursor/types.js +48 -0
- package/dist/src/cursor/types.js.map +1 -0
- package/dist/src/execution/claude/claude-execution-coordinator.d.ts +164 -0
- package/dist/src/execution/claude/claude-execution-coordinator.d.ts.map +1 -0
- package/dist/src/execution/claude/claude-execution-coordinator.js +198 -0
- package/dist/src/execution/claude/claude-execution-coordinator.js.map +1 -0
- package/dist/src/execution/claude/index.d.ts +13 -0
- package/dist/src/execution/claude/index.d.ts.map +1 -0
- package/dist/src/execution/claude/index.js +12 -0
- package/dist/src/execution/claude/index.js.map +1 -0
- package/dist/src/execution/cursor/cursor-execution-coordinator.d.ts +216 -0
- package/dist/src/execution/cursor/cursor-execution-coordinator.d.ts.map +1 -0
- package/dist/src/execution/cursor/cursor-execution-coordinator.js +233 -0
- package/dist/src/execution/cursor/cursor-execution-coordinator.js.map +1 -0
- package/dist/src/execution/cursor/index.d.ts +20 -0
- package/dist/src/execution/cursor/index.d.ts.map +1 -0
- package/dist/src/execution/cursor/index.js +18 -0
- package/dist/src/execution/cursor/index.js.map +1 -0
- package/dist/src/execution/reminders/index.d.ts +11 -0
- package/dist/src/execution/reminders/index.d.ts.map +1 -0
- package/dist/src/execution/reminders/index.js +9 -0
- package/dist/src/execution/reminders/index.js.map +1 -0
- package/dist/src/execution/reminders/reminder-execution-coordinator.d.ts +125 -0
- package/dist/src/execution/reminders/reminder-execution-coordinator.d.ts.map +1 -0
- package/dist/src/execution/reminders/reminder-execution-coordinator.js +129 -0
- package/dist/src/execution/reminders/reminder-execution-coordinator.js.map +1 -0
- package/dist/src/execution/reminders/reminder-execution-types.d.ts +161 -0
- package/dist/src/execution/reminders/reminder-execution-types.d.ts.map +1 -0
- package/dist/src/execution/reminders/reminder-execution-types.js +39 -0
- package/dist/src/execution/reminders/reminder-execution-types.js.map +1 -0
- package/dist/src/execution/reminders/reminder-execution-validator.d.ts +45 -0
- package/dist/src/execution/reminders/reminder-execution-validator.d.ts.map +1 -0
- package/dist/src/execution/reminders/reminder-execution-validator.js +92 -0
- package/dist/src/execution/reminders/reminder-execution-validator.js.map +1 -0
- package/dist/src/execution/reminders/reminder-executor.d.ts +62 -0
- package/dist/src/execution/reminders/reminder-executor.d.ts.map +1 -0
- package/dist/src/execution/reminders/reminder-executor.js +113 -0
- package/dist/src/execution/reminders/reminder-executor.js.map +1 -0
- package/dist/src/execution/reminders/reminder-time-parser.d.ts +41 -0
- package/dist/src/execution/reminders/reminder-time-parser.d.ts.map +1 -0
- package/dist/src/execution/reminders/reminder-time-parser.js +113 -0
- package/dist/src/execution/reminders/reminder-time-parser.js.map +1 -0
- package/dist/src/friction/auto-capture.d.ts +38 -0
- package/dist/src/friction/auto-capture.d.ts.map +1 -0
- package/dist/src/friction/auto-capture.js +133 -0
- package/dist/src/friction/auto-capture.js.map +1 -0
- package/dist/src/friction/client.d.ts +39 -0
- package/dist/src/friction/client.d.ts.map +1 -0
- package/dist/src/friction/client.js +165 -0
- package/dist/src/friction/client.js.map +1 -0
- package/dist/src/friction/config.d.ts +16 -0
- package/dist/src/friction/config.d.ts.map +1 -0
- package/dist/src/friction/config.js +56 -0
- package/dist/src/friction/config.js.map +1 -0
- package/dist/src/friction/github-auth.d.ts +41 -0
- package/dist/src/friction/github-auth.d.ts.map +1 -0
- package/dist/src/friction/github-auth.js +155 -0
- package/dist/src/friction/github-auth.js.map +1 -0
- package/dist/src/friction/github-issues.d.ts +51 -0
- package/dist/src/friction/github-issues.d.ts.map +1 -0
- package/dist/src/friction/github-issues.js +118 -0
- package/dist/src/friction/github-issues.js.map +1 -0
- package/dist/src/friction/payout-ledger.d.ts +45 -0
- package/dist/src/friction/payout-ledger.d.ts.map +1 -0
- package/dist/src/friction/payout-ledger.js +111 -0
- package/dist/src/friction/payout-ledger.js.map +1 -0
- package/dist/src/friction/queue.d.ts +42 -0
- package/dist/src/friction/queue.d.ts.map +1 -0
- package/dist/src/friction/queue.js +179 -0
- package/dist/src/friction/queue.js.map +1 -0
- package/dist/src/friction/reviewer.d.ts +42 -0
- package/dist/src/friction/reviewer.d.ts.map +1 -0
- package/dist/src/friction/reviewer.js +269 -0
- package/dist/src/friction/reviewer.js.map +1 -0
- package/dist/src/friction/types.d.ts +63 -0
- package/dist/src/friction/types.d.ts.map +1 -0
- package/dist/src/friction/types.js +18 -0
- package/dist/src/friction/types.js.map +1 -0
- package/dist/src/history/index.d.ts +39 -0
- package/dist/src/history/index.d.ts.map +1 -0
- package/dist/src/history/index.js +41 -0
- package/dist/src/history/index.js.map +1 -0
- package/dist/src/history/session-chain.d.ts +36 -0
- package/dist/src/history/session-chain.d.ts.map +1 -0
- package/dist/src/history/session-chain.js +91 -0
- package/dist/src/history/session-chain.js.map +1 -0
- package/dist/src/history/types.d.ts +130 -0
- package/dist/src/history/types.d.ts.map +1 -0
- package/dist/src/history/types.js +32 -0
- package/dist/src/history/types.js.map +1 -0
- package/dist/src/history/workflow-history.d.ts +48 -0
- package/dist/src/history/workflow-history.d.ts.map +1 -0
- package/dist/src/history/workflow-history.js +116 -0
- package/dist/src/history/workflow-history.js.map +1 -0
- package/dist/src/index.d.ts +88 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +58 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/intake/classify-intent-state.d.ts +20 -0
- package/dist/src/intake/classify-intent-state.d.ts.map +1 -0
- package/dist/src/intake/classify-intent-state.js +29 -0
- package/dist/src/intake/classify-intent-state.js.map +1 -0
- package/dist/src/intake/intake-service.d.ts +105 -0
- package/dist/src/intake/intake-service.d.ts.map +1 -0
- package/dist/src/intake/intake-service.js +407 -0
- package/dist/src/intake/intake-service.js.map +1 -0
- package/dist/src/intake/response-planner.d.ts +25 -0
- package/dist/src/intake/response-planner.d.ts.map +1 -0
- package/dist/src/intake/response-planner.js +52 -0
- package/dist/src/intake/response-planner.js.map +1 -0
- package/dist/src/intake/signal-extractor.d.ts +25 -0
- package/dist/src/intake/signal-extractor.d.ts.map +1 -0
- package/dist/src/intake/signal-extractor.js +42 -0
- package/dist/src/intake/signal-extractor.js.map +1 -0
- package/dist/src/intake/trace.d.ts +157 -0
- package/dist/src/intake/trace.d.ts.map +1 -0
- package/dist/src/intake/trace.js +38 -0
- package/dist/src/intake/trace.js.map +1 -0
- package/dist/src/intake/types.d.ts +70 -0
- package/dist/src/intake/types.d.ts.map +1 -0
- package/dist/src/intake/types.js +30 -0
- package/dist/src/intake/types.js.map +1 -0
- package/dist/src/interaction/defaults.d.ts +12 -0
- package/dist/src/interaction/defaults.d.ts.map +1 -0
- package/dist/src/interaction/defaults.js +26 -0
- package/dist/src/interaction/defaults.js.map +1 -0
- package/dist/src/interaction/guidance-order.d.ts +53 -0
- package/dist/src/interaction/guidance-order.d.ts.map +1 -0
- package/dist/src/interaction/guidance-order.js +131 -0
- package/dist/src/interaction/guidance-order.js.map +1 -0
- package/dist/src/interaction/observe.d.ts +57 -0
- package/dist/src/interaction/observe.d.ts.map +1 -0
- package/dist/src/interaction/observe.js +77 -0
- package/dist/src/interaction/observe.js.map +1 -0
- package/dist/src/interaction/selectors.d.ts +16 -0
- package/dist/src/interaction/selectors.d.ts.map +1 -0
- package/dist/src/interaction/selectors.js +23 -0
- package/dist/src/interaction/selectors.js.map +1 -0
- package/dist/src/interaction/types.d.ts +105 -0
- package/dist/src/interaction/types.d.ts.map +1 -0
- package/dist/src/interaction/types.js +48 -0
- package/dist/src/interaction/types.js.map +1 -0
- package/dist/src/interaction/updater.d.ts +22 -0
- package/dist/src/interaction/updater.d.ts.map +1 -0
- package/dist/src/interaction/updater.js +87 -0
- package/dist/src/interaction/updater.js.map +1 -0
- package/dist/src/present/boundary-explanation/boundary-explanation-detector.d.ts +48 -0
- package/dist/src/present/boundary-explanation/boundary-explanation-detector.d.ts.map +1 -0
- package/dist/src/present/boundary-explanation/boundary-explanation-detector.js +107 -0
- package/dist/src/present/boundary-explanation/boundary-explanation-detector.js.map +1 -0
- package/dist/src/present/boundary-explanation/boundary-explanation-types.d.ts +43 -0
- package/dist/src/present/boundary-explanation/boundary-explanation-types.d.ts.map +1 -0
- package/dist/src/present/boundary-explanation/boundary-explanation-types.js +20 -0
- package/dist/src/present/boundary-explanation/boundary-explanation-types.js.map +1 -0
- package/dist/src/present/boundary-explanation/index.d.ts +10 -0
- package/dist/src/present/boundary-explanation/index.d.ts.map +1 -0
- package/dist/src/present/boundary-explanation/index.js +2 -0
- package/dist/src/present/boundary-explanation/index.js.map +1 -0
- package/dist/src/present/control-visibility/control-visibility-assertions.d.ts +70 -0
- package/dist/src/present/control-visibility/control-visibility-assertions.d.ts.map +1 -0
- package/dist/src/present/control-visibility/control-visibility-assertions.js +138 -0
- package/dist/src/present/control-visibility/control-visibility-assertions.js.map +1 -0
- package/dist/src/present/control-visibility/control-visibility-evaluator.d.ts +67 -0
- package/dist/src/present/control-visibility/control-visibility-evaluator.d.ts.map +1 -0
- package/dist/src/present/control-visibility/control-visibility-evaluator.js +146 -0
- package/dist/src/present/control-visibility/control-visibility-evaluator.js.map +1 -0
- package/dist/src/present/control-visibility/control-visibility-types.d.ts +113 -0
- package/dist/src/present/control-visibility/control-visibility-types.d.ts.map +1 -0
- package/dist/src/present/control-visibility/control-visibility-types.js +24 -0
- package/dist/src/present/control-visibility/control-visibility-types.js.map +1 -0
- package/dist/src/present/control-visibility/index.d.ts +16 -0
- package/dist/src/present/control-visibility/index.d.ts.map +1 -0
- package/dist/src/present/control-visibility/index.js +15 -0
- package/dist/src/present/control-visibility/index.js.map +1 -0
- package/dist/src/present/format.d.ts +57 -0
- package/dist/src/present/format.d.ts.map +1 -0
- package/dist/src/present/format.js +150 -0
- package/dist/src/present/format.js.map +1 -0
- package/dist/src/present/present-coordinator.d.ts +153 -0
- package/dist/src/present/present-coordinator.d.ts.map +1 -0
- package/dist/src/present/present-coordinator.js +213 -0
- package/dist/src/present/present-coordinator.js.map +1 -0
- package/dist/src/present/reminders/index.d.ts +22 -0
- package/dist/src/present/reminders/index.d.ts.map +1 -0
- package/dist/src/present/reminders/index.js +22 -0
- package/dist/src/present/reminders/index.js.map +1 -0
- package/dist/src/present/reminders/reminder-presenter.d.ts +76 -0
- package/dist/src/present/reminders/reminder-presenter.d.ts.map +1 -0
- package/dist/src/present/reminders/reminder-presenter.js +359 -0
- package/dist/src/present/reminders/reminder-presenter.js.map +1 -0
- package/dist/src/present/reminders/reminder-renderer.d.ts +82 -0
- package/dist/src/present/reminders/reminder-renderer.d.ts.map +1 -0
- package/dist/src/present/reminders/reminder-renderer.js +136 -0
- package/dist/src/present/reminders/reminder-renderer.js.map +1 -0
- package/dist/src/present/reminders/reminder-types.d.ts +131 -0
- package/dist/src/present/reminders/reminder-types.d.ts.map +1 -0
- package/dist/src/present/reminders/reminder-types.js +29 -0
- package/dist/src/present/reminders/reminder-types.js.map +1 -0
- package/dist/src/present/types.d.ts +114 -0
- package/dist/src/present/types.d.ts.map +1 -0
- package/dist/src/present/types.js +18 -0
- package/dist/src/present/types.js.map +1 -0
- package/dist/src/product/claude-product-session.d.ts +146 -0
- package/dist/src/product/claude-product-session.d.ts.map +1 -0
- package/dist/src/product/claude-product-session.js +362 -0
- package/dist/src/product/claude-product-session.js.map +1 -0
- package/dist/src/product/cursor-product-session.d.ts +211 -0
- package/dist/src/product/cursor-product-session.d.ts.map +1 -0
- package/dist/src/product/cursor-product-session.js +390 -0
- package/dist/src/product/cursor-product-session.js.map +1 -0
- package/dist/src/product/index.d.ts +28 -0
- package/dist/src/product/index.d.ts.map +1 -0
- package/dist/src/product/index.js +22 -0
- package/dist/src/product/index.js.map +1 -0
- package/dist/src/product/session-resilience/index.d.ts +17 -0
- package/dist/src/product/session-resilience/index.d.ts.map +1 -0
- package/dist/src/product/session-resilience/index.js +15 -0
- package/dist/src/product/session-resilience/index.js.map +1 -0
- package/dist/src/product/session-resilience/session-serializer.d.ts +43 -0
- package/dist/src/product/session-resilience/session-serializer.d.ts.map +1 -0
- package/dist/src/product/session-resilience/session-serializer.js +84 -0
- package/dist/src/product/session-resilience/session-serializer.js.map +1 -0
- package/dist/src/product/session-resilience/session-snapshot-types.d.ts +35 -0
- package/dist/src/product/session-resilience/session-snapshot-types.d.ts.map +1 -0
- package/dist/src/product/session-resilience/session-snapshot-types.js +21 -0
- package/dist/src/product/session-resilience/session-snapshot-types.js.map +1 -0
- package/dist/src/product/session-resilience/session-staleness.d.ts +54 -0
- package/dist/src/product/session-resilience/session-staleness.d.ts.map +1 -0
- package/dist/src/product/session-resilience/session-staleness.js +62 -0
- package/dist/src/product/session-resilience/session-staleness.js.map +1 -0
- package/dist/src/product/session-resilience/session-summary.d.ts +40 -0
- package/dist/src/product/session-resilience/session-summary.d.ts.map +1 -0
- package/dist/src/product/session-resilience/session-summary.js +72 -0
- package/dist/src/product/session-resilience/session-summary.js.map +1 -0
- package/dist/src/prv/patterns.d.ts +32 -0
- package/dist/src/prv/patterns.d.ts.map +1 -0
- package/dist/src/prv/patterns.js +40 -0
- package/dist/src/prv/patterns.js.map +1 -0
- package/dist/src/prv/prv.d.ts +13 -0
- package/dist/src/prv/prv.d.ts.map +1 -0
- package/dist/src/prv/prv.js +22 -0
- package/dist/src/prv/prv.js.map +1 -0
- package/dist/src/prv/types.d.ts +26 -0
- package/dist/src/prv/types.d.ts.map +1 -0
- package/dist/src/prv/types.js +15 -0
- package/dist/src/prv/types.js.map +1 -0
- package/dist/src/safety/detectors/arbitrary-exec.detector.d.ts +3 -0
- package/dist/src/safety/detectors/arbitrary-exec.detector.d.ts.map +1 -0
- package/dist/src/safety/detectors/arbitrary-exec.detector.js +31 -0
- package/dist/src/safety/detectors/arbitrary-exec.detector.js.map +1 -0
- package/dist/src/safety/detectors/bulk-data-exfil.detector.d.ts +21 -0
- package/dist/src/safety/detectors/bulk-data-exfil.detector.d.ts.map +1 -0
- package/dist/src/safety/detectors/bulk-data-exfil.detector.js +90 -0
- package/dist/src/safety/detectors/bulk-data-exfil.detector.js.map +1 -0
- package/dist/src/safety/detectors/destructive.detector.d.ts +3 -0
- package/dist/src/safety/detectors/destructive.detector.d.ts.map +1 -0
- package/dist/src/safety/detectors/destructive.detector.js +28 -0
- package/dist/src/safety/detectors/destructive.detector.js.map +1 -0
- package/dist/src/safety/detectors/evasion.detector.d.ts +3 -0
- package/dist/src/safety/detectors/evasion.detector.d.ts.map +1 -0
- package/dist/src/safety/detectors/evasion.detector.js +28 -0
- package/dist/src/safety/detectors/evasion.detector.js.map +1 -0
- package/dist/src/safety/detectors/secret-access.detector.d.ts +31 -0
- package/dist/src/safety/detectors/secret-access.detector.d.ts.map +1 -0
- package/dist/src/safety/detectors/secret-access.detector.js +78 -0
- package/dist/src/safety/detectors/secret-access.detector.js.map +1 -0
- package/dist/src/safety/registry.d.ts +9 -0
- package/dist/src/safety/registry.d.ts.map +1 -0
- package/dist/src/safety/registry.js +22 -0
- package/dist/src/safety/registry.js.map +1 -0
- package/dist/src/safety/safety-gate.d.ts +16 -0
- package/dist/src/safety/safety-gate.d.ts.map +1 -0
- package/dist/src/safety/safety-gate.js +26 -0
- package/dist/src/safety/safety-gate.js.map +1 -0
- package/dist/src/safety/types.d.ts +35 -0
- package/dist/src/safety/types.d.ts.map +1 -0
- package/dist/src/safety/types.js +14 -0
- package/dist/src/safety/types.js.map +1 -0
- package/dist/src/shell/claude-shell.d.ts +63 -0
- package/dist/src/shell/claude-shell.d.ts.map +1 -0
- package/dist/src/shell/claude-shell.js +81 -0
- package/dist/src/shell/claude-shell.js.map +1 -0
- package/dist/src/shell/cli/friction-admin.d.ts +14 -0
- package/dist/src/shell/cli/friction-admin.d.ts.map +1 -0
- package/dist/src/shell/cli/friction-admin.js +276 -0
- package/dist/src/shell/cli/friction-admin.js.map +1 -0
- package/dist/src/shell/cli/friction-report.d.ts +16 -0
- package/dist/src/shell/cli/friction-report.d.ts.map +1 -0
- package/dist/src/shell/cli/friction-report.js +156 -0
- package/dist/src/shell/cli/friction-report.js.map +1 -0
- package/dist/src/shell/cli/main.d.ts +68 -0
- package/dist/src/shell/cli/main.d.ts.map +1 -0
- package/dist/src/shell/cli/main.js +488 -0
- package/dist/src/shell/cli/main.js.map +1 -0
- package/dist/src/shell/cli/use-steady.d.ts +26 -0
- package/dist/src/shell/cli/use-steady.d.ts.map +1 -0
- package/dist/src/shell/cli/use-steady.js +117 -0
- package/dist/src/shell/cli/use-steady.js.map +1 -0
- package/dist/src/shell/cursor-shell.d.ts +63 -0
- package/dist/src/shell/cursor-shell.d.ts.map +1 -0
- package/dist/src/shell/cursor-shell.js +88 -0
- package/dist/src/shell/cursor-shell.js.map +1 -0
- package/dist/src/shell/defaults.d.ts +51 -0
- package/dist/src/shell/defaults.d.ts.map +1 -0
- package/dist/src/shell/defaults.js +78 -0
- package/dist/src/shell/defaults.js.map +1 -0
- package/dist/src/shell/history-render.d.ts +56 -0
- package/dist/src/shell/history-render.d.ts.map +1 -0
- package/dist/src/shell/history-render.js +166 -0
- package/dist/src/shell/history-render.js.map +1 -0
- package/dist/src/shell/index.d.ts +43 -0
- package/dist/src/shell/index.d.ts.map +1 -0
- package/dist/src/shell/index.js +45 -0
- package/dist/src/shell/index.js.map +1 -0
- package/dist/src/shell/render.d.ts +42 -0
- package/dist/src/shell/render.d.ts.map +1 -0
- package/dist/src/shell/render.js +122 -0
- package/dist/src/shell/render.js.map +1 -0
- package/dist/src/shell/types.d.ts +46 -0
- package/dist/src/shell/types.d.ts.map +1 -0
- package/dist/src/shell/types.js +19 -0
- package/dist/src/shell/types.js.map +1 -0
- package/dist/src/shell/workflow-defaults.d.ts +23 -0
- package/dist/src/shell/workflow-defaults.d.ts.map +1 -0
- package/dist/src/shell/workflow-defaults.js +27 -0
- package/dist/src/shell/workflow-defaults.js.map +1 -0
- package/dist/src/shell/workflow-render.d.ts +54 -0
- package/dist/src/shell/workflow-render.d.ts.map +1 -0
- package/dist/src/shell/workflow-render.js +319 -0
- package/dist/src/shell/workflow-render.js.map +1 -0
- package/dist/src/shell/workflow-shell.d.ts +110 -0
- package/dist/src/shell/workflow-shell.d.ts.map +1 -0
- package/dist/src/shell/workflow-shell.js +180 -0
- package/dist/src/shell/workflow-shell.js.map +1 -0
- package/dist/src/skills/audit.d.ts +118 -0
- package/dist/src/skills/audit.d.ts.map +1 -0
- package/dist/src/skills/audit.js +147 -0
- package/dist/src/skills/audit.js.map +1 -0
- package/dist/src/skills/invocation.d.ts +131 -0
- package/dist/src/skills/invocation.d.ts.map +1 -0
- package/dist/src/skills/invocation.js +165 -0
- package/dist/src/skills/invocation.js.map +1 -0
- package/dist/src/skills/loader.d.ts +70 -0
- package/dist/src/skills/loader.d.ts.map +1 -0
- package/dist/src/skills/loader.js +220 -0
- package/dist/src/skills/loader.js.map +1 -0
- package/dist/src/skills/local-recovery-adapter.d.ts +49 -0
- package/dist/src/skills/local-recovery-adapter.d.ts.map +1 -0
- package/dist/src/skills/local-recovery-adapter.js +184 -0
- package/dist/src/skills/local-recovery-adapter.js.map +1 -0
- package/dist/src/skills/parser.d.ts +53 -0
- package/dist/src/skills/parser.d.ts.map +1 -0
- package/dist/src/skills/parser.js +336 -0
- package/dist/src/skills/parser.js.map +1 -0
- package/dist/src/skills/registry.d.ts +123 -0
- package/dist/src/skills/registry.d.ts.map +1 -0
- package/dist/src/skills/registry.js +144 -0
- package/dist/src/skills/registry.js.map +1 -0
- package/dist/src/skills/types.d.ts +242 -0
- package/dist/src/skills/types.d.ts.map +1 -0
- package/dist/src/skills/types.js +50 -0
- package/dist/src/skills/types.js.map +1 -0
- package/dist/src/skills/validator.d.ts +31 -0
- package/dist/src/skills/validator.d.ts.map +1 -0
- package/dist/src/skills/validator.js +366 -0
- package/dist/src/skills/validator.js.map +1 -0
- package/dist/src/ucp/envelope.d.ts +165 -0
- package/dist/src/ucp/envelope.d.ts.map +1 -0
- package/dist/src/ucp/envelope.js +241 -0
- package/dist/src/ucp/envelope.js.map +1 -0
- package/dist/src/ucp/hashes.d.ts +36 -0
- package/dist/src/ucp/hashes.d.ts.map +1 -0
- package/dist/src/ucp/hashes.js +59 -0
- package/dist/src/ucp/hashes.js.map +1 -0
- package/dist/src/ucp/mappers/map-artifact.d.ts +58 -0
- package/dist/src/ucp/mappers/map-artifact.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-artifact.js +51 -0
- package/dist/src/ucp/mappers/map-artifact.js.map +1 -0
- package/dist/src/ucp/mappers/map-change-interpretation.d.ts +12 -0
- package/dist/src/ucp/mappers/map-change-interpretation.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-change-interpretation.js +18 -0
- package/dist/src/ucp/mappers/map-change-interpretation.js.map +1 -0
- package/dist/src/ucp/mappers/map-completion.d.ts +10 -0
- package/dist/src/ucp/mappers/map-completion.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-completion.js +24 -0
- package/dist/src/ucp/mappers/map-completion.js.map +1 -0
- package/dist/src/ucp/mappers/map-context.d.ts +9 -0
- package/dist/src/ucp/mappers/map-context.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-context.js +13 -0
- package/dist/src/ucp/mappers/map-context.js.map +1 -0
- package/dist/src/ucp/mappers/map-debug-trace.d.ts +10 -0
- package/dist/src/ucp/mappers/map-debug-trace.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-debug-trace.js +18 -0
- package/dist/src/ucp/mappers/map-debug-trace.js.map +1 -0
- package/dist/src/ucp/mappers/map-disambiguation.d.ts +10 -0
- package/dist/src/ucp/mappers/map-disambiguation.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-disambiguation.js +21 -0
- package/dist/src/ucp/mappers/map-disambiguation.js.map +1 -0
- package/dist/src/ucp/mappers/map-execution-trace.d.ts +64 -0
- package/dist/src/ucp/mappers/map-execution-trace.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-execution-trace.js +57 -0
- package/dist/src/ucp/mappers/map-execution-trace.js.map +1 -0
- package/dist/src/ucp/mappers/map-intent-interpretation.d.ts +11 -0
- package/dist/src/ucp/mappers/map-intent-interpretation.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-intent-interpretation.js +17 -0
- package/dist/src/ucp/mappers/map-intent-interpretation.js.map +1 -0
- package/dist/src/ucp/mappers/map-intent.d.ts +9 -0
- package/dist/src/ucp/mappers/map-intent.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-intent.js +11 -0
- package/dist/src/ucp/mappers/map-intent.js.map +1 -0
- package/dist/src/ucp/mappers/map-prv.d.ts +10 -0
- package/dist/src/ucp/mappers/map-prv.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-prv.js +14 -0
- package/dist/src/ucp/mappers/map-prv.js.map +1 -0
- package/dist/src/ucp/mappers/map-reminder-execution.d.ts +57 -0
- package/dist/src/ucp/mappers/map-reminder-execution.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-reminder-execution.js +69 -0
- package/dist/src/ucp/mappers/map-reminder-execution.js.map +1 -0
- package/dist/src/ucp/mappers/map-replay-report.d.ts +81 -0
- package/dist/src/ucp/mappers/map-replay-report.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-replay-report.js +76 -0
- package/dist/src/ucp/mappers/map-replay-report.js.map +1 -0
- package/dist/src/ucp/mappers/map-response.d.ts +13 -0
- package/dist/src/ucp/mappers/map-response.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-response.js +25 -0
- package/dist/src/ucp/mappers/map-response.js.map +1 -0
- package/dist/src/ucp/mappers/map-safety.d.ts +14 -0
- package/dist/src/ucp/mappers/map-safety.d.ts.map +1 -0
- package/dist/src/ucp/mappers/map-safety.js +22 -0
- package/dist/src/ucp/mappers/map-safety.js.map +1 -0
- package/dist/src/ucp/persistence/index.d.ts +24 -0
- package/dist/src/ucp/persistence/index.d.ts.map +1 -0
- package/dist/src/ucp/persistence/index.js +22 -0
- package/dist/src/ucp/persistence/index.js.map +1 -0
- package/dist/src/ucp/persistence/query.d.ts +164 -0
- package/dist/src/ucp/persistence/query.d.ts.map +1 -0
- package/dist/src/ucp/persistence/query.js +240 -0
- package/dist/src/ucp/persistence/query.js.map +1 -0
- package/dist/src/ucp/persistence/reader.d.ts +43 -0
- package/dist/src/ucp/persistence/reader.d.ts.map +1 -0
- package/dist/src/ucp/persistence/reader.js +104 -0
- package/dist/src/ucp/persistence/reader.js.map +1 -0
- package/dist/src/ucp/persistence/store.d.ts +77 -0
- package/dist/src/ucp/persistence/store.d.ts.map +1 -0
- package/dist/src/ucp/persistence/store.js +177 -0
- package/dist/src/ucp/persistence/store.js.map +1 -0
- package/dist/src/ucp/persistence/write.d.ts +48 -0
- package/dist/src/ucp/persistence/write.d.ts.map +1 -0
- package/dist/src/ucp/persistence/write.js +59 -0
- package/dist/src/ucp/persistence/write.js.map +1 -0
- package/dist/src/ucp/projection.d.ts +146 -0
- package/dist/src/ucp/projection.d.ts.map +1 -0
- package/dist/src/ucp/projection.js +139 -0
- package/dist/src/ucp/projection.js.map +1 -0
- package/dist/src/ucp/types.d.ts +585 -0
- package/dist/src/ucp/types.d.ts.map +1 -0
- package/dist/src/ucp/types.js +57 -0
- package/dist/src/ucp/types.js.map +1 -0
- package/dist/src/understand/completion/completion.d.ts +26 -0
- package/dist/src/understand/completion/completion.d.ts.map +1 -0
- package/dist/src/understand/completion/completion.js +45 -0
- package/dist/src/understand/completion/completion.js.map +1 -0
- package/dist/src/understand/completion/rules.d.ts +61 -0
- package/dist/src/understand/completion/rules.d.ts.map +1 -0
- package/dist/src/understand/completion/rules.js +268 -0
- package/dist/src/understand/completion/rules.js.map +1 -0
- package/dist/src/understand/completion/types.d.ts +68 -0
- package/dist/src/understand/completion/types.d.ts.map +1 -0
- package/dist/src/understand/completion/types.js +34 -0
- package/dist/src/understand/completion/types.js.map +1 -0
- package/dist/src/understand/context/context-alignment.d.ts +18 -0
- package/dist/src/understand/context/context-alignment.d.ts.map +1 -0
- package/dist/src/understand/context/context-alignment.js +61 -0
- package/dist/src/understand/context/context-alignment.js.map +1 -0
- package/dist/src/understand/context/types.d.ts +20 -0
- package/dist/src/understand/context/types.d.ts.map +1 -0
- package/dist/src/understand/context/types.js +13 -0
- package/dist/src/understand/context/types.js.map +1 -0
- package/dist/src/understand/disambiguation/detectors/missing-context.detector.d.ts +12 -0
- package/dist/src/understand/disambiguation/detectors/missing-context.detector.d.ts.map +1 -0
- package/dist/src/understand/disambiguation/detectors/missing-context.detector.js +60 -0
- package/dist/src/understand/disambiguation/detectors/missing-context.detector.js.map +1 -0
- package/dist/src/understand/disambiguation/detectors/overloaded-term.detector.d.ts +13 -0
- package/dist/src/understand/disambiguation/detectors/overloaded-term.detector.d.ts.map +1 -0
- package/dist/src/understand/disambiguation/detectors/overloaded-term.detector.js +57 -0
- package/dist/src/understand/disambiguation/detectors/overloaded-term.detector.js.map +1 -0
- package/dist/src/understand/disambiguation/detectors/typo-adjacent.detector.d.ts +16 -0
- package/dist/src/understand/disambiguation/detectors/typo-adjacent.detector.d.ts.map +1 -0
- package/dist/src/understand/disambiguation/detectors/typo-adjacent.detector.js +56 -0
- package/dist/src/understand/disambiguation/detectors/typo-adjacent.detector.js.map +1 -0
- package/dist/src/understand/disambiguation/registry.d.ts +14 -0
- package/dist/src/understand/disambiguation/registry.d.ts.map +1 -0
- package/dist/src/understand/disambiguation/registry.js +27 -0
- package/dist/src/understand/disambiguation/registry.js.map +1 -0
- package/dist/src/understand/disambiguation/types.d.ts +34 -0
- package/dist/src/understand/disambiguation/types.d.ts.map +1 -0
- package/dist/src/understand/disambiguation/types.js +15 -0
- package/dist/src/understand/disambiguation/types.js.map +1 -0
- package/dist/src/understand/intent-interpretation/intent-interpretation.d.ts +86 -0
- package/dist/src/understand/intent-interpretation/intent-interpretation.d.ts.map +1 -0
- package/dist/src/understand/intent-interpretation/intent-interpretation.js +141 -0
- package/dist/src/understand/intent-interpretation/intent-interpretation.js.map +1 -0
- package/dist/src/understand/intent-interpretation/interpreters/color-intent.interpreter.d.ts +33 -0
- package/dist/src/understand/intent-interpretation/interpreters/color-intent.interpreter.d.ts.map +1 -0
- package/dist/src/understand/intent-interpretation/interpreters/color-intent.interpreter.js +66 -0
- package/dist/src/understand/intent-interpretation/interpreters/color-intent.interpreter.js.map +1 -0
- package/dist/src/understand/intent-interpretation/interpreters/config-intent.interpreter.d.ts +20 -0
- package/dist/src/understand/intent-interpretation/interpreters/config-intent.interpreter.d.ts.map +1 -0
- package/dist/src/understand/intent-interpretation/interpreters/config-intent.interpreter.js +80 -0
- package/dist/src/understand/intent-interpretation/interpreters/config-intent.interpreter.js.map +1 -0
- package/dist/src/understand/intent-interpretation/interpreters/text-intent.interpreter.d.ts +25 -0
- package/dist/src/understand/intent-interpretation/interpreters/text-intent.interpreter.d.ts.map +1 -0
- package/dist/src/understand/intent-interpretation/interpreters/text-intent.interpreter.js +47 -0
- package/dist/src/understand/intent-interpretation/interpreters/text-intent.interpreter.js.map +1 -0
- package/dist/src/understand/intent-interpretation/interpreters/workflow-intent.interpreter.d.ts +35 -0
- package/dist/src/understand/intent-interpretation/interpreters/workflow-intent.interpreter.d.ts.map +1 -0
- package/dist/src/understand/intent-interpretation/interpreters/workflow-intent.interpreter.js +89 -0
- package/dist/src/understand/intent-interpretation/interpreters/workflow-intent.interpreter.js.map +1 -0
- package/dist/src/understand/intent-interpretation/registry.d.ts +18 -0
- package/dist/src/understand/intent-interpretation/registry.d.ts.map +1 -0
- package/dist/src/understand/intent-interpretation/registry.js +26 -0
- package/dist/src/understand/intent-interpretation/registry.js.map +1 -0
- package/dist/src/understand/intent-interpretation/types.d.ts +83 -0
- package/dist/src/understand/intent-interpretation/types.d.ts.map +1 -0
- package/dist/src/understand/intent-interpretation/types.js +40 -0
- package/dist/src/understand/intent-interpretation/types.js.map +1 -0
- package/dist/src/understand/interpretation/intent.d.ts +72 -0
- package/dist/src/understand/interpretation/intent.d.ts.map +1 -0
- package/dist/src/understand/interpretation/intent.js +414 -0
- package/dist/src/understand/interpretation/intent.js.map +1 -0
- package/dist/src/understand/interpretation/interpretation.d.ts +26 -0
- package/dist/src/understand/interpretation/interpretation.d.ts.map +1 -0
- package/dist/src/understand/interpretation/interpretation.js +43 -0
- package/dist/src/understand/interpretation/interpretation.js.map +1 -0
- package/dist/src/understand/interpretation/parser.d.ts +20 -0
- package/dist/src/understand/interpretation/parser.d.ts.map +1 -0
- package/dist/src/understand/interpretation/parser.js +88 -0
- package/dist/src/understand/interpretation/parser.js.map +1 -0
- package/dist/src/understand/interpretation/rules.d.ts +19 -0
- package/dist/src/understand/interpretation/rules.d.ts.map +1 -0
- package/dist/src/understand/interpretation/rules.js +222 -0
- package/dist/src/understand/interpretation/rules.js.map +1 -0
- package/dist/src/understand/interpretation/types.d.ts +90 -0
- package/dist/src/understand/interpretation/types.d.ts.map +1 -0
- package/dist/src/understand/interpretation/types.js +29 -0
- package/dist/src/understand/interpretation/types.js.map +1 -0
- package/dist/src/understand/shared/types.d.ts +13 -0
- package/dist/src/understand/shared/types.d.ts.map +1 -0
- package/dist/src/understand/shared/types.js +9 -0
- package/dist/src/understand/shared/types.js.map +1 -0
- package/dist/src/understand/silent-guidance/index.d.ts +4 -0
- package/dist/src/understand/silent-guidance/index.d.ts.map +1 -0
- package/dist/src/understand/silent-guidance/index.js +3 -0
- package/dist/src/understand/silent-guidance/index.js.map +1 -0
- package/dist/src/understand/silent-guidance/selector.d.ts +44 -0
- package/dist/src/understand/silent-guidance/selector.d.ts.map +1 -0
- package/dist/src/understand/silent-guidance/selector.js +158 -0
- package/dist/src/understand/silent-guidance/selector.js.map +1 -0
- package/dist/src/understand/silent-guidance/templates.d.ts +31 -0
- package/dist/src/understand/silent-guidance/templates.d.ts.map +1 -0
- package/dist/src/understand/silent-guidance/templates.js +109 -0
- package/dist/src/understand/silent-guidance/templates.js.map +1 -0
- package/dist/src/understand/silent-guidance/types.d.ts +36 -0
- package/dist/src/understand/silent-guidance/types.d.ts.map +1 -0
- package/dist/src/understand/silent-guidance/types.js +2 -0
- package/dist/src/understand/silent-guidance/types.js.map +1 -0
- package/dist/src/workflow/coordinator.d.ts +197 -0
- package/dist/src/workflow/coordinator.d.ts.map +1 -0
- package/dist/src/workflow/coordinator.js +682 -0
- package/dist/src/workflow/coordinator.js.map +1 -0
- package/dist/src/workflow/index.d.ts +30 -0
- package/dist/src/workflow/index.d.ts.map +1 -0
- package/dist/src/workflow/index.js +30 -0
- package/dist/src/workflow/index.js.map +1 -0
- package/dist/src/workflow/types.d.ts +213 -0
- package/dist/src/workflow/types.d.ts.map +1 -0
- package/dist/src/workflow/types.js +27 -0
- package/dist/src/workflow/types.js.map +1 -0
- package/package.json +54 -0
- package/ui/README.md +73 -0
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Silent Guidance Mode Selector.
|
|
3
|
+
*
|
|
4
|
+
* Inspects the raw input for shape-level signals and returns the most
|
|
5
|
+
* appropriate guidance template mode.
|
|
6
|
+
*
|
|
7
|
+
* ── Contracts ────────────────────────────────────────────────────────────────
|
|
8
|
+
*
|
|
9
|
+
* 1. Only called when bridgeSilenceReason === "no_interpreter_claimed".
|
|
10
|
+
* 2. Deterministic: same input → same mode, always.
|
|
11
|
+
* 3. Returns a mode — never null. "unknown" is the safe fallback.
|
|
12
|
+
* 4. Does NOT classify intent. Does NOT produce category/confidence.
|
|
13
|
+
* 5. Does NOT guess tools, services, file paths, or values.
|
|
14
|
+
* 6. Does NOT affect mode, signal, intentState, or any decision.
|
|
15
|
+
* 7. Regex match priority: investigation → operation → content_iteration → unknown.
|
|
16
|
+
* First match wins. This ordering prevents cross-domain false positives.
|
|
17
|
+
*
|
|
18
|
+
* ── Pattern philosophy ────────────────────────────────────────────────────────
|
|
19
|
+
*
|
|
20
|
+
* Patterns are narrow, not broad. Better to fall through to "unknown"
|
|
21
|
+
* (which still shows improved guidance over the old code-patch default)
|
|
22
|
+
* than to claim a mode incorrectly.
|
|
23
|
+
*
|
|
24
|
+
* Each pattern targets high-signal, low-ambiguity tokens:
|
|
25
|
+
* - "debug" is always QA; "deploy" is always ops; "tagline" is always content.
|
|
26
|
+
* - Ambiguous terms like "improve", "fix", "check" are deliberately excluded
|
|
27
|
+
* unless combined with a domain-specific qualifier.
|
|
28
|
+
*/
|
|
29
|
+
// ── Pattern sets ───────────────────────────────────────────────────────────────
|
|
30
|
+
/**
|
|
31
|
+
* QA, debugging, bug reproduction, smoke testing, mocking.
|
|
32
|
+
* Also covers analytical investigation verbs: analyze, monitor, verify.
|
|
33
|
+
* Extended with diagnostic verbs: inspect, trace, diagnose, troubleshoot.
|
|
34
|
+
*
|
|
35
|
+
* ── Expansion (Sessions 4–5) ──────────────────────────────────────────────────
|
|
36
|
+
*
|
|
37
|
+
* Added analyz\w+ (analyze, analyzes, analyzing, analysing — any stem form).
|
|
38
|
+
* Added monitor: "monitor the error rate" → investigation, not ops.
|
|
39
|
+
* Added verify: "verify the deployment health" → investigation.
|
|
40
|
+
*
|
|
41
|
+
* These cleared C1 (≥ 2 cross-persona recurrences) and C3 (clear category)
|
|
42
|
+
* in Session 5 before being added. C2 still fails — interpreter remains NO-GO.
|
|
43
|
+
*
|
|
44
|
+
* Priority: investigation runs before operation. When "monitor the ingestion
|
|
45
|
+
* pipeline" is tested, `monitor\b` fires here instead of `pipeline\b` in
|
|
46
|
+
* OPERATION_RE. That is the correct outcome.
|
|
47
|
+
*
|
|
48
|
+
* ── Expansion (Session 6) ─────────────────────────────────────────────────────
|
|
49
|
+
*
|
|
50
|
+
* Added inspect: 3/3 recurrences across 3 personas (Dan, Syd, Pat).
|
|
51
|
+
* Added trac(?:e|ing): "trace the query" / "tracing the call" — investigation.
|
|
52
|
+
* Added diagnos\w+: diagnose, diagnosing, diagnosis, diagnostic.
|
|
53
|
+
* 4 cross-persona recurrences (Syd, Pat, Donna, Maya).
|
|
54
|
+
* Added troubleshoot\w*: troubleshoot, troubleshooting.
|
|
55
|
+
* 1 occurrence in Session 6 (Syd), eligible by C3 alone;
|
|
56
|
+
* diagnose+troubleshoot share semantic class, so combined
|
|
57
|
+
* C1 passes. Both fail C2 — no interpreter candidate.
|
|
58
|
+
*
|
|
59
|
+
* Note on "debug": debug is already in this pattern (added in v1). After the
|
|
60
|
+
* Session 6 config_change fix (removing bare "debug" from CONFIG_NOUNS_RE),
|
|
61
|
+
* "debug the X" inputs are now bridge-silent and correctly route here.
|
|
62
|
+
* No change to the debug token was needed.
|
|
63
|
+
*/
|
|
64
|
+
const INVESTIGATION_RE = /\b(?:debug|bug|repro(?:duce)?|flak[iy]|smoke[\s-]test|mock(?:ing)?|test\s+(?:coverage|fixtures?|cases?)|coverage\s+report(?:ing)?|analyz\w+|monitor|verify|inspect|trac(?:e|ing)|diagnos\w+|troubleshoot\w*)\b/i;
|
|
65
|
+
/**
|
|
66
|
+
* Infrastructure ops, deployments, pipelines, schema changes, migrations.
|
|
67
|
+
* Also covers export, sync, scale (extended nouns), launch, roll-out.
|
|
68
|
+
*
|
|
69
|
+
* ── Expansion (Sessions 4–5) ──────────────────────────────────────────────────
|
|
70
|
+
*
|
|
71
|
+
* scale — extended to cover workers, fleet, replicas, pods, instances, nodes.
|
|
72
|
+
* Previously only matched service/app/cluster; Sessions 4–5 confirmed the
|
|
73
|
+
* broader noun set recurs across DevOps and SRE personas.
|
|
74
|
+
*
|
|
75
|
+
* export\b — standalone is sufficient; context is always data/artifact movement.
|
|
76
|
+
* 4 cross-persona recurrences (Sam, Nia, Fay, Kai) cleared C1+C3.
|
|
77
|
+
*
|
|
78
|
+
* sync\b — data/state synchronisation; 2 cross-persona recurrences (Leo, Kai).
|
|
79
|
+
*
|
|
80
|
+
* launch\b + roll[\s-]out\b — product/feature deployment verbs.
|
|
81
|
+
* 'deploy' was already covered; 'launch' and 'roll-out' were not.
|
|
82
|
+
* Note: 'launch the new feature' previously false-fired config_change via
|
|
83
|
+
* the 'feature' noun. That noun was removed from CONFIG_NOUNS_RE (see
|
|
84
|
+
* config-intent.interpreter.ts). Adding 'launch\b' here is now safe.
|
|
85
|
+
*
|
|
86
|
+
* ── Expansion (Session 7 — CRM/ticket vocabulary) ─────────────────────────────
|
|
87
|
+
*
|
|
88
|
+
* Evidence gate results (Session 7 report):
|
|
89
|
+
* suspend C1 ✓ (4 personas) C2 ✓ (non-execute) C3 → ops
|
|
90
|
+
* assign C1 ✓ (4 personas) C2 ✓ C3 → ops
|
|
91
|
+
* escalate C1 ✓ (4 personas) C2 ✓ C3 → ops
|
|
92
|
+
* merge C1 ✓ (3 personas) C2 ✓ C3 → ops
|
|
93
|
+
* lock C1 ✓ (2 personas) C2 ✓ C3 → ops
|
|
94
|
+
*
|
|
95
|
+
* Patterns added:
|
|
96
|
+
* suspend\b — account / user / service suspension
|
|
97
|
+
* assign\b — ticket / case assignment
|
|
98
|
+
* escalat\w+ — escalate, escalating, escalation
|
|
99
|
+
* merge\b — ticket, case, account, or record merge
|
|
100
|
+
* lock\b — account / ticket lock
|
|
101
|
+
*
|
|
102
|
+
* ── Expansion (Session 7 — Ops lifecycle vocabulary) ──────────────────────────
|
|
103
|
+
*
|
|
104
|
+
* Evidence gate results (Session 7 report):
|
|
105
|
+
* rotate C1 ✓ (4 personas) C2 ✓ C3 → ops
|
|
106
|
+
* upgrade C1 ✓ (4 personas) C2 ✓ C3 → ops
|
|
107
|
+
* provision C1 ✓ (4 personas) C2 ✓ C3 → ops
|
|
108
|
+
* failover C1 ✓ (3 personas) C2 ✓ C3 → ops
|
|
109
|
+
* patch C1 ✓ (3 personas) C2 ✓ C3 → ops
|
|
110
|
+
* drain C1 ✓ (2 personas) C2 ✓ C3 → ops
|
|
111
|
+
*
|
|
112
|
+
* Patterns added:
|
|
113
|
+
* rotat\w+\s+(?:(?:\w[\w-]*)\s+){0,3}(?:keys?|secrets?|credentials?|tokens?|certs?|certificates?|api[\s-]keys?)
|
|
114
|
+
* — DELIBERATELY SCOPED to credential/key rotation only.
|
|
115
|
+
* Allows up to 3 qualifier words between "rotate" and the credential
|
|
116
|
+
* noun so that "rotate the TLS certificates" and "rotate expired API keys"
|
|
117
|
+
* both match, while "rotate customer passwords" does not match (passwords
|
|
118
|
+
* is not a credential noun in this list — it is a data record noun covered
|
|
119
|
+
* by the bulk_data_exfiltration safety detector which runs first).
|
|
120
|
+
*
|
|
121
|
+
* upgrade\b — service, cluster, dependency upgrade
|
|
122
|
+
* provision\w* — provision, provisioning, provisioned
|
|
123
|
+
* failover\b — explicit, unambiguous
|
|
124
|
+
* drain\b — drain node, drain traffic, drain queue
|
|
125
|
+
* patch\b — ops security/service patch (NOT the structured change command
|
|
126
|
+
* `patch <file> search=…`; that format is consumed by the
|
|
127
|
+
* completion layer before the selector is ever called)
|
|
128
|
+
*/
|
|
129
|
+
const OPERATION_RE = /\b(?:deploy(?:ment)?|rollback|restart|reboot|pipeline|migrat(?:e|ions?)|health[\s-]check|launch|roll[\s-]out|export|sync|add\s+(?:a\s+|an\s+)?(?:column|index)|update\s+the\s+schema|schema\s+change|run\s+(?:the\s+)?(?:pipeline|job|server|service|migrations?)|optimize\s+(?:the\s+)?(?:query|queries|slow\s+query)|scale\s+(?:the\s+)?(?:service|app|cluster|workers?|fleet|replicas?|pods?|instances?|nodes?)|suspend|assign|escalat\w+|merge|lock|rotat\w+\s+(?:(?:\w[\w-]*)\s+){0,3}(?:keys?|secrets?|credentials?|tokens?|certs?|certificates?|api[\s-]keys?)|upgrade|provision\w*|failover|drain|patch)\b/i;
|
|
130
|
+
/**
|
|
131
|
+
* Copy, UX text, product descriptions, taglines, user flows.
|
|
132
|
+
* Only high-signal content/product vocabulary — avoids over-matching.
|
|
133
|
+
*/
|
|
134
|
+
const CONTENT_ITERATION_RE = /\b(tagline\b|compelling\b|testimonial(?:s)?\b|onboarding\b|user[\s-]flow\b|checkout[\s-]flow\b|product[\s-]description\b|improve\s+the\s+(?:user|product|content|copy|experience|flow|ux)\b|make\b.{0,25}\bmore\s+(?:compelling|engaging)\b)\b/i;
|
|
135
|
+
// ── Selector ──────────────────────────────────────────────────────────────────
|
|
136
|
+
/**
|
|
137
|
+
* Select the appropriate silent guidance template mode for a bridge-silent flow.
|
|
138
|
+
*
|
|
139
|
+
* Priority (first match wins):
|
|
140
|
+
* 1. investigation — QA / debugging signals
|
|
141
|
+
* 2. operation — infra / schema / pipeline signals
|
|
142
|
+
* 3. content_iteration — copy / UX / product signals
|
|
143
|
+
* 4. unknown — safe fallback (still better than code-patch default)
|
|
144
|
+
*
|
|
145
|
+
* "code_patch" is never returned here; it applies only when an interpreter
|
|
146
|
+
* already fired (bridgeFired === true), meaning the request is already
|
|
147
|
+
* enriched and needs no silent mode template.
|
|
148
|
+
*/
|
|
149
|
+
export function selectSilentGuidanceMode(input) {
|
|
150
|
+
if (INVESTIGATION_RE.test(input))
|
|
151
|
+
return "investigation";
|
|
152
|
+
if (OPERATION_RE.test(input))
|
|
153
|
+
return "operation";
|
|
154
|
+
if (CONTENT_ITERATION_RE.test(input))
|
|
155
|
+
return "content_iteration";
|
|
156
|
+
return "unknown";
|
|
157
|
+
}
|
|
158
|
+
//# sourceMappingURL=selector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selector.js","sourceRoot":"","sources":["../../../../src/understand/silent-guidance/selector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH,kFAAkF;AAElF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,gBAAgB,GACpB,iNAAiN,CAAC;AAEpN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH,MAAM,YAAY,GAChB,qlBAAqlB,CAAC;AAExlB;;;GAGG;AACH,MAAM,oBAAoB,GACxB,iPAAiP,CAAC;AAEpP,iFAAiF;AAEjF;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAa;IACpD,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,eAAe,CAAC;IACzD,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;QAAM,OAAO,WAAW,CAAC;IACrD,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,mBAAmB,CAAC;IACjE,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Silent Guidance Templates.
|
|
3
|
+
*
|
|
4
|
+
* Maps each SilentGuidanceMode to a set of generic, domain-appropriate
|
|
5
|
+
* CompletionNextStep entries. These replace the code-patch default
|
|
6
|
+
* for bridge-silent flows.
|
|
7
|
+
*
|
|
8
|
+
* ── Template contracts ────────────────────────────────────────────────────────
|
|
9
|
+
*
|
|
10
|
+
* - Every template has exactly 3 steps (read_first, use_exact_format,
|
|
11
|
+
* add_missing_field) — the same structural shape as the code-patch default.
|
|
12
|
+
* - No template invents specifics (file names, tool names, table names, etc.).
|
|
13
|
+
* - No template implies executability. All remain in guide mode territory.
|
|
14
|
+
* - Templates use angle-bracket placeholders for values the user must supply.
|
|
15
|
+
*
|
|
16
|
+
* ── Why 3 steps ──────────────────────────────────────────────────────────────
|
|
17
|
+
*
|
|
18
|
+
* read_first — orients the user: gather information before acting
|
|
19
|
+
* use_exact_format — shows the deterministic format to express the change
|
|
20
|
+
* add_missing_field — names what the user must provide to make it actionable
|
|
21
|
+
*/
|
|
22
|
+
import type { CompletionNextStep } from "../completion/types.js";
|
|
23
|
+
import type { SilentGuidanceMode } from "./types.js";
|
|
24
|
+
/**
|
|
25
|
+
* Return the generic next-step template for a given silent guidance mode.
|
|
26
|
+
*
|
|
27
|
+
* Returns a read-only array with exactly 3 steps.
|
|
28
|
+
* The array is a module-level constant — no allocation on each call.
|
|
29
|
+
*/
|
|
30
|
+
export declare function getSilentGuidanceSteps(mode: SilentGuidanceMode): readonly CompletionNextStep[];
|
|
31
|
+
//# sourceMappingURL=templates.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../../../src/understand/silent-guidance/templates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAiFrD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,kBAAkB,GACvB,SAAS,kBAAkB,EAAE,CAQ/B"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Silent Guidance Templates.
|
|
3
|
+
*
|
|
4
|
+
* Maps each SilentGuidanceMode to a set of generic, domain-appropriate
|
|
5
|
+
* CompletionNextStep entries. These replace the code-patch default
|
|
6
|
+
* for bridge-silent flows.
|
|
7
|
+
*
|
|
8
|
+
* ── Template contracts ────────────────────────────────────────────────────────
|
|
9
|
+
*
|
|
10
|
+
* - Every template has exactly 3 steps (read_first, use_exact_format,
|
|
11
|
+
* add_missing_field) — the same structural shape as the code-patch default.
|
|
12
|
+
* - No template invents specifics (file names, tool names, table names, etc.).
|
|
13
|
+
* - No template implies executability. All remain in guide mode territory.
|
|
14
|
+
* - Templates use angle-bracket placeholders for values the user must supply.
|
|
15
|
+
*
|
|
16
|
+
* ── Why 3 steps ──────────────────────────────────────────────────────────────
|
|
17
|
+
*
|
|
18
|
+
* read_first — orients the user: gather information before acting
|
|
19
|
+
* use_exact_format — shows the deterministic format to express the change
|
|
20
|
+
* add_missing_field — names what the user must provide to make it actionable
|
|
21
|
+
*/
|
|
22
|
+
// ── Templates ──────────────────────────────────────────────────────────────────
|
|
23
|
+
const INVESTIGATION_STEPS = [
|
|
24
|
+
{
|
|
25
|
+
type: "read_first",
|
|
26
|
+
label: "Identify where the issue occurs and gather observable evidence before making any change.",
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
type: "use_exact_format",
|
|
30
|
+
label: 'Read the relevant file or test once you have identified the target: read "<file>"',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
type: "add_missing_field",
|
|
34
|
+
label: "Provide the exact symptom, test name, or failure condition so the change can be targeted.",
|
|
35
|
+
},
|
|
36
|
+
];
|
|
37
|
+
const OPERATION_STEPS = [
|
|
38
|
+
{
|
|
39
|
+
type: "read_first",
|
|
40
|
+
label: "Identify the specific tool, service, or system this operation applies to.",
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
type: "use_exact_format",
|
|
44
|
+
label: 'Locate the exact command, config, query, or migration needed: read "<config-or-migration-file>"',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
type: "add_missing_field",
|
|
48
|
+
label: "Specify what it acts on (service name, table, environment) and what the expected outcome is.",
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
const CONTENT_ITERATION_STEPS = [
|
|
52
|
+
{
|
|
53
|
+
type: "read_first",
|
|
54
|
+
label: 'Read the file containing the current text or content element: read "<file>"',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
type: "use_exact_format",
|
|
58
|
+
label: 'Apply the change using the exact format: replace "<current text>" with "<new text>" in "<file>"',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
type: "add_missing_field",
|
|
62
|
+
label: "Provide the specific new wording or content you want to use.",
|
|
63
|
+
},
|
|
64
|
+
];
|
|
65
|
+
const CODE_PATCH_STEPS = [
|
|
66
|
+
{
|
|
67
|
+
type: "read_first",
|
|
68
|
+
label: 'Read the relevant file first: read "<file>"',
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
type: "use_exact_format",
|
|
72
|
+
label: 'Apply the change: replace "<old>" with "<new>" in "<file>"',
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
type: "add_missing_field",
|
|
76
|
+
label: "Specify the exact file path, old value, and new value.",
|
|
77
|
+
},
|
|
78
|
+
];
|
|
79
|
+
const UNKNOWN_STEPS = [
|
|
80
|
+
{
|
|
81
|
+
type: "read_first",
|
|
82
|
+
label: "Break this request into one specific, deterministic change before proceeding.",
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: "use_exact_format",
|
|
86
|
+
label: 'Use one of these exact formats: read "<file>" | replace "<old>" with "<new>" in "<file>" | commit "<message>"',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: "add_missing_field",
|
|
90
|
+
label: "Specify the exact file, value, or target this request applies to.",
|
|
91
|
+
},
|
|
92
|
+
];
|
|
93
|
+
// ── Lookup ──────────────────────────────────────────────────────────────────────
|
|
94
|
+
/**
|
|
95
|
+
* Return the generic next-step template for a given silent guidance mode.
|
|
96
|
+
*
|
|
97
|
+
* Returns a read-only array with exactly 3 steps.
|
|
98
|
+
* The array is a module-level constant — no allocation on each call.
|
|
99
|
+
*/
|
|
100
|
+
export function getSilentGuidanceSteps(mode) {
|
|
101
|
+
switch (mode) {
|
|
102
|
+
case "investigation": return INVESTIGATION_STEPS;
|
|
103
|
+
case "operation": return OPERATION_STEPS;
|
|
104
|
+
case "content_iteration": return CONTENT_ITERATION_STEPS;
|
|
105
|
+
case "code_patch": return CODE_PATCH_STEPS;
|
|
106
|
+
case "unknown": return UNKNOWN_STEPS;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=templates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../../../src/understand/silent-guidance/templates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAKH,kFAAkF;AAElF,MAAM,mBAAmB,GAAkC;IACzD;QACE,IAAI,EAAG,YAAY;QACnB,KAAK,EAAE,0FAA0F;KAClG;IACD;QACE,IAAI,EAAG,kBAAkB;QACzB,KAAK,EAAE,mFAAmF;KAC3F;IACD;QACE,IAAI,EAAG,mBAAmB;QAC1B,KAAK,EAAE,2FAA2F;KACnG;CACF,CAAC;AAEF,MAAM,eAAe,GAAkC;IACrD;QACE,IAAI,EAAG,YAAY;QACnB,KAAK,EAAE,2EAA2E;KACnF;IACD;QACE,IAAI,EAAG,kBAAkB;QACzB,KAAK,EAAE,iGAAiG;KACzG;IACD;QACE,IAAI,EAAG,mBAAmB;QAC1B,KAAK,EAAE,8FAA8F;KACtG;CACF,CAAC;AAEF,MAAM,uBAAuB,GAAkC;IAC7D;QACE,IAAI,EAAG,YAAY;QACnB,KAAK,EAAE,6EAA6E;KACrF;IACD;QACE,IAAI,EAAG,kBAAkB;QACzB,KAAK,EAAE,iGAAiG;KACzG;IACD;QACE,IAAI,EAAG,mBAAmB;QAC1B,KAAK,EAAE,8DAA8D;KACtE;CACF,CAAC;AAEF,MAAM,gBAAgB,GAAkC;IACtD;QACE,IAAI,EAAG,YAAY;QACnB,KAAK,EAAE,6CAA6C;KACrD;IACD;QACE,IAAI,EAAG,kBAAkB;QACzB,KAAK,EAAE,4DAA4D;KACpE;IACD;QACE,IAAI,EAAG,mBAAmB;QAC1B,KAAK,EAAE,wDAAwD;KAChE;CACF,CAAC;AAEF,MAAM,aAAa,GAAkC;IACnD;QACE,IAAI,EAAG,YAAY;QACnB,KAAK,EAAE,+EAA+E;KACvF;IACD;QACE,IAAI,EAAG,kBAAkB;QACzB,KAAK,EAAE,+GAA+G;KACvH;IACD;QACE,IAAI,EAAG,mBAAmB;QAC1B,KAAK,EAAE,mEAAmE;KAC3E;CACF,CAAC;AAEF,mFAAmF;AAEnF;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,IAAwB;IAExB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,eAAe,CAAC,CAAK,OAAO,mBAAmB,CAAC;QACrD,KAAK,WAAW,CAAC,CAAS,OAAO,eAAe,CAAC;QACjD,KAAK,mBAAmB,CAAC,CAAC,OAAO,uBAAuB,CAAC;QACzD,KAAK,YAAY,CAAC,CAAQ,OAAO,gBAAgB,CAAC;QAClD,KAAK,SAAS,CAAC,CAAW,OAAO,aAAa,CAAC;IACjD,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Silent Guidance Mode — the shape-based template selector for bridge-silent flows.
|
|
3
|
+
*
|
|
4
|
+
* ── Purpose ─────────────────────────────────────────────────────────────────
|
|
5
|
+
*
|
|
6
|
+
* When the Intent Interpretation Bridge is eligible but no interpreter claims
|
|
7
|
+
* the input (bridgeSilenceReason === "no_interpreter_claimed"), the system
|
|
8
|
+
* still needs to show guidance. The default code-patch template is often
|
|
9
|
+
* misleading for non-patch requests (ops, QA, content, schema, etc.).
|
|
10
|
+
*
|
|
11
|
+
* SilentGuidanceMode selects which generic template to render.
|
|
12
|
+
*
|
|
13
|
+
* ── What this is NOT ─────────────────────────────────────────────────────────
|
|
14
|
+
*
|
|
15
|
+
* NOT an intent classifier — produces no category or confidence
|
|
16
|
+
* NOT an interpreter — does not enter IntentInterpretation
|
|
17
|
+
* NOT in UCP — no envelope emitted
|
|
18
|
+
* NOT in GuidancePayload.interpretation — interpretation field unchanged
|
|
19
|
+
* NOT authority-bearing — does not affect mode, signal, intentState
|
|
20
|
+
*
|
|
21
|
+
* ── What this IS ─────────────────────────────────────────────────────────────
|
|
22
|
+
*
|
|
23
|
+
* Purely presentation-level guidance shaping.
|
|
24
|
+
* Replaces nextSteps in GuidancePayload with mode-appropriate generic steps.
|
|
25
|
+
* missing[] is always preserved unchanged.
|
|
26
|
+
*
|
|
27
|
+
* ── Mode semantics ────────────────────────────────────────────────────────────
|
|
28
|
+
*
|
|
29
|
+
* "investigation" QA, debugging, bug reproduction, smoke tests, mocks
|
|
30
|
+
* "operation" Infra, deployments, pipelines, schema changes, migrations
|
|
31
|
+
* "content_iteration" Copy, UX text, product description, taglines, user flow
|
|
32
|
+
* "code_patch" Explicit code patch intent not claimed by any interpreter
|
|
33
|
+
* "unknown" Fallback: vague, cross-domain, or ambiguous request shape
|
|
34
|
+
*/
|
|
35
|
+
export type SilentGuidanceMode = "investigation" | "operation" | "content_iteration" | "code_patch" | "unknown";
|
|
36
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/understand/silent-guidance/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,MAAM,kBAAkB,GAC1B,eAAe,GACf,WAAW,GACX,mBAAmB,GACnB,YAAY,GACZ,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/understand/silent-guidance/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Phase 9C: Workflow coordinator.
|
|
3
|
+
*
|
|
4
|
+
* ── Purpose ───────────────────────────────────────────────────────────────────
|
|
5
|
+
*
|
|
6
|
+
* Sequences CursorProductSession and ClaudeProductSession instances,
|
|
7
|
+
* one at a time, through a human-authored list of task specs.
|
|
8
|
+
*
|
|
9
|
+
* ── What this is NOT (W1) ─────────────────────────────────────────────────────
|
|
10
|
+
*
|
|
11
|
+
* NOT authority — calls session functions; makes no decisions.
|
|
12
|
+
* NOT a planner — task specs are fixed at definition time; none are derived.
|
|
13
|
+
* NOT a retry engine — retry creates a new session; H re-approves every time.
|
|
14
|
+
* NOT a batch approver — each session requires explicit H approval (W2).
|
|
15
|
+
* NOT stateful — all functions return new WorkflowRun objects.
|
|
16
|
+
*
|
|
17
|
+
* ── Function contract ─────────────────────────────────────────────────────────
|
|
18
|
+
*
|
|
19
|
+
* createWorkflowRun(spec) → "reviewing"
|
|
20
|
+
* startWorkflow(run, ...) → "task_ready" | "task_conflict" | "completed"
|
|
21
|
+
* cancelWorkflow(run) → "stopped" (no session created)
|
|
22
|
+
* advanceWorkflow(run, ...) → "task_ready" | "task_conflict" | "completed"
|
|
23
|
+
* acceptWorkflowConflict(run) → "task_ready"
|
|
24
|
+
* confirmWorkflowTask(run, yes) → "task_approved" | "task_failed"
|
|
25
|
+
* deliverWorkflowTask(run, ...) → "running" | "task_scope" | "task_failed"
|
|
26
|
+
* answerWorkflowScope(run, idx, ...) → "task_approved" (→ call deliverWorkflowTask)
|
|
27
|
+
* applyFailureAction(run, action, ...) → "running" | "stopped"
|
|
28
|
+
*
|
|
29
|
+
* ── Shell loop ─────────────────────────────────────────────────────────────────
|
|
30
|
+
*
|
|
31
|
+
* run = createWorkflowRun(spec) // → "reviewing"
|
|
32
|
+
* // (H confirms pre-flight list)
|
|
33
|
+
* run = startWorkflow(run, ...) // → "task_ready" | "task_conflict"
|
|
34
|
+
* while (!isWorkflowTerminal(run)):
|
|
35
|
+
* if "task_conflict": run = acceptWorkflowConflict(run) // or reject
|
|
36
|
+
* if "task_ready": run = confirmWorkflowTask(run, yes)
|
|
37
|
+
* if "task_approved": run = await deliverWorkflowTask(run, ...)
|
|
38
|
+
* if "task_scope": run = await answerWorkflowScope(run, idx, ...)
|
|
39
|
+
* run = await deliverWorkflowTask(run, ...)
|
|
40
|
+
* if "task_failed": run = applyFailureAction(run, action)
|
|
41
|
+
* if "running": run = advanceWorkflow(run, ...)
|
|
42
|
+
*
|
|
43
|
+
* ── Authority invariants (W1–W8) ──────────────────────────────────────────────
|
|
44
|
+
*
|
|
45
|
+
* W2: confirmWorkflowTask(yes) → calls approve() only. deliverWorkflowTask
|
|
46
|
+
* is a separate explicit call. The coordinator never auto-delivers.
|
|
47
|
+
* W3: applyFailureAction("retry") creates a new session; never resumes.
|
|
48
|
+
* W6: applyOCDOverride() adds to prohibited globs; never removes.
|
|
49
|
+
* W7: task spec inputs are read-only; never modified after createWorkflowRun.
|
|
50
|
+
* W8: runtime is taken from task spec; never derived or converted.
|
|
51
|
+
*
|
|
52
|
+
* See: docs/phase-9b-workflow-design.md
|
|
53
|
+
*/
|
|
54
|
+
import type { CursorOCDPolicy } from "../cursor/types.js";
|
|
55
|
+
import type { ClaudeOCDPolicy } from "../claude/artifact-mapper.js";
|
|
56
|
+
import type { ClaudeToolPolicy } from "../claude/types.js";
|
|
57
|
+
import type { ClaudeGateDeps } from "../claude/delivery-gate.js";
|
|
58
|
+
import type { WorkflowSpec, WorkflowRun, WorkflowPlugins } from "./types.js";
|
|
59
|
+
import type { WorkflowRunPayload } from "../ucp/types.js";
|
|
60
|
+
/**
|
|
61
|
+
* Create a new WorkflowRun from a spec.
|
|
62
|
+
*
|
|
63
|
+
* The run begins in "reviewing" phase (Phase 11D / WF-R1).
|
|
64
|
+
* No session is created until H explicitly starts the workflow via startWorkflow().
|
|
65
|
+
*
|
|
66
|
+
* WF-R2: currentSession is absent in "reviewing".
|
|
67
|
+
*
|
|
68
|
+
* @param opts.mode "break_glass" to skip per-step human confirm (BG-1).
|
|
69
|
+
* @param opts.breakGlassReason Required when mode is "break_glass" (BG-4).
|
|
70
|
+
* Recorded in audit permanently (BG-3).
|
|
71
|
+
*/
|
|
72
|
+
export declare function createWorkflowRun(spec: WorkflowSpec, opts?: {
|
|
73
|
+
mode?: "normal" | "break_glass";
|
|
74
|
+
breakGlassReason?: string;
|
|
75
|
+
}): WorkflowRun;
|
|
76
|
+
/**
|
|
77
|
+
* Confirm the pre-flight review and start executing the first task.
|
|
78
|
+
*
|
|
79
|
+
* WF-R3: the only path out of "reviewing" into execution.
|
|
80
|
+
*
|
|
81
|
+
* Transitions "reviewing" → "idle" → immediately calls advanceWorkflow to
|
|
82
|
+
* prepare the first task. Returns the same result advanceWorkflow would:
|
|
83
|
+
* "task_ready" | "task_conflict" | "completed" (if all tasks auto-skip).
|
|
84
|
+
*
|
|
85
|
+
* Valid from "reviewing" only; no-op from any other phase.
|
|
86
|
+
*/
|
|
87
|
+
export declare function startWorkflow(run: WorkflowRun, cursorPolicy: CursorOCDPolicy, claudeOCDPolicy: ClaudeOCDPolicy, claudeToolPolicy: ClaudeToolPolicy): WorkflowRun;
|
|
88
|
+
/**
|
|
89
|
+
* Cancel the workflow at the pre-flight stage.
|
|
90
|
+
*
|
|
91
|
+
* H declined to start. No session was ever created (WF-R1).
|
|
92
|
+
* Transitions "reviewing" → "stopped" cleanly.
|
|
93
|
+
*
|
|
94
|
+
* Valid from "reviewing" only; no-op from any other phase.
|
|
95
|
+
*/
|
|
96
|
+
export declare function cancelWorkflow(run: WorkflowRun): WorkflowRun;
|
|
97
|
+
export declare function isWorkflowTerminal(run: WorkflowRun): boolean;
|
|
98
|
+
/**
|
|
99
|
+
* Advance the workflow to the next task.
|
|
100
|
+
*
|
|
101
|
+
* Called when phase is "idle" or "running".
|
|
102
|
+
*
|
|
103
|
+
* Creates a new session for the current task spec, submits the task input,
|
|
104
|
+
* and transitions to "task_ready", "task_conflict", or "completed".
|
|
105
|
+
*
|
|
106
|
+
* Auto-skips tasks where intake returns a non-execute mode ("skipped_by_intake").
|
|
107
|
+
* This is the V1 default policy for non-execute inputs (see Phase 9B design).
|
|
108
|
+
*
|
|
109
|
+
* @param cursorPolicy Workspace Cursor OCD policy (workflow override is applied internally).
|
|
110
|
+
* @param claudeOCDPolicy Workspace Claude OCD policy (workflow override is applied internally).
|
|
111
|
+
* @param claudeToolPolicy Claude tool policy.
|
|
112
|
+
*/
|
|
113
|
+
export declare function advanceWorkflow(run: WorkflowRun, cursorPolicy: CursorOCDPolicy, claudeOCDPolicy: ClaudeOCDPolicy, claudeToolPolicy: ClaudeToolPolicy): WorkflowRun;
|
|
114
|
+
/**
|
|
115
|
+
* Accept the OCD conflict on the current task.
|
|
116
|
+
*
|
|
117
|
+
* Valid from "task_conflict" only.
|
|
118
|
+
* Transitions to "task_ready".
|
|
119
|
+
*/
|
|
120
|
+
export declare function acceptWorkflowConflict(run: WorkflowRun): WorkflowRun;
|
|
121
|
+
/**
|
|
122
|
+
* Confirm (approve) or reject the current prepared task.
|
|
123
|
+
*
|
|
124
|
+
* Valid from "task_ready" and "task_conflict" (rejection path).
|
|
125
|
+
*
|
|
126
|
+
* yes=true → calls approve() / approveClaude() → "task_approved"
|
|
127
|
+
* yes=false → calls reject() / rejectClaude() → "task_failed" (outcome: "rejected")
|
|
128
|
+
*
|
|
129
|
+
* ── Proof W2 (never approves on behalf of H) ────────────────────────────────
|
|
130
|
+
*
|
|
131
|
+
* This function calls approve() exactly once when yes=true.
|
|
132
|
+
* It does NOT call deliver() or deliverClaude().
|
|
133
|
+
* The session transitions to "approved", not "accepted".
|
|
134
|
+
* deliverWorkflowTask() is the separate, explicit delivery step.
|
|
135
|
+
*/
|
|
136
|
+
export declare function confirmWorkflowTask(run: WorkflowRun, yes: boolean): WorkflowRun;
|
|
137
|
+
/**
|
|
138
|
+
* Deliver the current approved task to its runtime.
|
|
139
|
+
*
|
|
140
|
+
* Valid from "task_approved" only.
|
|
141
|
+
*
|
|
142
|
+
* Outcome:
|
|
143
|
+
* accepted → record outcome, increment currentIndex → "running"
|
|
144
|
+
* scope_question → "task_scope"
|
|
145
|
+
* exec_error / blocked → "task_failed"
|
|
146
|
+
*
|
|
147
|
+
* @param plugins WorkflowPlugins — coordinator picks the right one by runtime (W8 / Proof 3).
|
|
148
|
+
* @param storeDir UCP store directory.
|
|
149
|
+
* @param deps Optional gate dependencies (for test injection, Claude only).
|
|
150
|
+
*/
|
|
151
|
+
export declare function deliverWorkflowTask(run: WorkflowRun, plugins: WorkflowPlugins, storeDir: string, deps?: ClaudeGateDeps): Promise<WorkflowRun>;
|
|
152
|
+
/**
|
|
153
|
+
* Answer a scope clarification question for the current task.
|
|
154
|
+
*
|
|
155
|
+
* Valid from "task_scope" only.
|
|
156
|
+
* Transitions to "task_approved" so the caller can call deliverWorkflowTask again.
|
|
157
|
+
*
|
|
158
|
+
* @param choiceIdx 1-based index into the scope candidates.
|
|
159
|
+
* Out-of-range → returns state unchanged.
|
|
160
|
+
*/
|
|
161
|
+
export declare function answerWorkflowScope(run: WorkflowRun, choiceIdx: number): WorkflowRun;
|
|
162
|
+
/**
|
|
163
|
+
* Apply a failure action to the current failed task.
|
|
164
|
+
*
|
|
165
|
+
* Valid from "task_failed" only.
|
|
166
|
+
*
|
|
167
|
+
* Actions:
|
|
168
|
+
* stop → "stopped" (terminal)
|
|
169
|
+
* skip → record as "skipped", advance currentIndex → "running"
|
|
170
|
+
* retry → if retryCount < maxRetries: increment retryCount, reset session → "running"
|
|
171
|
+
* if retryCount >= maxRetries: returns state unchanged (stop/skip only)
|
|
172
|
+
*
|
|
173
|
+
* W3: retry creates a new session via advanceWorkflow; no session is re-opened.
|
|
174
|
+
*
|
|
175
|
+
* @returns Next WorkflowRun. Caller must call advanceWorkflow() after "running".
|
|
176
|
+
*/
|
|
177
|
+
export declare function applyFailureAction(run: WorkflowRun, action: "stop" | "skip" | "retry"): WorkflowRun;
|
|
178
|
+
/**
|
|
179
|
+
* buildWorkflowRunPayload — produce the UCP payload for ucp.workflow_run.v1.
|
|
180
|
+
*
|
|
181
|
+
* Called when the workflow reaches "completed" or "stopped" (W5).
|
|
182
|
+
* Not called for in-progress runs.
|
|
183
|
+
*
|
|
184
|
+
* @throws {Error} If run is not in a terminal phase.
|
|
185
|
+
*/
|
|
186
|
+
export declare function buildWorkflowRunPayload(run: WorkflowRun): WorkflowRunPayload;
|
|
187
|
+
/**
|
|
188
|
+
* persistWorkflowRun — build a ucp.workflow_run.v1 envelope and persist it.
|
|
189
|
+
*
|
|
190
|
+
* This is fire-and-forget (uses persistEnvelope, not persistEnvelopeOrThrow).
|
|
191
|
+
* A persistence failure must NOT block the shell from rendering a terminal
|
|
192
|
+
* state to the user. The UCP record is an audit artifact, not a gate.
|
|
193
|
+
*
|
|
194
|
+
* @throws {Error} If run is not terminal. Call only after isWorkflowTerminal(run).
|
|
195
|
+
*/
|
|
196
|
+
export declare function persistWorkflowRun(run: WorkflowRun, storeDir: string): void;
|
|
197
|
+
//# sourceMappingURL=coordinator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../../src/workflow/coordinator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AA8BH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAO,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAO,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAQ,4BAA4B,CAAC;AAEnE,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EAOX,eAAe,EAGhB,MAAM,YAAY,CAAC;AAKpB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAoK1D;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,YAAY,EAClB,IAAI,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,aAAa,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAAE,GACpE,WAAW,CA0Bb;AAID;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAe,WAAW,EAC7B,YAAY,EAAM,eAAe,EACjC,eAAe,EAAG,eAAe,EACjC,gBAAgB,EAAE,gBAAgB,GACjC,WAAW,CAMb;AAID;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,WAAW,CAI5D;AAID,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAE5D;AAID;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAe,WAAW,EAC7B,YAAY,EAAM,eAAe,EACjC,eAAe,EAAG,eAAe,EACjC,gBAAgB,EAAE,gBAAgB,GACjC,WAAW,CA4Gb;AAID;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,WAAW,GAAG,WAAW,CAkBpE;AAID;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,GAAG,WAAW,CAmD/E;AAID;;;;;;;;;;;;;GAaG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAO,WAAW,EACrB,OAAO,EAAG,eAAe,EACzB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAK,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,CA6HtB;AAID;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,GAAG,WAAW,CAsBpF;AAID;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAK,WAAW,EACnB,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAChC,WAAW,CAuDb;AAID;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,WAAW,GAAG,kBAAkB,CAmC5E;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAI3E"}
|