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 @@
|
|
|
1
|
+
{"version":3,"file":"map-disambiguation.d.ts","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-disambiguation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,sBAAsB,EAAyB,OAAO,EAAE,MAAM,aAAa,CAAC;AAC1F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAErF,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,oBAAoB,EAC5B,IAAI,CAAC,EAAE,OAAO,GACb,sBAAsB,CAYxB"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: DisambiguationResult → DisambiguationEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Maps exactly from DisambiguationResult (src/understand/disambiguation/types.ts).
|
|
5
|
+
* The "unknown" kind carries no extra fields — the input simply had no signal.
|
|
6
|
+
*/
|
|
7
|
+
import { createDisambiguationEnvelope } from "../envelope.js";
|
|
8
|
+
export function mapDisambiguationToEnvelope(result, refs) {
|
|
9
|
+
let payload;
|
|
10
|
+
if (result.kind === "clear") {
|
|
11
|
+
payload = { kind: "clear", normalized: result.normalized };
|
|
12
|
+
}
|
|
13
|
+
else if (result.kind === "ambiguous") {
|
|
14
|
+
payload = { kind: "ambiguous", reason: result.reason, options: result.options };
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
payload = { kind: "unknown" };
|
|
18
|
+
}
|
|
19
|
+
return createDisambiguationEnvelope(payload, refs);
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=map-disambiguation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-disambiguation.js","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-disambiguation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,4BAA4B,EAAE,MAAM,gBAAgB,CAAC;AAI9D,MAAM,UAAU,2BAA2B,CACzC,MAA4B,EAC5B,IAAc;IAEd,IAAI,OAA8B,CAAC;IAEnC,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,OAAO,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;IAC7D,CAAC;SAAM,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QACvC,OAAO,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;IAClF,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IAChC,CAAC;IAED,OAAO,4BAA4B,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACrD,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: ArtifactLike (trace portion) → ExecutionTraceEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Seals the full execution timeline for one run as a lightweight identity
|
|
5
|
+
* envelope. Individual trace entries are not copied — they are represented
|
|
6
|
+
* by a content hash (traceHash) and a sequence of kind strings.
|
|
7
|
+
*
|
|
8
|
+
* ── traceHash specification (5 locked rules) ─────────────────────────────────
|
|
9
|
+
*
|
|
10
|
+
* 1. Ordering: Recorded/append order — same as artifact.trace[] index order.
|
|
11
|
+
* No resorting.
|
|
12
|
+
* 2. Included: ALL TraceEntry fields: kind, runId, nodeId, timestampMs, payload.
|
|
13
|
+
* 3. Excluded: None. No derived summaries or presentation fields.
|
|
14
|
+
* 4. Timestamps: timestampMs IS included. Two runs at different times produce
|
|
15
|
+
* different traceHash values. This is correct — each trace is
|
|
16
|
+
* a specific, time-stamped execution record.
|
|
17
|
+
* 5. Serialization: stableStringify() — sorted keys at all nesting levels.
|
|
18
|
+
* Same algorithm as FinalizedArtifact.checksum computation.
|
|
19
|
+
*
|
|
20
|
+
* ── Mapping rules ─────────────────────────────────────────────────────────────
|
|
21
|
+
*
|
|
22
|
+
* runId ← artifact.runId
|
|
23
|
+
* entryCount ← artifact.trace.length
|
|
24
|
+
* kinds ← artifact.trace.map(e => e.kind) (ordered, string values)
|
|
25
|
+
* traceHash ← hashObject(artifact.trace)
|
|
26
|
+
*
|
|
27
|
+
* ── What this mapper does NOT do ─────────────────────────────────────────────
|
|
28
|
+
*
|
|
29
|
+
* ✗ Copy individual trace entry payloads, nodeIds, or timestamps
|
|
30
|
+
* ✗ Reshape or reorder trace entries
|
|
31
|
+
* ✗ Add derived summaries or presentation fields
|
|
32
|
+
* ✗ Affect FinalizedArtifact.checksum
|
|
33
|
+
*/
|
|
34
|
+
import type { ExecutionTraceEnvelope, UCPRefs } from "../types.js";
|
|
35
|
+
/**
|
|
36
|
+
* Minimal structural type for one trace entry.
|
|
37
|
+
* Consumers pass objects with kind, runId, nodeId, timestampMs, payload.
|
|
38
|
+
* We access .kind for the kinds[] field; the full entry is hashed as-is.
|
|
39
|
+
*/
|
|
40
|
+
export type TraceEntryLike = {
|
|
41
|
+
readonly kind: string;
|
|
42
|
+
readonly [key: string]: unknown;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* Minimal structural type for the artifact's trace portion.
|
|
46
|
+
*/
|
|
47
|
+
export type ArtifactWithTraceLike = {
|
|
48
|
+
readonly runId: string;
|
|
49
|
+
readonly trace: ReadonlyArray<TraceEntryLike>;
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Map an artifact's execution trace to its canonical sealed envelope.
|
|
53
|
+
*
|
|
54
|
+
* Pure function — same trace → same envelope id.
|
|
55
|
+
* Note: traceHash will differ between runs even for identical logic, because
|
|
56
|
+
* timestampMs is included per the locked spec.
|
|
57
|
+
*
|
|
58
|
+
* @param artifact Must have runId and trace[] satisfying the shapes above
|
|
59
|
+
* @param refs Optional provenance refs:
|
|
60
|
+
* refs.parentId = ucp.artifact.v1 ID (immediate predecessor)
|
|
61
|
+
* refs.rootId = ucp.intent.v1 ID (originating intent)
|
|
62
|
+
*/
|
|
63
|
+
export declare function mapExecutionTraceToEnvelope(artifact: ArtifactWithTraceLike, refs?: UCPRefs): ExecutionTraceEnvelope;
|
|
64
|
+
//# sourceMappingURL=map-execution-trace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-execution-trace.d.ts","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-execution-trace.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAIH,OAAO,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEnE;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACjC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC;CAC/C,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,qBAAqB,EAC/B,IAAI,CAAC,EAAE,OAAO,GACb,sBAAsB,CAWxB"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: ArtifactLike (trace portion) → ExecutionTraceEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Seals the full execution timeline for one run as a lightweight identity
|
|
5
|
+
* envelope. Individual trace entries are not copied — they are represented
|
|
6
|
+
* by a content hash (traceHash) and a sequence of kind strings.
|
|
7
|
+
*
|
|
8
|
+
* ── traceHash specification (5 locked rules) ─────────────────────────────────
|
|
9
|
+
*
|
|
10
|
+
* 1. Ordering: Recorded/append order — same as artifact.trace[] index order.
|
|
11
|
+
* No resorting.
|
|
12
|
+
* 2. Included: ALL TraceEntry fields: kind, runId, nodeId, timestampMs, payload.
|
|
13
|
+
* 3. Excluded: None. No derived summaries or presentation fields.
|
|
14
|
+
* 4. Timestamps: timestampMs IS included. Two runs at different times produce
|
|
15
|
+
* different traceHash values. This is correct — each trace is
|
|
16
|
+
* a specific, time-stamped execution record.
|
|
17
|
+
* 5. Serialization: stableStringify() — sorted keys at all nesting levels.
|
|
18
|
+
* Same algorithm as FinalizedArtifact.checksum computation.
|
|
19
|
+
*
|
|
20
|
+
* ── Mapping rules ─────────────────────────────────────────────────────────────
|
|
21
|
+
*
|
|
22
|
+
* runId ← artifact.runId
|
|
23
|
+
* entryCount ← artifact.trace.length
|
|
24
|
+
* kinds ← artifact.trace.map(e => e.kind) (ordered, string values)
|
|
25
|
+
* traceHash ← hashObject(artifact.trace)
|
|
26
|
+
*
|
|
27
|
+
* ── What this mapper does NOT do ─────────────────────────────────────────────
|
|
28
|
+
*
|
|
29
|
+
* ✗ Copy individual trace entry payloads, nodeIds, or timestamps
|
|
30
|
+
* ✗ Reshape or reorder trace entries
|
|
31
|
+
* ✗ Add derived summaries or presentation fields
|
|
32
|
+
* ✗ Affect FinalizedArtifact.checksum
|
|
33
|
+
*/
|
|
34
|
+
import { createExecutionTraceEnvelope } from "../envelope.js";
|
|
35
|
+
import { hashObject } from "../hashes.js";
|
|
36
|
+
/**
|
|
37
|
+
* Map an artifact's execution trace to its canonical sealed envelope.
|
|
38
|
+
*
|
|
39
|
+
* Pure function — same trace → same envelope id.
|
|
40
|
+
* Note: traceHash will differ between runs even for identical logic, because
|
|
41
|
+
* timestampMs is included per the locked spec.
|
|
42
|
+
*
|
|
43
|
+
* @param artifact Must have runId and trace[] satisfying the shapes above
|
|
44
|
+
* @param refs Optional provenance refs:
|
|
45
|
+
* refs.parentId = ucp.artifact.v1 ID (immediate predecessor)
|
|
46
|
+
* refs.rootId = ucp.intent.v1 ID (originating intent)
|
|
47
|
+
*/
|
|
48
|
+
export function mapExecutionTraceToEnvelope(artifact, refs) {
|
|
49
|
+
const trace = artifact.trace;
|
|
50
|
+
return createExecutionTraceEnvelope({
|
|
51
|
+
runId: artifact.runId,
|
|
52
|
+
entryCount: trace.length,
|
|
53
|
+
kinds: trace.map((e) => e.kind),
|
|
54
|
+
traceHash: hashObject(trace),
|
|
55
|
+
}, refs);
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=map-execution-trace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-execution-trace.js","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-execution-trace.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAE,4BAA4B,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAqB1C;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,2BAA2B,CACzC,QAA+B,EAC/B,IAAc;IAEd,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;IAC7B,OAAO,4BAA4B,CACjC;QACE,KAAK,EAAO,QAAQ,CAAC,KAAK;QAC1B,UAAU,EAAE,KAAK,CAAC,MAAM;QACxB,KAAK,EAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACpC,SAAS,EAAG,UAAU,CAAC,KAAK,CAAC;KAC9B,EACD,IAAI,CACL,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: IntentInterpretation → IntentInterpretationEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Maps exactly from IntentInterpretation
|
|
5
|
+
* (src/understand/intent-interpretation/types.ts).
|
|
6
|
+
* Returns null when no interpretation was produced (bridge stayed silent).
|
|
7
|
+
*/
|
|
8
|
+
import type { IntentInterpretationEnvelope, UCPRefs } from "../types.js";
|
|
9
|
+
import type { IntentInterpretation } from "../../understand/intent-interpretation/types.js";
|
|
10
|
+
export declare function mapIntentInterpretationToEnvelope(interpretation: IntentInterpretation, refs?: UCPRefs): IntentInterpretationEnvelope;
|
|
11
|
+
//# sourceMappingURL=map-intent-interpretation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-intent-interpretation.d.ts","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-intent-interpretation.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,4BAA4B,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iDAAiD,CAAC;AAE5F,wBAAgB,iCAAiC,CAC/C,cAAc,EAAE,oBAAoB,EACpC,IAAI,CAAC,EAAE,OAAO,GACb,4BAA4B,CAU9B"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: IntentInterpretation → IntentInterpretationEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Maps exactly from IntentInterpretation
|
|
5
|
+
* (src/understand/intent-interpretation/types.ts).
|
|
6
|
+
* Returns null when no interpretation was produced (bridge stayed silent).
|
|
7
|
+
*/
|
|
8
|
+
import { createIntentInterpretationEnvelope } from "../envelope.js";
|
|
9
|
+
export function mapIntentInterpretationToEnvelope(interpretation, refs) {
|
|
10
|
+
return createIntentInterpretationEnvelope({
|
|
11
|
+
category: interpretation.category,
|
|
12
|
+
summary: interpretation.summary,
|
|
13
|
+
confidence: interpretation.confidence,
|
|
14
|
+
basis: interpretation.basis,
|
|
15
|
+
}, refs);
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=map-intent-interpretation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-intent-interpretation.js","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-intent-interpretation.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,kCAAkC,EAAE,MAAM,gBAAgB,CAAC;AAIpE,MAAM,UAAU,iCAAiC,CAC/C,cAAoC,EACpC,IAAc;IAEd,OAAO,kCAAkC,CACvC;QACE,QAAQ,EAAI,cAAc,CAAC,QAAQ;QACnC,OAAO,EAAK,cAAc,CAAC,OAAO;QAClC,UAAU,EAAE,cAAc,CAAC,UAAU;QACrC,KAAK,EAAO,cAAc,CAAC,KAAK;KACjC,EACD,IAAI,CACL,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: raw input string → IntentEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* The intent envelope captures the user's raw input before any processing.
|
|
5
|
+
* It is always the first envelope in a UCP bundle.
|
|
6
|
+
*/
|
|
7
|
+
import type { IntentEnvelope, UCPRefs } from "../types.js";
|
|
8
|
+
export declare function mapIntentToEnvelope(input: string, refs?: UCPRefs): IntentEnvelope;
|
|
9
|
+
//# sourceMappingURL=map-intent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-intent.d.ts","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-intent.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3D,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,cAAc,CAEjF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: raw input string → IntentEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* The intent envelope captures the user's raw input before any processing.
|
|
5
|
+
* It is always the first envelope in a UCP bundle.
|
|
6
|
+
*/
|
|
7
|
+
import { createIntentEnvelope } from "../envelope.js";
|
|
8
|
+
export function mapIntentToEnvelope(input, refs) {
|
|
9
|
+
return createIntentEnvelope({ input }, refs);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=map-intent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-intent.js","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-intent.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGtD,MAAM,UAAU,mBAAmB,CAAC,KAAa,EAAE,IAAc;IAC/D,OAAO,oBAAoB,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,CAAC,CAAC;AAC/C,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: PRVResult → PRVEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Maps exactly from PRVResult (src/prv/types.ts).
|
|
5
|
+
* No interpretation of values — fields are transferred as-is.
|
|
6
|
+
*/
|
|
7
|
+
import type { PRVEnvelope, UCPRefs } from "../types.js";
|
|
8
|
+
import type { PRVResult } from "../../prv/types.js";
|
|
9
|
+
export declare function mapPRVToEnvelope(result: PRVResult, refs?: UCPRefs): PRVEnvelope;
|
|
10
|
+
//# sourceMappingURL=map-prv.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-prv.d.ts","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-prv.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAc,OAAO,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,WAAW,CAK/E"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: PRVResult → PRVEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Maps exactly from PRVResult (src/prv/types.ts).
|
|
5
|
+
* No interpretation of values — fields are transferred as-is.
|
|
6
|
+
*/
|
|
7
|
+
import { createPRVEnvelope } from "../envelope.js";
|
|
8
|
+
export function mapPRVToEnvelope(result, refs) {
|
|
9
|
+
const payload = result.ok
|
|
10
|
+
? { ok: true }
|
|
11
|
+
: { ok: false, mode: result.mode, reason: result.reason };
|
|
12
|
+
return createPRVEnvelope(payload, refs);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=map-prv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-prv.js","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-prv.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAInD,MAAM,UAAU,gBAAgB,CAAC,MAAiB,EAAE,IAAc;IAChE,MAAM,OAAO,GAAe,MAAM,CAAC,EAAE;QACnC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE;QACd,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;IAC5D,OAAO,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAC1C,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: ReminderExecutionArtifact → ReminderExecutionEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Maps from a finalized reminder execution artifact to its canonical UCP envelope.
|
|
5
|
+
*
|
|
6
|
+
* ── Mapping rules (field-for-field) ──────────────────────────────────────────
|
|
7
|
+
*
|
|
8
|
+
* subject ← artifact.subject (direct copy)
|
|
9
|
+
* time_text ← artifact.time_text (direct copy)
|
|
10
|
+
* parsed_time_kind ← artifact.parsed_time.kind (kind only — see note)
|
|
11
|
+
* recurrence_text ← artifact.recurrence_text (direct copy)
|
|
12
|
+
* source_confidence ← artifact.source_confidence (direct copy)
|
|
13
|
+
* verdict ← artifact.verdict (direct copy)
|
|
14
|
+
* rejection_reason ← artifact.rejection_reason (direct copy, optional)
|
|
15
|
+
*
|
|
16
|
+
* ── Why parsed_time_kind only ────────────────────────────────────────────────
|
|
17
|
+
*
|
|
18
|
+
* The envelope records the execution-classification outcome: was the time
|
|
19
|
+
* parseable, and of what structural shape? It does NOT carry the full
|
|
20
|
+
* ParsedTime (hour, minute, period, offset_minutes, etc.) because:
|
|
21
|
+
*
|
|
22
|
+
* 1. The envelope is a lightweight canonical record, not a scheduler payload.
|
|
23
|
+
* 2. The full ParsedTime lives in the artifact for downstream integrations.
|
|
24
|
+
* 3. This keeps the envelope consistent with the Phase 3 pattern:
|
|
25
|
+
* artifact envelopes carry identity signals, not full data copies.
|
|
26
|
+
*
|
|
27
|
+
* ── What this mapper does NOT do ─────────────────────────────────────────────
|
|
28
|
+
*
|
|
29
|
+
* ✗ Recompute or reinterpret any field
|
|
30
|
+
* ✗ Copy the full ParsedTime struct (only kind is copied)
|
|
31
|
+
* ✗ Add renderer-facing concerns
|
|
32
|
+
* ✗ Validate the artifact (validation happens in the executor before this)
|
|
33
|
+
*
|
|
34
|
+
* ── CONSTRUCTION RULE: undefined-free payloads ────────────────────────────────
|
|
35
|
+
*
|
|
36
|
+
* Optional fields (rejection_reason) must be omitted entirely when absent.
|
|
37
|
+
* Never assign a payload key to `undefined` — stableStringify serializes
|
|
38
|
+
* `undefined` as the string "undefined", which breaks content addressing.
|
|
39
|
+
* Use conditional spreading: ...(value !== undefined ? { key: value } : {})
|
|
40
|
+
*
|
|
41
|
+
* This is the mapper where this invariant was discovered (Phase 7 audit).
|
|
42
|
+
* See: src/ucp/types.ts — "PROTOCOL INVARIANT: Payloads must be undefined-free"
|
|
43
|
+
*/
|
|
44
|
+
import type { ReminderExecutionEnvelope, UCPRefs } from "../types.js";
|
|
45
|
+
import type { ReminderExecutionArtifact } from "../../execution/reminders/reminder-execution-types.js";
|
|
46
|
+
/**
|
|
47
|
+
* Map a finalized reminder execution artifact to its canonical UCP envelope.
|
|
48
|
+
*
|
|
49
|
+
* Pure function — same artifact → same envelope id (content-addressed).
|
|
50
|
+
*
|
|
51
|
+
* @param artifact The finalized ReminderExecutionArtifact from executeReminder().
|
|
52
|
+
* @param refs Optional provenance refs:
|
|
53
|
+
* refs.rootId = ucp.intent.v1 ID (closes provenance chain)
|
|
54
|
+
* refs.parentId = ucp.response.v1 ID (immediate predecessor)
|
|
55
|
+
*/
|
|
56
|
+
export declare function mapReminderExecutionToEnvelope(artifact: ReminderExecutionArtifact, refs?: UCPRefs): ReminderExecutionEnvelope;
|
|
57
|
+
//# sourceMappingURL=map-reminder-execution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-reminder-execution.d.ts","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-reminder-execution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAGH,OAAO,KAAK,EAAE,yBAAyB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uDAAuD,CAAC;AAEvG;;;;;;;;;GASG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,yBAAyB,EACnC,IAAI,CAAC,EAAE,OAAO,GACb,yBAAyB,CAc3B"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: ReminderExecutionArtifact → ReminderExecutionEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Maps from a finalized reminder execution artifact to its canonical UCP envelope.
|
|
5
|
+
*
|
|
6
|
+
* ── Mapping rules (field-for-field) ──────────────────────────────────────────
|
|
7
|
+
*
|
|
8
|
+
* subject ← artifact.subject (direct copy)
|
|
9
|
+
* time_text ← artifact.time_text (direct copy)
|
|
10
|
+
* parsed_time_kind ← artifact.parsed_time.kind (kind only — see note)
|
|
11
|
+
* recurrence_text ← artifact.recurrence_text (direct copy)
|
|
12
|
+
* source_confidence ← artifact.source_confidence (direct copy)
|
|
13
|
+
* verdict ← artifact.verdict (direct copy)
|
|
14
|
+
* rejection_reason ← artifact.rejection_reason (direct copy, optional)
|
|
15
|
+
*
|
|
16
|
+
* ── Why parsed_time_kind only ────────────────────────────────────────────────
|
|
17
|
+
*
|
|
18
|
+
* The envelope records the execution-classification outcome: was the time
|
|
19
|
+
* parseable, and of what structural shape? It does NOT carry the full
|
|
20
|
+
* ParsedTime (hour, minute, period, offset_minutes, etc.) because:
|
|
21
|
+
*
|
|
22
|
+
* 1. The envelope is a lightweight canonical record, not a scheduler payload.
|
|
23
|
+
* 2. The full ParsedTime lives in the artifact for downstream integrations.
|
|
24
|
+
* 3. This keeps the envelope consistent with the Phase 3 pattern:
|
|
25
|
+
* artifact envelopes carry identity signals, not full data copies.
|
|
26
|
+
*
|
|
27
|
+
* ── What this mapper does NOT do ─────────────────────────────────────────────
|
|
28
|
+
*
|
|
29
|
+
* ✗ Recompute or reinterpret any field
|
|
30
|
+
* ✗ Copy the full ParsedTime struct (only kind is copied)
|
|
31
|
+
* ✗ Add renderer-facing concerns
|
|
32
|
+
* ✗ Validate the artifact (validation happens in the executor before this)
|
|
33
|
+
*
|
|
34
|
+
* ── CONSTRUCTION RULE: undefined-free payloads ────────────────────────────────
|
|
35
|
+
*
|
|
36
|
+
* Optional fields (rejection_reason) must be omitted entirely when absent.
|
|
37
|
+
* Never assign a payload key to `undefined` — stableStringify serializes
|
|
38
|
+
* `undefined` as the string "undefined", which breaks content addressing.
|
|
39
|
+
* Use conditional spreading: ...(value !== undefined ? { key: value } : {})
|
|
40
|
+
*
|
|
41
|
+
* This is the mapper where this invariant was discovered (Phase 7 audit).
|
|
42
|
+
* See: src/ucp/types.ts — "PROTOCOL INVARIANT: Payloads must be undefined-free"
|
|
43
|
+
*/
|
|
44
|
+
import { createReminderExecutionEnvelope } from "../envelope.js";
|
|
45
|
+
/**
|
|
46
|
+
* Map a finalized reminder execution artifact to its canonical UCP envelope.
|
|
47
|
+
*
|
|
48
|
+
* Pure function — same artifact → same envelope id (content-addressed).
|
|
49
|
+
*
|
|
50
|
+
* @param artifact The finalized ReminderExecutionArtifact from executeReminder().
|
|
51
|
+
* @param refs Optional provenance refs:
|
|
52
|
+
* refs.rootId = ucp.intent.v1 ID (closes provenance chain)
|
|
53
|
+
* refs.parentId = ucp.response.v1 ID (immediate predecessor)
|
|
54
|
+
*/
|
|
55
|
+
export function mapReminderExecutionToEnvelope(artifact, refs) {
|
|
56
|
+
const payload = {
|
|
57
|
+
subject: artifact.subject,
|
|
58
|
+
time_text: artifact.time_text,
|
|
59
|
+
parsed_time_kind: artifact.parsed_time.kind,
|
|
60
|
+
recurrence_text: artifact.recurrence_text,
|
|
61
|
+
source_confidence: artifact.source_confidence,
|
|
62
|
+
verdict: artifact.verdict,
|
|
63
|
+
...(artifact.rejection_reason !== undefined
|
|
64
|
+
? { rejection_reason: artifact.rejection_reason }
|
|
65
|
+
: {}),
|
|
66
|
+
};
|
|
67
|
+
return createReminderExecutionEnvelope(payload, refs);
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=map-reminder-execution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-reminder-execution.js","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-reminder-execution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,OAAO,EAAE,+BAA+B,EAAE,MAAM,gBAAgB,CAAC;AAIjE;;;;;;;;;GASG;AACH,MAAM,UAAU,8BAA8B,CAC5C,QAAmC,EACnC,IAAc;IAEd,MAAM,OAAO,GAAG;QACd,OAAO,EAAY,QAAQ,CAAC,OAAO;QACnC,SAAS,EAAU,QAAQ,CAAC,SAAS;QACrC,gBAAgB,EAAG,QAAQ,CAAC,WAAW,CAAC,IAAI;QAC5C,eAAe,EAAI,QAAQ,CAAC,eAAe;QAC3C,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;QAC7C,OAAO,EAAY,QAAQ,CAAC,OAAO;QACnC,GAAG,CAAC,QAAQ,CAAC,gBAAgB,KAAK,SAAS;YACzC,CAAC,CAAC,EAAE,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB,EAAE;YACjD,CAAC,CAAC,EAAE,CAAC;KACC,CAAC;IAEX,OAAO,+BAA+B,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: ReplayReportLike → ReplayReportEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Maps from a replay verification report to its canonical UCP envelope.
|
|
5
|
+
* This mapper is intentionally defined against a minimal structural type
|
|
6
|
+
* (ReplayReportLike) rather than importing any branded ReplayReport — avoiding
|
|
7
|
+
* circular dependencies while remaining fully type-safe via TypeScript's
|
|
8
|
+
* structural compatibility.
|
|
9
|
+
*
|
|
10
|
+
* ── Mapping rules (field-for-field) ──────────────────────────────────────────
|
|
11
|
+
*
|
|
12
|
+
* runId ← report.runId (direct copy)
|
|
13
|
+
* verdict ← report.verdict (direct copy)
|
|
14
|
+
* checksumValid ← report.checksumValid (direct copy)
|
|
15
|
+
* artifactChecksum ← report.artifactChecksum (direct copy)
|
|
16
|
+
* nodeCount ← report.nodeResults.length (derived)
|
|
17
|
+
* verifiedCount ← filter(n => n.verdict === "VERIFIED") (derived)
|
|
18
|
+
* driftedCount ← filter(n => n.verdict === "DRIFTED") (derived)
|
|
19
|
+
* skippedCount ← filter(n => n.verdict === "SKIPPED") (derived)
|
|
20
|
+
* replayedAtMs ← report.replayedAtMs (direct copy)
|
|
21
|
+
*
|
|
22
|
+
* ── CORRUPTED short-circuit behavior ─────────────────────────────────────────
|
|
23
|
+
*
|
|
24
|
+
* When report.checksumValid === false (verdict === "CORRUPTED"):
|
|
25
|
+
* report.nodeResults is [] (verification short-circuits before drift detection)
|
|
26
|
+
* Therefore: nodeCount = 0, verifiedCount = 0, driftedCount = 0, skippedCount = 0
|
|
27
|
+
* This is not invented — it follows directly from the source data.
|
|
28
|
+
* The mapper does NOT special-case CORRUPTED; it maps nodeResults.length as-is.
|
|
29
|
+
*
|
|
30
|
+
* ── Exhaustiveness invariant ──────────────────────────────────────────────────
|
|
31
|
+
*
|
|
32
|
+
* For all non-CORRUPTED reports:
|
|
33
|
+
* verifiedCount + driftedCount + skippedCount === nodeCount
|
|
34
|
+
* This holds because the 3 node-level verdicts are exhaustive and the counts
|
|
35
|
+
* are derived by independent filters over the same nodeResults array.
|
|
36
|
+
*
|
|
37
|
+
* ── What this mapper does NOT do ─────────────────────────────────────────────
|
|
38
|
+
*
|
|
39
|
+
* ✗ Infer missing node results
|
|
40
|
+
* ✗ Collapse states (e.g., merge SKIPPED into DRIFTED)
|
|
41
|
+
* ✗ Reinterpret replay semantics
|
|
42
|
+
* ✗ Add summaries beyond the spec
|
|
43
|
+
* ✗ Derive new conclusions from the verdict
|
|
44
|
+
*
|
|
45
|
+
* The replay envelope is a mirror, not an opinion.
|
|
46
|
+
*/
|
|
47
|
+
import type { ReplayReportEnvelope, UCPRefs } from "../types.js";
|
|
48
|
+
/**
|
|
49
|
+
* Minimal structural type for one node replay result.
|
|
50
|
+
* Consumers pass objects with nodeId, command, verdict, and optional drift fields.
|
|
51
|
+
* We access only .verdict for count derivation.
|
|
52
|
+
*/
|
|
53
|
+
export type NodeReplayResultLike = {
|
|
54
|
+
readonly verdict: "VERIFIED" | "DRIFTED" | "SKIPPED";
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Minimal structural type matching the relevant fields of ReplayReport.
|
|
58
|
+
* No branded import needed — TypeScript structural typing ensures compatibility.
|
|
59
|
+
*/
|
|
60
|
+
export type ReplayReportLike = {
|
|
61
|
+
readonly runId: string;
|
|
62
|
+
readonly artifactChecksum: string;
|
|
63
|
+
readonly checksumValid: boolean;
|
|
64
|
+
readonly verdict: "VERIFIED" | "DRIFTED" | "CORRUPTED" | "PARTIAL";
|
|
65
|
+
/** Empty array when verdict === "CORRUPTED" (short-circuit before drift detection). */
|
|
66
|
+
readonly nodeResults: readonly NodeReplayResultLike[];
|
|
67
|
+
readonly replayedAtMs: number;
|
|
68
|
+
};
|
|
69
|
+
/**
|
|
70
|
+
* Map a replay report to its canonical UCP envelope.
|
|
71
|
+
*
|
|
72
|
+
* Pure function — same report → same envelope id (content-addressed).
|
|
73
|
+
* Count fields are derived from nodeResults; no logic is applied beyond counting.
|
|
74
|
+
*
|
|
75
|
+
* @param report The replay verification outcome (must satisfy ReplayReportLike shape)
|
|
76
|
+
* @param refs Optional provenance refs:
|
|
77
|
+
* refs.parentId = ucp.artifact.v1 ID (the artifact that was verified)
|
|
78
|
+
* refs.rootId = ucp.intent.v1 ID (originating intent, propagated)
|
|
79
|
+
*/
|
|
80
|
+
export declare function mapReplayReportToEnvelope(report: ReplayReportLike, refs?: UCPRefs): ReplayReportEnvelope;
|
|
81
|
+
//# sourceMappingURL=map-replay-report.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-replay-report.d.ts","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-replay-report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAGH,OAAO,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEjE;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;CACtD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,KAAK,EAAa,MAAM,CAAC;IAClC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,aAAa,EAAK,OAAO,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAW,UAAU,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;IAC5E,uFAAuF;IACvF,QAAQ,CAAC,WAAW,EAAO,SAAS,oBAAoB,EAAE,CAAC;IAC3D,QAAQ,CAAC,YAAY,EAAM,MAAM,CAAC;CACnC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,gBAAgB,EACxB,IAAI,CAAC,EAAE,OAAO,GACb,oBAAoB,CAoBtB"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: ReplayReportLike → ReplayReportEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Maps from a replay verification report to its canonical UCP envelope.
|
|
5
|
+
* This mapper is intentionally defined against a minimal structural type
|
|
6
|
+
* (ReplayReportLike) rather than importing any branded ReplayReport — avoiding
|
|
7
|
+
* circular dependencies while remaining fully type-safe via TypeScript's
|
|
8
|
+
* structural compatibility.
|
|
9
|
+
*
|
|
10
|
+
* ── Mapping rules (field-for-field) ──────────────────────────────────────────
|
|
11
|
+
*
|
|
12
|
+
* runId ← report.runId (direct copy)
|
|
13
|
+
* verdict ← report.verdict (direct copy)
|
|
14
|
+
* checksumValid ← report.checksumValid (direct copy)
|
|
15
|
+
* artifactChecksum ← report.artifactChecksum (direct copy)
|
|
16
|
+
* nodeCount ← report.nodeResults.length (derived)
|
|
17
|
+
* verifiedCount ← filter(n => n.verdict === "VERIFIED") (derived)
|
|
18
|
+
* driftedCount ← filter(n => n.verdict === "DRIFTED") (derived)
|
|
19
|
+
* skippedCount ← filter(n => n.verdict === "SKIPPED") (derived)
|
|
20
|
+
* replayedAtMs ← report.replayedAtMs (direct copy)
|
|
21
|
+
*
|
|
22
|
+
* ── CORRUPTED short-circuit behavior ─────────────────────────────────────────
|
|
23
|
+
*
|
|
24
|
+
* When report.checksumValid === false (verdict === "CORRUPTED"):
|
|
25
|
+
* report.nodeResults is [] (verification short-circuits before drift detection)
|
|
26
|
+
* Therefore: nodeCount = 0, verifiedCount = 0, driftedCount = 0, skippedCount = 0
|
|
27
|
+
* This is not invented — it follows directly from the source data.
|
|
28
|
+
* The mapper does NOT special-case CORRUPTED; it maps nodeResults.length as-is.
|
|
29
|
+
*
|
|
30
|
+
* ── Exhaustiveness invariant ──────────────────────────────────────────────────
|
|
31
|
+
*
|
|
32
|
+
* For all non-CORRUPTED reports:
|
|
33
|
+
* verifiedCount + driftedCount + skippedCount === nodeCount
|
|
34
|
+
* This holds because the 3 node-level verdicts are exhaustive and the counts
|
|
35
|
+
* are derived by independent filters over the same nodeResults array.
|
|
36
|
+
*
|
|
37
|
+
* ── What this mapper does NOT do ─────────────────────────────────────────────
|
|
38
|
+
*
|
|
39
|
+
* ✗ Infer missing node results
|
|
40
|
+
* ✗ Collapse states (e.g., merge SKIPPED into DRIFTED)
|
|
41
|
+
* ✗ Reinterpret replay semantics
|
|
42
|
+
* ✗ Add summaries beyond the spec
|
|
43
|
+
* ✗ Derive new conclusions from the verdict
|
|
44
|
+
*
|
|
45
|
+
* The replay envelope is a mirror, not an opinion.
|
|
46
|
+
*/
|
|
47
|
+
import { createReplayReportEnvelope } from "../envelope.js";
|
|
48
|
+
/**
|
|
49
|
+
* Map a replay report to its canonical UCP envelope.
|
|
50
|
+
*
|
|
51
|
+
* Pure function — same report → same envelope id (content-addressed).
|
|
52
|
+
* Count fields are derived from nodeResults; no logic is applied beyond counting.
|
|
53
|
+
*
|
|
54
|
+
* @param report The replay verification outcome (must satisfy ReplayReportLike shape)
|
|
55
|
+
* @param refs Optional provenance refs:
|
|
56
|
+
* refs.parentId = ucp.artifact.v1 ID (the artifact that was verified)
|
|
57
|
+
* refs.rootId = ucp.intent.v1 ID (originating intent, propagated)
|
|
58
|
+
*/
|
|
59
|
+
export function mapReplayReportToEnvelope(report, refs) {
|
|
60
|
+
const nodeCount = report.nodeResults.length;
|
|
61
|
+
const verifiedCount = report.nodeResults.filter((n) => n.verdict === "VERIFIED").length;
|
|
62
|
+
const driftedCount = report.nodeResults.filter((n) => n.verdict === "DRIFTED").length;
|
|
63
|
+
const skippedCount = report.nodeResults.filter((n) => n.verdict === "SKIPPED").length;
|
|
64
|
+
return createReplayReportEnvelope({
|
|
65
|
+
runId: report.runId,
|
|
66
|
+
verdict: report.verdict,
|
|
67
|
+
checksumValid: report.checksumValid,
|
|
68
|
+
artifactChecksum: report.artifactChecksum,
|
|
69
|
+
nodeCount,
|
|
70
|
+
verifiedCount,
|
|
71
|
+
driftedCount,
|
|
72
|
+
skippedCount,
|
|
73
|
+
replayedAtMs: report.replayedAtMs,
|
|
74
|
+
}, refs);
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=map-replay-report.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-replay-report.js","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-replay-report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAEH,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AA0B5D;;;;;;;;;;GAUG;AACH,MAAM,UAAU,yBAAyB,CACvC,MAAwB,EACxB,IAAc;IAEd,MAAM,SAAS,GAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;IAChD,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;IACxF,MAAM,YAAY,GAAI,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;IACvF,MAAM,YAAY,GAAI,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;IAEvF,OAAO,0BAA0B,CAC/B;QACE,KAAK,EAAa,MAAM,CAAC,KAAK;QAC9B,OAAO,EAAW,MAAM,CAAC,OAAO;QAChC,aAAa,EAAK,MAAM,CAAC,aAAa;QACtC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,SAAS;QACT,aAAa;QACb,YAAY;QACZ,YAAY;QACZ,YAAY,EAAM,MAAM,CAAC,YAAY;KACtC,EACD,IAAI,CACL,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: IntakeResult → ResponseEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Maps the final planner decision from IntakeResult (src/intake/types.ts).
|
|
5
|
+
* This is always the last decision envelope in a UCP bundle.
|
|
6
|
+
*
|
|
7
|
+
* Optional fields (guidance) use conditional spreading — never explicit undefined.
|
|
8
|
+
* See: src/ucp/types.ts — "PROTOCOL INVARIANT: Payloads must be undefined-free"
|
|
9
|
+
*/
|
|
10
|
+
import type { ResponseEnvelope, UCPRefs } from "../types.js";
|
|
11
|
+
import type { IntakeResult } from "../../intake/types.js";
|
|
12
|
+
export declare function mapResponseToEnvelope(result: IntakeResult, refs?: UCPRefs): ResponseEnvelope;
|
|
13
|
+
//# sourceMappingURL=map-response.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-response.d.ts","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-response.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAiB5F"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: IntakeResult → ResponseEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Maps the final planner decision from IntakeResult (src/intake/types.ts).
|
|
5
|
+
* This is always the last decision envelope in a UCP bundle.
|
|
6
|
+
*
|
|
7
|
+
* Optional fields (guidance) use conditional spreading — never explicit undefined.
|
|
8
|
+
* See: src/ucp/types.ts — "PROTOCOL INVARIANT: Payloads must be undefined-free"
|
|
9
|
+
*/
|
|
10
|
+
import { createResponseEnvelope } from "../envelope.js";
|
|
11
|
+
export function mapResponseToEnvelope(result, refs) {
|
|
12
|
+
const guidance = result.guidance !== undefined
|
|
13
|
+
? {
|
|
14
|
+
missing: [...result.guidance.missing],
|
|
15
|
+
nextSteps: result.guidance.nextSteps.map((s) => ({ type: s.type, label: s.label })),
|
|
16
|
+
}
|
|
17
|
+
: undefined;
|
|
18
|
+
return createResponseEnvelope({
|
|
19
|
+
mode: result.mode,
|
|
20
|
+
reason: result.reason,
|
|
21
|
+
intentState: result.intentState,
|
|
22
|
+
...(guidance !== undefined ? { guidance } : {}),
|
|
23
|
+
}, refs);
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=map-response.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-response.js","sourceRoot":"","sources":["../../../../src/ucp/mappers/map-response.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAIxD,MAAM,UAAU,qBAAqB,CAAC,MAAoB,EAAE,IAAc;IACxE,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,KAAK,SAAS;QAC5C,CAAC,CAAC;YACE,OAAO,EAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;YACvC,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;SACpF;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO,sBAAsB,CAC3B;QACE,IAAI,EAAS,MAAM,CAAC,IAAI;QACxB,MAAM,EAAO,MAAM,CAAC,MAAM;QAC1B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChD,EACD,IAAI,CACL,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapper: SafetyResult → SafetyEnvelope.
|
|
3
|
+
*
|
|
4
|
+
* Maps exactly from SafetyResult (src/safety/types.ts).
|
|
5
|
+
* Includes inspection fields (detectorId, matchedPattern) when present.
|
|
6
|
+
* "allow" results carry only the verdict — no reason or note.
|
|
7
|
+
*
|
|
8
|
+
* Optional fields use conditional spreading — never explicit undefined.
|
|
9
|
+
* See: src/ucp/types.ts — "PROTOCOL INVARIANT: Payloads must be undefined-free"
|
|
10
|
+
*/
|
|
11
|
+
import type { SafetyEnvelope, UCPRefs } from "../types.js";
|
|
12
|
+
import type { SafetyResult } from "../../safety/types.js";
|
|
13
|
+
export declare function mapSafetyToEnvelope(result: SafetyResult, refs?: UCPRefs): SafetyEnvelope;
|
|
14
|
+
//# sourceMappingURL=map-safety.d.ts.map
|