@unbrained/pm-cli 2026.10.11 → 2026.10.13
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/.claude-plugin/marketplace.json +1 -1
- package/CHANGELOG.md +45 -0
- package/dist/cli/after-command-context-usage.d.ts +8 -8
- package/dist/cli/bundle-integrity.d.ts +23 -23
- package/dist/cli/commander-usage.d.ts +31 -31
- package/dist/cli/commander-usage.js +3 -3
- package/dist/cli/error-guidance.d.ts +158 -161
- package/dist/cli/error-guidance.js +2 -2
- package/dist/cli/extension-command-help.d.ts +68 -68
- package/dist/cli/extension-command-options.d.ts +20 -20
- package/dist/cli/extension-recovery.d.ts +20 -20
- package/dist/cli/help-content.d.ts +16 -16
- package/dist/cli/help-content.js +2 -2
- package/dist/cli/help-json-payload.d.ts +40 -40
- package/dist/cli/help-json-payload.js +1 -1
- package/dist/cli/invocation-profile.d.ts +8 -8
- package/dist/cli/main.d.ts +166 -165
- package/dist/cli/main.js +4 -4
- package/dist/cli/migration-gates.d.ts +20 -20
- package/dist/cli/register-list-query.d.ts +4 -4
- package/dist/cli/register-mutation-options.d.ts +2 -2
- package/dist/cli/register-operations.d.ts +68 -63
- package/dist/cli/register-operations.js +1 -1
- package/dist/cli/register-setup.d.ts +1 -1
- package/dist/cli/register-structured-mutation.d.ts +3 -3
- package/dist/cli/register-structured-mutation.js +1 -1
- package/dist/cli/runtime/activation.d.ts +3 -3
- package/dist/cli/runtime/invocation-options.js +1 -1
- package/dist/cli/runtime/selection.d.ts +6 -6
- package/dist/cli/runtime-compatibility-boundary.d.ts +12 -12
- package/dist/cli-bundle/bundle-manifest.json +1 -1
- package/dist/cli-bundle/chunks/{chunk-K2UTE75T.js → chunk-AM2XOZKE.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-S445XEYT.js → chunk-APWPC4ZZ.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-DJDRHJBP.js +234 -0
- package/dist/cli-bundle/chunks/{chunk-RUT3CCAG.js → chunk-DUK5DHI6.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-HXHFKXLV.js +2 -0
- package/dist/cli-bundle/chunks/chunk-IFPJDJUM.js +20 -0
- package/dist/cli-bundle/chunks/{chunk-OBLO45UM.js → chunk-LBDWFWPK.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-ZWRLAOA4.js → chunk-N5EXRYCZ.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-PSNS537F.js +30 -0
- package/dist/cli-bundle/chunks/{chunk-2JYTSTQP.js → chunk-RL45OYTL.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-ESRACL6K.js → chunk-UBTYYZIE.js} +49 -49
- package/dist/cli-bundle/chunks/chunk-WYZGZV2M.js +2 -0
- package/dist/cli-bundle/chunks/{chunk-SSY4OSJR.js → chunk-YH6H3UVE.js} +10 -10
- package/dist/cli-bundle/chunks/{register-list-query-T6BOR67M.js → register-list-query-BJ742QOR.js} +2 -2
- package/dist/cli-bundle/chunks/{register-mutation-6NXR7SAJ.js → register-mutation-GGGBRIH2.js} +3 -3
- package/dist/cli-bundle/chunks/register-operations-E6HXYHNM.js +2 -0
- package/dist/cli-bundle/chunks/{register-setup-MAYFPKBX.js → register-setup-4ZVTVEPY.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-EIOQNLBQ.js → chunk-3LQEBXU5.js} +12 -12
- package/dist/cli-bundle/focused-chunks/{chunk-PLTTMQAW.js → chunk-6BTUISKV.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-73UNAJHD.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-WAOXID5J.js → chunk-DVK7VKZL.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-SIEGIPNT.js → chunk-F5J3ATMV.js} +16 -16
- package/dist/cli-bundle/focused-chunks/chunk-IIKFTJVC.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-IOTNG6CN.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-AU6VJGTY.js → chunk-KGFRQ34R.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-NNW5BS5L.js +3 -0
- package/dist/cli-bundle/focused-chunks/{chunk-KNJR2WUO.js → chunk-QMNAY25P.js} +62 -62
- package/dist/cli-bundle/focused-chunks/{chunk-W5AE7GKZ.js → chunk-R23T7GFZ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-RAA7SVRA.js +8 -0
- package/dist/cli-bundle/focused-chunks/{chunk-52UJEHEV.js → chunk-RU6GCFN3.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-JGFSSR3G.js → chunk-S6ITXQ5T.js} +5 -5
- package/dist/cli-bundle/focused-chunks/{chunk-DMSADMEU.js → chunk-SOB7X4FJ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-UPJA45K7.js +26 -0
- package/dist/cli-bundle/main.js +22 -22
- package/dist/cli-bundle/sdk-authoring.js +1 -1
- package/dist/cli-bundle/sdk-contracts.js +2 -2
- package/dist/cli-bundle/sdk-core.js +31 -31
- package/dist/cli-bundle/sdk-governance.js +1 -1
- package/dist/cli-bundle/sdk-graph.js +1 -1
- package/dist/cli-bundle/sdk-merge.js +51 -51
- package/dist/cli-bundle/sdk-query.js +1 -1
- package/dist/cli-bundle/sdk-runtime.js +1 -1
- package/dist/cli-bundle/sdk-testing.js +1 -1
- package/dist/cli-bundle/sdk.js +8 -8
- package/dist/cli.d.ts +4 -4
- package/dist/core/checkpoint/checkpoint-gc.d.ts +32 -32
- package/dist/core/checkpoint/mutation-checkpoint.d.ts +34 -34
- package/dist/core/config/nested-settings.d.ts +26 -26
- package/dist/core/config/positional-value.d.ts +16 -16
- package/dist/core/diagnostics/remediation.d.ts +6 -6
- package/dist/core/diagnostics/remediation.js +1 -1
- package/dist/core/extensions/activation-summary-markdown.d.ts +6 -6
- package/dist/core/extensions/activation-summary.d.ts +54 -54
- package/dist/core/extensions/activation-transaction.d.ts +7 -7
- package/dist/core/extensions/capability-usage.d.ts +26 -26
- package/dist/core/extensions/command-hook-context.d.ts +26 -26
- package/dist/core/extensions/contribution-inventory.d.ts +21 -21
- package/dist/core/extensions/extension-candidate.d.ts +14 -14
- package/dist/core/extensions/extension-capability-aliases.d.ts +2 -2
- package/dist/core/extensions/extension-policy.d.ts +80 -80
- package/dist/core/extensions/extension-types.d.ts +1294 -1285
- package/dist/core/extensions/extension-types.js +1 -1
- package/dist/core/extensions/flag-definition-validation.d.ts +4 -4
- package/dist/core/extensions/item-fields.d.ts +3 -2
- package/dist/core/extensions/item-fields.js +1 -1
- package/dist/core/extensions/loader.d.ts +36 -36
- package/dist/core/extensions/loader.js +1 -1
- package/dist/core/extensions/manifest-schema.d.ts +16 -16
- package/dist/core/extensions/module-graph-snapshot.d.ts +8 -8
- package/dist/core/extensions/read-output-contract.d.ts +5 -0
- package/dist/core/extensions/read-output-contract.js +2 -0
- package/dist/core/extensions/registration-values.d.ts +1 -1
- package/dist/core/extensions/reserved-host-flags.d.ts +6 -6
- package/dist/core/extensions/version-compat.d.ts +10 -10
- package/dist/core/fs/fs-utils.d.ts +1 -1
- package/dist/core/fs/host-environment-errors.d.ts +14 -14
- package/dist/core/governance/content-fields.d.ts +31 -31
- package/dist/core/governance/issue-codes.d.ts +27 -27
- package/dist/core/governance/metadata-coverage.d.ts +91 -91
- package/dist/core/history/drift-scan.d.ts +26 -26
- package/dist/core/history/event-classification.d.ts +1 -1
- package/dist/core/history/event-classification.js +1 -1
- package/dist/core/history/event-index.d.ts +41 -41
- package/dist/core/history/history-compact-bulk.d.ts +22 -22
- package/dist/core/history/history-diff.d.ts +22 -22
- package/dist/core/history/history-rewrite.d.ts +66 -66
- package/dist/core/history/history-storage-stats.d.ts +31 -31
- package/dist/core/history/history-stream-policy.d.ts +12 -12
- package/dist/core/history/history.d.ts +22 -22
- package/dist/core/history/identity.d.ts +6 -6
- package/dist/core/history/operation-contract.d.ts +9 -9
- package/dist/core/history/projection.d.ts +15 -15
- package/dist/core/history/read.d.ts +4 -4
- package/dist/core/history/replay.d.ts +51 -49
- package/dist/core/history/replay.js +1 -1
- package/dist/core/history/workspace-history.d.ts +101 -101
- package/dist/core/io/bulk-ids-input.d.ts +4 -4
- package/dist/core/item/actionability.d.ts +40 -40
- package/dist/core/item/id.d.ts +3 -3
- package/dist/core/item/item-format-version.d.ts +8 -8
- package/dist/core/item/item-format.d.ts +37 -35
- package/dist/core/item/item-format.js +2 -2
- package/dist/core/item/item-type-definition.d.ts +2 -2
- package/dist/core/item/parent-reference-policy.d.ts +1 -1
- package/dist/core/item/parse.d.ts +12 -12
- package/dist/core/item/sprint-release-format.d.ts +2 -2
- package/dist/core/item/status-filter.d.ts +4 -4
- package/dist/core/item/toon-decode.d.ts +9 -9
- package/dist/core/item/type-registry.d.ts +40 -40
- package/dist/core/lock/lock-gc.d.ts +50 -50
- package/dist/core/lock/lock.d.ts +37 -37
- package/dist/core/output/mutation-projection.d.ts +6 -6
- package/dist/core/output/output-control.d.ts +4 -4
- package/dist/core/output/output.d.ts +40 -40
- package/dist/core/output/query-summary.d.ts +5 -5
- package/dist/core/packages/manifest.d.ts +50 -50
- package/dist/core/policy/workflow-policy-schema.d.ts +306 -306
- package/dist/core/policy/workflow-policy-store.d.ts +7 -7
- package/dist/core/policy/workflow-policy.d.ts +81 -81
- package/dist/core/profile/profile-describe.d.ts +40 -40
- package/dist/core/profile/profile-lint.d.ts +20 -20
- package/dist/core/profile/profile-plan.d.ts +84 -84
- package/dist/core/profile/profile-presets.d.ts +52 -52
- package/dist/core/reproducibility/context.d.ts +6 -6
- package/dist/core/schema/fields-file.d.ts +54 -54
- package/dist/core/schema/item-types-file.d.ts +36 -36
- package/dist/core/schema/runtime-field-values.d.ts +2 -2
- package/dist/core/schema/runtime-schema.d.ts +86 -86
- package/dist/core/schema/status-defs-file.d.ts +36 -36
- package/dist/core/schema/type-inference.d.ts +14 -14
- package/dist/core/schema/type-workflows.d.ts +22 -22
- package/dist/core/search/background-refresh.d.ts +9 -9
- package/dist/core/search/bm25.d.ts +19 -19
- package/dist/core/search/cache.d.ts +35 -35
- package/dist/core/search/corpus.d.ts +12 -12
- package/dist/core/search/embedding-batches.d.ts +48 -48
- package/dist/core/search/eval.d.ts +49 -49
- package/dist/core/search/http-client.d.ts +38 -38
- package/dist/core/search/providers.d.ts +41 -41
- package/dist/core/search/relevance.d.ts +20 -20
- package/dist/core/search/semantic-defaults.d.ts +8 -8
- package/dist/core/search/staleness.d.ts +4 -4
- package/dist/core/search/vector-stores.d.ts +78 -78
- package/dist/core/search/vectorization-metadata.d.ts +6 -6
- package/dist/core/sentry/helpers.d.ts +15 -15
- package/dist/core/sentry/instrument.d.ts +40 -40
- package/dist/core/session/session-state.d.ts +32 -32
- package/dist/core/shared/agent-session-context.d.ts +14 -14
- package/dist/core/shared/author.d.ts +128 -128
- package/dist/core/shared/command-types.d.ts +40 -40
- package/dist/core/shared/conflict-markers.d.ts +6 -6
- package/dist/core/shared/constants.d.ts +13 -13
- package/dist/core/shared/errors.d.ts +194 -183
- package/dist/core/shared/errors.js +1 -1
- package/dist/core/shared/secret-rules.d.ts +97 -97
- package/dist/core/shared/serial-queue.d.ts +8 -8
- package/dist/core/shared/split-comma-list.d.ts +6 -6
- package/dist/core/shared/time.d.ts +23 -23
- package/dist/core/store/item-format-migration.d.ts +10 -10
- package/dist/core/store/item-metadata-cache.d.ts +38 -38
- package/dist/core/store/item-metadata-query-index.d.ts +79 -79
- package/dist/core/store/item-metadata-read-work.d.ts +6 -6
- package/dist/core/store/item-store.d.ts +110 -110
- package/dist/core/store/paths.d.ts +2 -2
- package/dist/core/store/settings-read-cache.d.ts +12 -12
- package/dist/core/store/settings-validator.d.ts +165 -165
- package/dist/core/store/settings.d.ts +59 -59
- package/dist/core/telemetry/observability.d.ts +17 -17
- package/dist/core/telemetry/policy.d.ts +3 -3
- package/dist/core/telemetry/runtime.d.ts +242 -242
- package/dist/core/telemetry/runtime.js +2 -2
- package/dist/core/test/background-runs.d.ts +186 -185
- package/dist/core/test/background-runs.js +2 -2
- package/dist/core/test/item-test-run-tracking.d.ts +6 -6
- package/dist/core/test/run-selectors.d.ts +18 -18
- package/dist/core/validate/fix-planning.d.ts +50 -50
- package/dist/core/validate/missing-by-type.d.ts +4 -4
- package/dist/core/validate/missing-link-owners.d.ts +30 -30
- package/dist/core/validate/stale-file-classification.d.ts +8 -8
- package/dist/mcp/http-server.d.ts +28 -28
- package/dist/mcp/legacy-adapter.d.ts +33 -33
- package/dist/mcp/runtime-capabilities.d.ts +16 -16
- package/dist/mcp/server.d.ts +50 -50
- package/dist/mcp/tool-definitions.d.ts +36 -36
- package/dist/sdk/agent/closed-domain-contracts.d.ts +18 -18
- package/dist/sdk/agent/command-recovery.d.ts +4 -0
- package/dist/sdk/agent/command-recovery.js +1 -1
- package/dist/sdk/agent/command-suggestions.d.ts +2 -0
- package/dist/sdk/agent/command-suggestions.js +1 -1
- package/dist/sdk/agent/identity-config.d.ts +32 -32
- package/dist/sdk/agent/item-addressing.d.ts +8 -8
- package/dist/sdk/agent/refusal-closure-census.d.ts +34 -34
- package/dist/sdk/agent/refusal-closure.d.ts +42 -42
- package/dist/sdk/agent/refusal-corpus-contracts.d.ts +46 -46
- package/dist/sdk/agent/refusal-reachability.d.ts +112 -112
- package/dist/sdk/agent/subcommand-recovery.d.ts +25 -25
- package/dist/sdk/agent/task-transcript-contracts.d.ts +30 -30
- package/dist/sdk/agent/tracker-preflight-contracts.d.ts +38 -38
- package/dist/sdk/agent-capability-contracts.d.ts +37 -37
- package/dist/sdk/annotations.d.ts +106 -106
- package/dist/sdk/author-attribution.d.ts +76 -76
- package/dist/sdk/authoring.d.ts +1 -1
- package/dist/sdk/authoring.js +1 -1
- package/dist/sdk/cli-bootstrap.d.ts +70 -70
- package/dist/sdk/cli-contracts/agent-output-contracts.d.ts +63 -63
- package/dist/sdk/cli-contracts/command-aliases.d.ts +14 -14
- package/dist/sdk/cli-contracts/command-exit-contracts.d.ts +70 -70
- package/dist/sdk/cli-contracts/commander-types.d.ts +17 -17
- package/dist/sdk/cli-contracts/completeness.d.ts +26 -26
- package/dist/sdk/cli-contracts/enum-contracts.d.ts +5 -5
- package/dist/sdk/cli-contracts/flag-contracts.d.ts +32 -32
- package/dist/sdk/cli-contracts/flag-contracts.js +1 -1
- package/dist/sdk/cli-contracts/flag-lexicon-contracts.d.ts +42 -42
- package/dist/sdk/cli-contracts/flag-lexicon-contracts.js +1 -1
- package/dist/sdk/cli-contracts/grammar-contracts.d.ts +84 -84
- package/dist/sdk/cli-contracts/grammar-contracts.js +1 -1
- package/dist/sdk/cli-contracts/registration-helpers.d.ts +37 -40
- package/dist/sdk/cli-contracts/registration-helpers.js +1 -1
- package/dist/sdk/cli-contracts/runtime-contracts.d.ts +290 -294
- package/dist/sdk/cli-contracts/runtime-contracts.js +1 -1
- package/dist/sdk/cli-contracts/schemas/assurance-definition.d.ts +793 -793
- package/dist/sdk/cli-contracts/tool-option-contracts.d.ts +391 -391
- package/dist/sdk/cli-contracts/tool-parameter-tables.d.ts +6 -6
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +1 -1
- package/dist/sdk/cli-contracts/tool-schema.d.ts +55 -55
- package/dist/sdk/cli-contracts/tool-schema.js +1 -1
- package/dist/sdk/cli-contracts/typed-action-inputs.d.ts +24 -24
- package/dist/sdk/comments.d.ts +44 -44
- package/dist/sdk/compile-cache.d.ts +4 -4
- package/dist/sdk/completion/shared.d.ts +22 -22
- package/dist/sdk/compose.d.ts +156 -156
- package/dist/sdk/config.d.ts +123 -123
- package/dist/sdk/context/semantic-session-attribution.d.ts +14 -14
- package/dist/sdk/context/usage-ledger.d.ts +20 -20
- package/dist/sdk/context-intent-contracts.d.ts +50 -50
- package/dist/sdk/context-intent-contracts.js +1 -1
- package/dist/sdk/context-intent-runtime.d.ts +8 -8
- package/dist/sdk/context-packing.d.ts +78 -78
- package/dist/sdk/context-relevance.d.ts +189 -180
- package/dist/sdk/context-relevance.js +1 -1
- package/dist/sdk/context-signal-store.d.ts +84 -84
- package/dist/sdk/context-usage.d.ts +92 -92
- package/dist/sdk/core.d.ts +1 -0
- package/dist/sdk/core.js +1 -1
- package/dist/sdk/corpus-shape.d.ts +101 -101
- package/dist/sdk/define.d.ts +2 -2
- package/dist/sdk/dependencies.d.ts +116 -116
- package/dist/sdk/dependency-flag-validation.d.ts +14 -12
- package/dist/sdk/dependency-flag-validation.js +1 -1
- package/dist/sdk/dependency-provenance.d.ts +30 -30
- package/dist/sdk/docs.d.ts +32 -32
- package/dist/sdk/duplicates.d.ts +21 -21
- package/dist/sdk/environment/agent-environment.d.ts +196 -196
- package/dist/sdk/environment/project-runtime-compatibility.d.ts +56 -56
- package/dist/sdk/environment/source-context.d.ts +6 -6
- package/dist/sdk/error-code-catalog.d.ts +40 -40
- package/dist/sdk/errors.d.ts +29 -29
- package/dist/sdk/eval.d.ts +45 -45
- package/dist/sdk/extension/author-manifest.d.ts +14 -14
- package/dist/sdk/extension/bundled-catalog.d.ts +7 -7
- package/dist/sdk/extension/describe.d.ts +36 -36
- package/dist/sdk/extension/doctor.d.ts +29 -29
- package/dist/sdk/extension/install-plan.d.ts +55 -55
- package/dist/sdk/extension/install-receipts.d.ts +2 -2
- package/dist/sdk/extension/install-runtime.d.ts +8 -8
- package/dist/sdk/extension/install-snapshot.d.ts +14 -14
- package/dist/sdk/extension/install-sources.d.ts +96 -96
- package/dist/sdk/extension/managed-state.d.ts +66 -66
- package/dist/sdk/extension/migrations.d.ts +82 -82
- package/dist/sdk/extension/output-ownership.d.ts +24 -24
- package/dist/sdk/extension/runtime-summary.d.ts +5 -5
- package/dist/sdk/extension/scaffold.d.ts +12 -12
- package/dist/sdk/extension/shared.d.ts +15 -15
- package/dist/sdk/extension/source-resolution.d.ts +30 -30
- package/dist/sdk/extension/static-inventory.d.ts +42 -42
- package/dist/sdk/extension/update-check.d.ts +10 -10
- package/dist/sdk/extension.d.ts +320 -320
- package/dist/sdk/files.d.ts +157 -157
- package/dist/sdk/flag-invocation-contracts.d.ts +44 -44
- package/dist/sdk/generated/generated-error-code-catalog-part-1.js +1 -1
- package/dist/sdk/generated/generated-error-code-catalog-part-2.js +1 -1
- package/dist/sdk/governance/artifact-ledgers.d.ts +35 -35
- package/dist/sdk/governance/artifact-ledgers.js +1 -1
- package/dist/sdk/governance/assurance-action.d.ts +68 -68
- package/dist/sdk/governance/assurance-action.js +1 -1
- package/dist/sdk/governance/assurance-mutation-error.d.ts +36 -36
- package/dist/sdk/governance/assurance-presets.d.ts +24 -24
- package/dist/sdk/governance/assurance-runtime.d.ts +14 -14
- package/dist/sdk/governance/assurance.d.ts +353 -353
- package/dist/sdk/governance/boundary-fixtures.d.ts +60 -60
- package/dist/sdk/governance/closure-timestamps.d.ts +9 -9
- package/dist/sdk/governance/coverage-assurance.d.ts +10 -10
- package/dist/sdk/governance/defect-recurrence-coverage.d.ts +75 -75
- package/dist/sdk/governance/defect-recurrence-graph.d.ts +18 -18
- package/dist/sdk/governance/defect-recurrence.d.ts +186 -181
- package/dist/sdk/governance/defect-recurrence.js +1 -1
- package/dist/sdk/governance/extension-host-version.d.ts +16 -16
- package/dist/sdk/governance/gc.d.ts +48 -48
- package/dist/sdk/governance/health-merge-evidence.d.ts +5 -5
- package/dist/sdk/governance/health.d.ts +188 -188
- package/dist/sdk/governance/hierarchy-validation.d.ts +13 -13
- package/dist/sdk/governance/linked-file-report.d.ts +26 -26
- package/dist/sdk/governance/merge-receipt-history.d.ts +36 -36
- package/dist/sdk/governance/provenance-health.d.ts +64 -64
- package/dist/sdk/governance/reindex.d.ts +89 -89
- package/dist/sdk/governance/reliability.d.ts +56 -56
- package/dist/sdk/governance/stale-work.d.ts +22 -22
- package/dist/sdk/governance/status-role-diagnostics.d.ts +12 -12
- package/dist/sdk/governance/storage-integrity.d.ts +54 -54
- package/dist/sdk/governance/tracked-runtime-cache.d.ts +10 -10
- package/dist/sdk/governance/upgrade.d.ts +104 -104
- package/dist/sdk/governance/validate-history-drift.d.ts +2 -2
- package/dist/sdk/governance/validate-item-reader.d.ts +6 -6
- package/dist/sdk/governance/validate.d.ts +191 -191
- package/dist/sdk/governance/workflow-completeness.d.ts +15 -15
- package/dist/sdk/governance/workflow-policy.d.ts +28 -28
- package/dist/sdk/governance/workspace-position.d.ts +46 -46
- package/dist/sdk/graph/adapter.d.ts +66 -66
- package/dist/sdk/graph/analytics.d.ts +54 -54
- package/dist/sdk/graph/assembly.d.ts +80 -80
- package/dist/sdk/graph/cache.d.ts +29 -29
- package/dist/sdk/graph/cardinality-integrity.d.ts +13 -0
- package/dist/sdk/graph/cardinality-integrity.js +2 -0
- package/dist/sdk/graph/centrality.d.ts +34 -34
- package/dist/sdk/graph/conformance.d.ts +33 -33
- package/dist/sdk/graph/deadline-scheduling.d.ts +58 -58
- package/dist/sdk/graph/durable-cache.d.ts +26 -26
- package/dist/sdk/graph/governance.d.ts +165 -165
- package/dist/sdk/graph/hierarchy-integrity.d.ts +52 -52
- package/dist/sdk/graph/index.d.ts +1 -0
- package/dist/sdk/graph/index.js +1 -1
- package/dist/sdk/graph/lifecycle-coverage.d.ts +17 -17
- package/dist/sdk/graph/mutation-advisory.d.ts +11 -11
- package/dist/sdk/graph/query-contracts.d.ts +10 -10
- package/dist/sdk/graph/remediation.d.ts +25 -25
- package/dist/sdk/graph/run.d.ts +392 -392
- package/dist/sdk/graph/scheduling.d.ts +38 -38
- package/dist/sdk/graph/traversal.d.ts +14 -14
- package/dist/sdk/guide-topics.d.ts +32 -32
- package/dist/sdk/guide.d.ts +62 -62
- package/dist/sdk/history/attestation-command.d.ts +12 -12
- package/dist/sdk/history/attestation-contract.d.ts +78 -78
- package/dist/sdk/history/attestation-scan.d.ts +6 -6
- package/dist/sdk/history/maintenance.d.ts +46 -46
- package/dist/sdk/history/salvage.d.ts +18 -18
- package/dist/sdk/history/subject.d.ts +9 -9
- package/dist/sdk/history-analytics.d.ts +84 -84
- package/dist/sdk/history-compact.d.ts +103 -103
- package/dist/sdk/history-mcp.d.ts +8 -8
- package/dist/sdk/history-provenance.d.ts +59 -59
- package/dist/sdk/history-read.d.ts +36 -36
- package/dist/sdk/history-redact.d.ts +78 -78
- package/dist/sdk/history-repair.d.ts +158 -158
- package/dist/sdk/history-repair.js +1 -1
- package/dist/sdk/improvement-ledger.d.ts +102 -102
- package/dist/sdk/index.d.ts +2 -0
- package/dist/sdk/index.js +1 -1
- package/dist/sdk/init-agent-guidance.d.ts +70 -70
- package/dist/sdk/init.d.ts +152 -152
- package/dist/sdk/item-children.d.ts +28 -28
- package/dist/sdk/item-schedule.d.ts +12 -12
- package/dist/sdk/item-transaction.d.ts +100 -100
- package/dist/sdk/learnings.d.ts +42 -42
- package/dist/sdk/lifecycle/append.d.ts +14 -14
- package/dist/sdk/lifecycle/claim.d.ts +60 -60
- package/dist/sdk/lifecycle/close-many.d.ts +94 -94
- package/dist/sdk/lifecycle/close.d.ts +27 -27
- package/dist/sdk/lifecycle/copy.d.ts +18 -18
- package/dist/sdk/lifecycle/core-field-recovery.d.ts +7 -0
- package/dist/sdk/lifecycle/core-field-recovery.js +2 -0
- package/dist/sdk/lifecycle/create.d.ts +82 -82
- package/dist/sdk/lifecycle/create.js +1 -1
- package/dist/sdk/lifecycle/delete.d.ts +28 -28
- package/dist/sdk/lifecycle/focus.d.ts +10 -10
- package/dist/sdk/lifecycle/hierarchy-mutation-lock.d.ts +10 -10
- package/dist/sdk/lifecycle/hierarchy-mutation-lock.js +1 -1
- package/dist/sdk/lifecycle/legacy-none-tokens.d.ts +54 -54
- package/dist/sdk/lifecycle/lifecycle-transitions.d.ts +4 -4
- package/dist/sdk/lifecycle/mcp-actions.d.ts +10 -10
- package/dist/sdk/lifecycle/mutation-command-options.d.ts +116 -116
- package/dist/sdk/lifecycle/mutation-facet-contracts.d.ts +6 -0
- package/dist/sdk/lifecycle/mutation-facet-contracts.js +2 -0
- package/dist/sdk/lifecycle/plan-mutation-receipt.d.ts +42 -42
- package/dist/sdk/lifecycle/plan.d.ts +217 -217
- package/dist/sdk/lifecycle/reopen.d.ts +29 -24
- package/dist/sdk/lifecycle/reopen.js +1 -1
- package/dist/sdk/lifecycle/repeatable-metadata-parsers.d.ts +3 -3
- package/dist/sdk/lifecycle/restore.d.ts +33 -33
- package/dist/sdk/lifecycle/shared-unset-fields.d.ts +19 -19
- package/dist/sdk/lifecycle/task-composition.d.ts +4 -4
- package/dist/sdk/lifecycle/update-many.d.ts +79 -79
- package/dist/sdk/lifecycle/update.d.ts +131 -132
- package/dist/sdk/lifecycle/update.js +2 -2
- package/dist/sdk/lifecycle-completion.d.ts +22 -22
- package/dist/sdk/lifecycle-policy.d.ts +52 -52
- package/dist/sdk/linked-artifacts.d.ts +69 -69
- package/dist/sdk/mcp/apps.d.ts +32 -32
- package/dist/sdk/mcp/authorization.d.ts +76 -76
- package/dist/sdk/mcp/discovery.d.ts +111 -111
- package/dist/sdk/mcp/interactions.d.ts +61 -61
- package/dist/sdk/mcp/protocol.d.ts +78 -78
- package/dist/sdk/mcp/skills.d.ts +88 -88
- package/dist/sdk/mcp/subscriptions.d.ts +39 -39
- package/dist/sdk/mcp/tasks.d.ts +75 -75
- package/dist/sdk/mcp/transport.d.ts +11 -11
- package/dist/sdk/merge/abandoned-receipts.d.ts +6 -6
- package/dist/sdk/merge/driver.d.ts +60 -60
- package/dist/sdk/merge/install.d.ts +64 -64
- package/dist/sdk/merge/receipt-file-boundary.d.ts +5 -5
- package/dist/sdk/merge/receipt-operation.d.ts +6 -6
- package/dist/sdk/merge/receipt-schema.d.ts +2 -2
- package/dist/sdk/merge/receipts.d.ts +156 -156
- package/dist/sdk/merge/reconcile.d.ts +36 -36
- package/dist/sdk/merge/reconcile.js +1 -1
- package/dist/sdk/merge/three-way.d.ts +77 -76
- package/dist/sdk/merge/three-way.js +1 -1
- package/dist/sdk/mutation-events.d.ts +84 -84
- package/dist/sdk/mutation-guard.d.ts +106 -106
- package/dist/sdk/notes.d.ts +52 -52
- package/dist/sdk/output/table-rows.d.ts +8 -8
- package/dist/sdk/output-contracts.d.ts +38 -38
- package/dist/sdk/output-projection.d.ts +142 -142
- package/dist/sdk/output-token-accounting.d.ts +27 -27
- package/dist/sdk/output.d.ts +28 -28
- package/dist/sdk/package-import-adapters.d.ts +54 -54
- package/dist/sdk/pagination.d.ts +29 -29
- package/dist/sdk/profile.d.ts +123 -123
- package/dist/sdk/provenance.d.ts +58 -58
- package/dist/sdk/public-surface.json +1 -1
- package/dist/sdk/query/activity.d.ts +118 -118
- package/dist/sdk/query/aggregate.d.ts +140 -140
- package/dist/sdk/query/calendar.d.ts +144 -144
- package/dist/sdk/query/complete-list.d.ts +53 -53
- package/dist/sdk/query/context.d.ts +395 -395
- package/dist/sdk/query/duplicate-candidates.d.ts +1 -1
- package/dist/sdk/query/get.d.ts +77 -77
- package/dist/sdk/query/history.d.ts +72 -72
- package/dist/sdk/query/item-filter-options.d.ts +79 -79
- package/dist/sdk/query/list-filter-shared.d.ts +1 -1
- package/dist/sdk/query/list.d.ts +188 -188
- package/dist/sdk/query/multi-value-filters.d.ts +4 -4
- package/dist/sdk/query/next-ready-budget.d.ts +14 -14
- package/dist/sdk/query/next.d.ts +137 -137
- package/dist/sdk/query/projection-contracts.d.ts +8 -8
- package/dist/sdk/query/search/corpus.d.ts +8 -8
- package/dist/sdk/query/search/filters.d.ts +5 -5
- package/dist/sdk/query/search/input.d.ts +4 -4
- package/dist/sdk/query/search/response.d.ts +8 -8
- package/dist/sdk/query/search/semantic.d.ts +106 -106
- package/dist/sdk/query/search/types.d.ts +85 -85
- package/dist/sdk/query/search-contracts.d.ts +65 -65
- package/dist/sdk/query/search-pagination.d.ts +19 -19
- package/dist/sdk/query/search-rendering.d.ts +25 -25
- package/dist/sdk/query/search.d.ts +46 -46
- package/dist/sdk/read-output/continuation.d.ts +8 -8
- package/dist/sdk/read-output/continuation.js +1 -1
- package/dist/sdk/read-output/extension.d.ts +7 -0
- package/dist/sdk/read-output/extension.js +2 -0
- package/dist/sdk/read-output/options.d.ts +6 -4
- package/dist/sdk/read-output/options.js +1 -1
- package/dist/sdk/read-output/provenance.d.ts +8 -8
- package/dist/sdk/read-output-budget.d.ts +10 -10
- package/dist/sdk/read-output-contracts.d.ts +192 -186
- package/dist/sdk/read-output-contracts.js +1 -1
- package/dist/sdk/read-output-rows.d.ts +6 -6
- package/dist/sdk/read-output-session.d.ts +50 -50
- package/dist/sdk/relationship-analytics.d.ts +78 -78
- package/dist/sdk/relationship-context.d.ts +81 -81
- package/dist/sdk/relationship-history.d.ts +109 -109
- package/dist/sdk/relationship-kinds/contract.d.ts +34 -34
- package/dist/sdk/relationship-migration.d.ts +26 -26
- package/dist/sdk/relationships.d.ts +78 -78
- package/dist/sdk/reproducibility/process.d.ts +3 -3
- package/dist/sdk/runtime/context.d.ts +11 -11
- package/dist/sdk/runtime-action-aliases.d.ts +2 -2
- package/dist/sdk/runtime-extended-actions.d.ts +8 -8
- package/dist/sdk/runtime-input.d.ts +3 -3
- package/dist/sdk/runtime-public-contracts.d.ts +78 -78
- package/dist/sdk/runtime.d.ts +305 -305
- package/dist/sdk/runtime.js +1 -1
- package/dist/sdk/scheduling-shortcuts.d.ts +32 -32
- package/dist/sdk/schema-migration.d.ts +86 -86
- package/dist/sdk/schema.d.ts +355 -355
- package/dist/sdk/similarity-scoring.d.ts +10 -10
- package/dist/sdk/similarity.d.ts +113 -113
- package/dist/sdk/stats.d.ts +108 -108
- package/dist/sdk/structured-mutations.d.ts +16 -16
- package/dist/sdk/structured-mutations.js +1 -1
- package/dist/sdk/telemetry.d.ts +53 -53
- package/dist/sdk/templates.d.ts +39 -39
- package/dist/sdk/test/batch.d.ts +85 -85
- package/dist/sdk/test/batch.js +1 -1
- package/dist/sdk/test/command-args.d.ts +4 -0
- package/dist/sdk/test/command-args.js +2 -0
- package/dist/sdk/test/entry.d.ts +3 -0
- package/dist/sdk/test/entry.js +1 -1
- package/dist/sdk/test/execution-receipts.d.ts +3 -3
- package/dist/sdk/test/execution.d.ts +279 -268
- package/dist/sdk/test/execution.js +2 -2
- package/dist/sdk/test/json-path.d.ts +2 -2
- package/dist/sdk/test/linked-command-detection.d.ts +10 -10
- package/dist/sdk/test/measurements.d.ts +11 -11
- package/dist/sdk/test/parsers.d.ts +1 -1
- package/dist/sdk/test/parsers.js +1 -1
- package/dist/sdk/test/prerequisites.d.ts +6 -0
- package/dist/sdk/test/prerequisites.js +2 -0
- package/dist/sdk/test/runs.d.ts +52 -52
- package/dist/sdk/test/trust.d.ts +12 -12
- package/dist/sdk/test/trust.js +1 -1
- package/dist/sdk/test/update.d.ts +55 -0
- package/dist/sdk/test/update.js +2 -0
- package/dist/sdk/testing.d.ts +319 -319
- package/dist/sdk/traceability/source-traceability.d.ts +65 -65
- package/dist/sdk/workspace-contracts.d.ts +37 -37
- package/dist/sdk/workspace-memory.d.ts +60 -60
- package/dist/sdk/workspace-recipe.d.ts +9 -9
- package/dist/sdk/workspace-snapshot.d.ts +97 -97
- package/dist/sdk/workspace-transaction-gc.d.ts +32 -32
- package/dist/sdk/workspace-transaction.d.ts +47 -47
- package/dist/sdk/workspace.d.ts +6 -6
- package/dist/types.d.ts +978 -974
- package/dist/types.js +1 -1
- package/docs/BUILD_AND_RELEASE_ACCEPTANCE.md +5 -2
- package/docs/DEFECT_RECURRENCE.md +12 -0
- package/docs/EXTENSIONS.md +2 -2
- package/docs/LINKED_TEST_EDITS.md +79 -0
- package/docs/MERGE_SAFETY.md +27 -1
- package/docs/RECURRENCE_RECOVERY_CONTRACTS.md +17 -4
- package/docs/RELATIONSHIP_GRAPH.md +26 -0
- package/docs/RELEASING.md +25 -8
- package/docs/SDK.md +204 -637
- package/docs/SDK_CONSUMER_RECEIPTS.md +67 -0
- package/docs/SDK_EVIDENCE_TRACEABILITY.md +4 -0
- package/docs/TESTING.md +13 -0
- package/docs/generated/FLAG_LEXICON_BUDGETS.md +2 -2
- package/docs/generated/REFUSAL_CLOSURE_CENSUS.md +11 -3
- package/docs/performance/runner-qualification.md +36 -0
- package/marketplace.json +1 -1
- package/node_modules/@opentelemetry/core/build/esm/version.d.ts +1 -1
- package/node_modules/@opentelemetry/core/build/esm/version.js +1 -1
- package/node_modules/@opentelemetry/core/build/esnext/version.d.ts +1 -1
- package/node_modules/@opentelemetry/core/build/esnext/version.js +1 -1
- package/node_modules/@opentelemetry/core/build/src/version.d.ts +1 -1
- package/node_modules/@opentelemetry/core/build/src/version.js +1 -1
- package/node_modules/@opentelemetry/core/package.json +2 -2
- package/node_modules/@opentelemetry/resources/build/esm/version.d.ts +1 -1
- package/node_modules/@opentelemetry/resources/build/esm/version.js +1 -1
- package/node_modules/@opentelemetry/resources/build/esnext/version.d.ts +1 -1
- package/node_modules/@opentelemetry/resources/build/esnext/version.js +1 -1
- package/node_modules/@opentelemetry/resources/build/src/version.d.ts +1 -1
- package/node_modules/@opentelemetry/resources/build/src/version.js +1 -1
- package/node_modules/@opentelemetry/resources/package.json +3 -3
- package/node_modules/@opentelemetry/sdk-trace/build/esm/StackContextManager.d.ts +57 -0
- package/node_modules/@opentelemetry/sdk-trace/build/esm/StackContextManager.js +105 -0
- package/node_modules/@opentelemetry/sdk-trace/build/esm/index.d.ts +1 -0
- package/node_modules/@opentelemetry/sdk-trace/build/esm/index.js +1 -0
- package/node_modules/@opentelemetry/sdk-trace/build/esm/version.d.ts +1 -1
- package/node_modules/@opentelemetry/sdk-trace/build/esm/version.js +1 -1
- package/node_modules/@opentelemetry/sdk-trace/build/esnext/StackContextManager.d.ts +57 -0
- package/node_modules/@opentelemetry/sdk-trace/build/esnext/StackContextManager.js +105 -0
- package/node_modules/@opentelemetry/sdk-trace/build/esnext/index.d.ts +1 -0
- package/node_modules/@opentelemetry/sdk-trace/build/esnext/index.js +1 -0
- package/node_modules/@opentelemetry/sdk-trace/build/esnext/version.d.ts +1 -1
- package/node_modules/@opentelemetry/sdk-trace/build/esnext/version.js +1 -1
- package/node_modules/@opentelemetry/sdk-trace/build/src/StackContextManager.d.ts +57 -0
- package/node_modules/@opentelemetry/sdk-trace/build/src/StackContextManager.js +109 -0
- package/node_modules/@opentelemetry/sdk-trace/build/src/index.d.ts +1 -0
- package/node_modules/@opentelemetry/sdk-trace/build/src/index.js +3 -1
- package/node_modules/@opentelemetry/sdk-trace/build/src/version.d.ts +1 -1
- package/node_modules/@opentelemetry/sdk-trace/build/src/version.js +1 -1
- package/node_modules/@opentelemetry/sdk-trace/package.json +5 -5
- package/node_modules/@opentelemetry/sdk-trace-base/build/esm/version.d.ts +1 -1
- package/node_modules/@opentelemetry/sdk-trace-base/build/esm/version.js +1 -1
- package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/version.d.ts +1 -1
- package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/version.js +1 -1
- package/node_modules/@opentelemetry/sdk-trace-base/build/src/version.d.ts +1 -1
- package/node_modules/@opentelemetry/sdk-trace-base/build/src/version.js +1 -1
- package/node_modules/@opentelemetry/sdk-trace-base/package.json +7 -7
- package/node_modules/@sentry/core/build/cjs/browser.js +3 -0
- package/node_modules/@sentry/core/build/cjs/fetch.js +10 -9
- package/node_modules/@sentry/core/build/cjs/index.js +3 -0
- package/node_modules/@sentry/core/build/cjs/integrations/http/add-outgoing-request-breadcrumb.js +2 -1
- package/node_modules/@sentry/core/build/cjs/integrations/http/get-outgoing-span-data.js +3 -2
- package/node_modules/@sentry/core/build/cjs/integrations/http/server-subscription.js +7 -3
- package/node_modules/@sentry/core/build/cjs/integrations/requestdata.js +23 -9
- package/node_modules/@sentry/core/build/cjs/server.js +3 -0
- package/node_modules/@sentry/core/build/cjs/utils/data-collection/filterCollectedUrl.js +24 -0
- package/node_modules/@sentry/core/build/cjs/utils/data-collection/filterKeyValueData.js +17 -23
- package/node_modules/@sentry/core/build/cjs/utils/data-collection/filterQueryParams.js +8 -15
- package/node_modules/@sentry/core/build/cjs/utils/data-collection/filterUrlQuery.js +20 -0
- package/node_modules/@sentry/core/build/cjs/utils/url.js +4 -3
- package/node_modules/@sentry/core/build/cjs/utils/version.js +1 -1
- package/node_modules/@sentry/core/build/esm/browser.js +1 -0
- package/node_modules/@sentry/core/build/esm/fetch.js +10 -9
- package/node_modules/@sentry/core/build/esm/index.js +1 -0
- package/node_modules/@sentry/core/build/esm/integrations/http/add-outgoing-request-breadcrumb.js +2 -1
- package/node_modules/@sentry/core/build/esm/integrations/http/get-outgoing-span-data.js +3 -2
- package/node_modules/@sentry/core/build/esm/integrations/http/server-subscription.js +7 -3
- package/node_modules/@sentry/core/build/esm/integrations/requestdata.js +23 -9
- package/node_modules/@sentry/core/build/esm/package.json +1 -1
- package/node_modules/@sentry/core/build/esm/server.js +1 -0
- package/node_modules/@sentry/core/build/esm/utils/data-collection/filterCollectedUrl.js +21 -0
- package/node_modules/@sentry/core/build/esm/utils/data-collection/filterKeyValueData.js +18 -25
- package/node_modules/@sentry/core/build/esm/utils/data-collection/filterQueryParams.js +9 -16
- package/node_modules/@sentry/core/build/esm/utils/data-collection/filterUrlQuery.js +18 -0
- package/node_modules/@sentry/core/build/esm/utils/url.js +4 -3
- package/node_modules/@sentry/core/build/esm/utils/version.js +1 -1
- package/node_modules/@sentry/core/build/types/shared-exports.d.ts +1 -0
- package/node_modules/@sentry/core/build/types/utils/data-collection/filterCollectedUrl.d.ts +21 -0
- package/node_modules/@sentry/core/build/types/utils/data-collection/filterKeyValueData.d.ts +1 -0
- package/node_modules/@sentry/core/build/types/utils/data-collection/filterQueryParams.d.ts +2 -3
- package/node_modules/@sentry/core/build/types/utils/data-collection/filterUrlQuery.d.ts +13 -0
- package/node_modules/@sentry/core/build/types/utils/url.d.ts +4 -1
- package/node_modules/@sentry/core/build/types-ts3.8/shared-exports.d.ts +1 -0
- package/node_modules/@sentry/core/build/types-ts3.8/utils/data-collection/filterCollectedUrl.d.ts +21 -0
- package/node_modules/@sentry/core/build/types-ts3.8/utils/data-collection/filterKeyValueData.d.ts +1 -0
- package/node_modules/@sentry/core/build/types-ts3.8/utils/data-collection/filterQueryParams.d.ts +2 -3
- package/node_modules/@sentry/core/build/types-ts3.8/utils/data-collection/filterUrlQuery.d.ts +13 -0
- package/node_modules/@sentry/core/build/types-ts3.8/utils/url.d.ts +4 -1
- package/node_modules/@sentry/core/package.json +3 -2
- package/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/instrumentation.js +3 -0
- package/node_modules/@sentry/node/build/esm/integrations/tracing/vercelai/instrumentation.js +3 -0
- package/node_modules/@sentry/node/build/esm/package.json +1 -1
- package/node_modules/@sentry/node/package.json +7 -6
- package/node_modules/@sentry/node-core/build/cjs/integrations/anr/index.js +1 -1
- package/node_modules/@sentry/node-core/build/cjs/integrations/http/httpServerSpansIntegration.js +6 -3
- package/node_modules/@sentry/node-core/build/cjs/integrations/local-variables/local-variables-async.js +1 -1
- package/node_modules/@sentry/node-core/build/cjs/integrations/node-fetch/undici-instrumentation.js +2 -2
- package/node_modules/@sentry/node-core/build/cjs/light/client.js +7 -0
- package/node_modules/@sentry/node-core/build/cjs/sdk/client.js +7 -0
- package/node_modules/@sentry/node-core/build/cjs/utils/outgoingFetchRequest.js +1 -1
- package/node_modules/@sentry/node-core/build/esm/integrations/anr/index.js +1 -1
- package/node_modules/@sentry/node-core/build/esm/integrations/anr/worker-script.js +2 -2
- package/node_modules/@sentry/node-core/build/esm/integrations/http/httpServerSpansIntegration.js +7 -4
- package/node_modules/@sentry/node-core/build/esm/integrations/local-variables/local-variables-async.js +1 -1
- package/node_modules/@sentry/node-core/build/esm/integrations/local-variables/worker-script.js +1 -1
- package/node_modules/@sentry/node-core/build/esm/integrations/node-fetch/undici-instrumentation.js +3 -3
- package/node_modules/@sentry/node-core/build/esm/light/client.js +8 -1
- package/node_modules/@sentry/node-core/build/esm/package.json +1 -1
- package/node_modules/@sentry/node-core/build/esm/sdk/client.js +8 -1
- package/node_modules/@sentry/node-core/build/esm/utils/outgoingFetchRequest.js +2 -2
- package/node_modules/@sentry/node-core/build/types/light/client.d.ts +1 -0
- package/node_modules/@sentry/node-core/build/types/sdk/client.d.ts +1 -0
- package/node_modules/@sentry/node-core/build/types-ts3.8/light/client.d.ts +1 -0
- package/node_modules/@sentry/node-core/build/types-ts3.8/sdk/client.d.ts +1 -0
- package/node_modules/@sentry/node-core/package.json +5 -4
- package/node_modules/@sentry/opentelemetry/build/cjs/{asyncContextStrategy-BJ5buq_A.js → asyncContextStrategy-BR-l9zjD.js} +8 -6
- package/node_modules/@sentry/opentelemetry/build/cjs/index.browser.js +1 -1
- package/node_modules/@sentry/opentelemetry/build/cjs/index.js +1 -1
- package/node_modules/@sentry/opentelemetry/build/esm/{asyncContextStrategy-Bx5F5tCX.js → asyncContextStrategy-BQfM_LMv.js} +9 -7
- package/node_modules/@sentry/opentelemetry/build/esm/index.browser.js +1 -1
- package/node_modules/@sentry/opentelemetry/build/esm/index.js +2 -2
- package/node_modules/@sentry/opentelemetry/build/esm/package.json +1 -1
- package/node_modules/@sentry/opentelemetry/package.json +4 -3
- package/node_modules/@sentry/server-utils/build/cjs/tracing-channel.js +1 -0
- package/node_modules/@sentry/server-utils/build/esm/package.json +1 -1
- package/node_modules/@sentry/server-utils/build/esm/tracing-channel.js +1 -0
- package/node_modules/@sentry/server-utils/build/types/tracing-channel.d.ts +3 -1
- package/node_modules/@sentry/server-utils/build/types-ts3.8/tracing-channel.d.ts +3 -1
- package/node_modules/@sentry/server-utils/package.json +4 -3
- package/node_modules/cjs-module-lexer/README.md +8 -3
- package/node_modules/cjs-module-lexer/dist/lexer.js +1 -1
- package/node_modules/cjs-module-lexer/dist/lexer.mjs +2 -2
- package/node_modules/cjs-module-lexer/lexer.js +48 -9
- package/node_modules/cjs-module-lexer/package.json +3 -2
- package/node_modules/es-module-lexer/dist/lexer.asm.js +2 -2
- package/node_modules/es-module-lexer/dist/lexer.cjs +1 -1
- package/node_modules/es-module-lexer/dist/lexer.js +2 -2
- package/node_modules/es-module-lexer/dist/lexer.minimal.asm.js +2 -2
- package/node_modules/es-module-lexer/dist/lexer.minimal.cjs +1 -1
- package/node_modules/es-module-lexer/dist/lexer.minimal.js +2 -2
- package/node_modules/es-module-lexer/package.json +1 -1
- package/node_modules/import-in-the-middle/CHANGELOG.md +7 -0
- package/node_modules/import-in-the-middle/lib/get-esm-exports.mjs +7 -0
- package/node_modules/import-in-the-middle/package.json +1 -1
- package/package.json +2 -2
- package/packages/pm-beads/extensions/beads/runtime.ts +2 -2
- package/packages/pm-beads/package.json +1 -1
- package/packages/pm-calendar/package.json +1 -1
- package/packages/pm-command-kit/package.json +1 -1
- package/packages/pm-digital-twin/package.json +1 -1
- package/packages/pm-governance-audit/package.json +1 -1
- package/packages/pm-guide-shell/package.json +1 -1
- package/packages/pm-kanban/package.json +1 -1
- package/packages/pm-lifecycle-hooks/package.json +1 -1
- package/packages/pm-linked-test-adapters/package.json +1 -1
- package/packages/pm-search-advanced/package.json +1 -1
- package/packages/pm-templates/package.json +1 -1
- package/packages/pm-todos/package.json +1 -1
- package/packages/pm-vcs/package.json +1 -1
- package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
- package/plugins/pm-claude/package.json +1 -1
- package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
- package/plugins/pm-codex/package.json +1 -1
- package/plugins/pm-codex/plugin.json +1 -1
- package/runtime-dependencies.json +1 -1
- package/scripts/finalize-build.mjs +37 -0
- package/dist/cli-bundle/chunks/chunk-BXSXT5Z6.js +0 -2
- package/dist/cli-bundle/chunks/chunk-KNW3RSLS.js +0 -30
- package/dist/cli-bundle/chunks/chunk-MEWBSWE3.js +0 -2
- package/dist/cli-bundle/chunks/chunk-RBPOO46D.js +0 -20
- package/dist/cli-bundle/chunks/chunk-YMLF6QT7.js +0 -234
- package/dist/cli-bundle/chunks/register-operations-PDOBQZUJ.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-2CJWTLQG.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-B3YW6H2I.js +0 -26
- package/dist/cli-bundle/focused-chunks/chunk-GVGFUD52.js +0 -8
- package/dist/cli-bundle/focused-chunks/chunk-MJQ253F3.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-PBCYGO7X.js +0 -3
- package/dist/cli-bundle/focused-chunks/chunk-WOEZJUA2.js +0 -2
|
@@ -12,84 +12,84 @@ export declare const ASSURANCE_DECLARATION_KINDS: readonly ["measurement", "asse
|
|
|
12
12
|
export type AssuranceAction = (typeof ASSURANCE_ACTIONS)[number];
|
|
13
13
|
/** Transport-neutral assurance action request. */
|
|
14
14
|
export interface AssuranceActionInput {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
15
|
+
/** CRUD, evaluation, or verdict-history action. */
|
|
16
|
+
action: string;
|
|
17
|
+
/** Declaration kind for registry actions. */
|
|
18
|
+
kind?: string;
|
|
19
|
+
/** Declaration id, gate id, or verdict gate filter. */
|
|
20
|
+
id?: string;
|
|
21
|
+
/** JSON object or serialized JSON declaration for put. */
|
|
22
|
+
definition?: unknown;
|
|
23
|
+
/** Lifecycle trigger for gate evaluation. */
|
|
24
|
+
trigger?: string;
|
|
25
|
+
/** Explicit commit, tree, or snapshot identity. */
|
|
26
|
+
tree?: string;
|
|
27
|
+
/** Verdict-history gate filter when id is used by another host field. */
|
|
28
|
+
gate?: string;
|
|
29
|
+
/** Maximum newest durable verdicts returned. */
|
|
30
|
+
limit?: number | string;
|
|
31
|
+
/** Evaluate without appending an immutable verdict. */
|
|
32
|
+
dry_run?: boolean;
|
|
33
|
+
/** Retain the complete mutation receipt; assurance receipts are complete by default. */
|
|
34
|
+
fullChangedFields?: boolean;
|
|
35
|
+
/** Project declaration mutations to their stable id. */
|
|
36
|
+
idOnly?: boolean;
|
|
37
|
+
/** Explicit author override. */
|
|
38
|
+
author?: string;
|
|
39
|
+
/** Audited mutation rationale. */
|
|
40
|
+
message?: string;
|
|
41
|
+
/** Built-in preset selected for preview or application. */
|
|
42
|
+
preset?: string;
|
|
43
|
+
/** pm item that owns preset or derived assertions. */
|
|
44
|
+
owner?: string;
|
|
45
|
+
/** Explicitly accept derived proposals. */
|
|
46
|
+
apply?: boolean;
|
|
47
|
+
/** Explicit next assertion enforcement level. */
|
|
48
|
+
enforcement?: string;
|
|
49
49
|
}
|
|
50
50
|
/** Embedding-host capabilities used only while evaluating assurance actions. */
|
|
51
51
|
export interface AssuranceActionRuntimeOptions {
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
/** Workspace adapters and provider capabilities supplied by an SDK host. */
|
|
53
|
+
workspace?: Omit<CreateAssuranceWorkspaceContextOptions, "tree_id" | "trigger">;
|
|
54
54
|
}
|
|
55
55
|
/** Result union returned by transport-neutral assurance execution. */
|
|
56
56
|
export type AssuranceActionResult = AssuranceDeclaration | AssuranceMutationReceipt | AssuranceGateVerdict | AssuranceBundleMutationReceipt | AssurancePreset | DefectChangeRiskReport | DefectRecurrenceCoverageReport | {
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
57
|
+
items: AssuranceDerivedProposal[];
|
|
58
|
+
count: number;
|
|
59
|
+
applied?: AssuranceBundleMutationReceipt;
|
|
60
60
|
} | {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
61
|
+
items: Array<{
|
|
62
|
+
id: AssurancePresetId;
|
|
63
|
+
title: string;
|
|
64
|
+
description: string;
|
|
65
|
+
}>;
|
|
66
|
+
count: number;
|
|
67
|
+
row_contract: {
|
|
68
|
+
row_keys: ["items"];
|
|
69
|
+
jq_selector: ".items[]";
|
|
70
|
+
};
|
|
71
71
|
} | {
|
|
72
|
-
|
|
72
|
+
id: string;
|
|
73
73
|
} | {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
74
|
+
/** Registry declarations. */
|
|
75
|
+
items: AssuranceDeclaration[];
|
|
76
|
+
/** Number of declarations. */
|
|
77
|
+
count: number;
|
|
78
|
+
/** Stable row-selection contract. */
|
|
79
|
+
row_contract: {
|
|
80
|
+
row_keys: ["items"];
|
|
81
|
+
jq_selector: ".items[]";
|
|
82
|
+
};
|
|
83
83
|
} | {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
84
|
+
/** Durable gate verdicts. */
|
|
85
|
+
items: AssuranceGateVerdict[];
|
|
86
|
+
/** Number of verdicts. */
|
|
87
|
+
count: number;
|
|
88
|
+
/** Stable row-selection contract. */
|
|
89
|
+
row_contract: {
|
|
90
|
+
row_keys: ["items"];
|
|
91
|
+
jq_selector: ".items[]";
|
|
92
|
+
};
|
|
93
93
|
};
|
|
94
94
|
/** Execute one assurance request through the public assurance SDK primitives. */
|
|
95
95
|
export declare function runAssuranceAction(input: AssuranceActionInput, global?: Pick<GlobalOptions, "path">, runtime?: AssuranceActionRuntimeOptions): Promise<AssuranceActionResult>;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="0311387c-c7c3-598c-961c-489e8a94ad29")}catch{}})();import{createHash}from"node:crypto";import{EXIT_CODE}from"../../core/shared/constants.js";import{PmCliError}from"../../core/shared/errors.js";import{stableStringify}from"../../core/shared/serialization.js";import{ASSURANCE_GATE_TRIGGERS,evaluateAssuranceGate,getAssuranceDeclaration,listAssuranceDeclarations,listAssuranceVerdicts,putAssuranceDeclaration,recordAssuranceVerdict,removeAssuranceDeclaration}from"./assurance.js";import{ASSURANCE_PRESET_IDS,acceptAssuranceProposals,applyAssurancePreset,createAssurancePreset,deriveAssuranceProposals,promoteAssuranceAssertion}from"./assurance-presets.js";import{MAX_ASSURANCE_VERDICT_LIMIT}from"./assurance-limits.js";import{normalizeAssuranceEvaluation,normalizeAssuranceMutation}from"./assurance-mutation-error.js";import{createAssuranceWorkspaceContext}from"./assurance-runtime.js";import{resolvePmRoot}from"../runtime-primitives.js";import{parseRuntimeInteger,readRuntimeString}from"../runtime-input.js";import{analyzeDefectChangeRisk,buildDefectRecurrenceIndex,parseDefectChangeRiskRequest}from"./defect-recurrence.js";import{defectRecurrenceItemSignals}from"./defect-recurrence-signals.js";import{readDefectRecurrenceRecord}from"./defect-recurrence-graph.js";import{analyzeDefectRecurrenceCoverage,parseDefectRecurrenceCoverageRequest}from"./defect-recurrence-coverage.js";import{createUnknownSubcommandError}from"../agent/subcommand-recovery.js";let riskIndexCache;const ASSURANCE_ACTIONS=["list","show","put","remove","run","verdicts","presets","apply","derive","promote","risk","lineages"],ASSURANCE_DECLARATION_KINDS=["measurement","assertion","gate"];function parseAction(value){if(ASSURANCE_ACTIONS.includes(value))return value;throw createUnknownSubcommandError({command_path:"assurance",token:value,allowed:ASSURANCE_ACTIONS,display_name:"assurance action"})}function missingAssuranceArgument(operand,detail,example){throw new PmCliError(detail,EXIT_CODE.USAGE,{code:"missing_required_argument",required:`Provide the missing assurance operand: ${operand}.`,examples:[example],recovery:{missing:[operand]}})}function parseKind(value){if(!value)return missingAssuranceArgument("kind",`Assurance declaration kind is required. Expected: ${ASSURANCE_DECLARATION_KINDS.join(", ")}`,"pm assurance list measurement");if(ASSURANCE_DECLARATION_KINDS.includes(value))return value;throw new PmCliError(`Assurance declaration kind is required. Expected: ${ASSURANCE_DECLARATION_KINDS.join(", ")}`,EXIT_CODE.USAGE)}function parsePreset(value){if(!value)return missingAssuranceArgument("preset",`Assurance preset is required. Expected: ${ASSURANCE_PRESET_IDS.join(", ")}`,"pm assurance apply software-delivery --owner <pm-item-id>");if(ASSURANCE_PRESET_IDS.includes(value))return value;throw new PmCliError(`Assurance preset is required. Expected: ${ASSURANCE_PRESET_IDS.join(", ")}`,EXIT_CODE.USAGE)}function requireOwner(input){return input.owner?.trim()?input.owner.trim():missingAssuranceArgument("owner","assurance preset and derivation actions require --owner <pm-item-id>","pm assurance apply software-delivery --owner <pm-item-id>")}function parseDefinition(kind,value){let parsed=value;if(typeof value=="string")if(!value.trim())parsed=void 0;else try{parsed=JSON.parse(value)}catch(error){throw new PmCliError("assurance definition must be valid JSON",EXIT_CODE.USAGE,{reason:error instanceof Error?error.message:"invalid_json"})}if(typeof parsed!="object"||parsed===null||Array.isArray(parsed))throw new PmCliError("assurance put requires a JSON object definition",EXIT_CODE.USAGE);return parsed}async function readDocument(pmRoot){const[measurements,assertions,gates]=await Promise.all([listAssuranceDeclarations(pmRoot,"measurement"),listAssuranceDeclarations(pmRoot,"assertion"),listAssuranceDeclarations(pmRoot,"gate")]);return{version:1,measurements:measurements.items,assertions:assertions.items,gates:gates.items}}function projectMutationReceipt(receipt,idOnly){return idOnly===!0?{id:receipt.id}:receipt}async function authorizedDecisionIds(pmRoot,definition){const decisionId=definition.authorization_decision;if(!decisionId)return[];const context=await createAssuranceWorkspaceContext(pmRoot,{include_history:!1,resolve_tree:!1}),decision=context.items.find(item=>item.id===decisionId),terminalStatuses=new Set(context.terminal_statuses);if(!decision||decision.type.toLowerCase()!=="decision"||!terminalStatuses.has(decision.status))throw new PmCliError(`Assurance authorization ${decisionId} must name a terminal Decision item`,EXIT_CODE.USAGE);return[decision.id]}async function runVerdictsAction(input,pmRoot){const limit=parseRuntimeInteger(input.limit,"assurance verdict limit");if(limit!==void 0&&(limit<1||limit>MAX_ASSURANCE_VERDICT_LIMIT))throw new PmCliError(`assurance verdict limit must be an integer from 1 through ${MAX_ASSURANCE_VERDICT_LIMIT}`,EXIT_CODE.USAGE);const items=await listAssuranceVerdicts(pmRoot,{gate_id:input.id??input.gate,limit});return{items,count:items.length,row_contract:{row_keys:["items"],jq_selector:".items[]"}}}async function runAdoptionAction(action,input,pmRoot){if(action==="presets"){if(input.preset??input.id)return createAssurancePreset(parsePreset(input.preset??input.id),requireOwner(input));const items=ASSURANCE_PRESET_IDS.map(id=>{const preset=createAssurancePreset(id,"pm-owner");return{id,title:preset.title,description:preset.description}});return{items,count:items.length,row_contract:{row_keys:["items"],jq_selector:".items[]"}}}if(action==="apply")return normalizeAssuranceMutation(()=>applyAssurancePreset(pmRoot,parsePreset(input.preset??input.id),requireOwner(input),{author:input.author,message:input.message}));if(action==="derive"){const proposals=await deriveAssuranceProposals(await createAssuranceWorkspaceContext(pmRoot,{resolve_tree:!1,trigger:"derive"}),requireOwner(input)),applied=input.apply?await normalizeAssuranceMutation(()=>acceptAssuranceProposals(pmRoot,proposals,{author:input.author,message:input.message??"Accept observation-derived assurance proposals"})):void 0;return{items:proposals,count:proposals.length,...applied?{applied}:{}}}if(!input.id)return missingAssuranceArgument("assertion-id","assurance promote requires an assertion id","pm assurance promote <assertion-id> --enforcement warn");if(input.enforcement!=="warn"&&input.enforcement!=="block")throw new PmCliError("assurance promote requires --enforcement warn|block",EXIT_CODE.USAGE);const definition=await getAssuranceDeclaration(pmRoot,"assertion",input.id);return normalizeAssuranceMutation(()=>promoteAssuranceAssertion(pmRoot,definition,input.enforcement,{author:input.author,message:input.message}))}async function runGateAction(input,pmRoot,runtime){if(!input.id)return missingAssuranceArgument("gate-id","assurance run requires a gate id","pm assurance run <gate-id> --trigger ci --dry-run");const gateId=input.id;if(!input.trigger)throw new PmCliError("assurance run requires a trigger",EXIT_CODE.USAGE);if(!ASSURANCE_GATE_TRIGGERS.includes(input.trigger))throw new PmCliError(`Unknown assurance trigger ${input.trigger}. Expected: ${ASSURANCE_GATE_TRIGGERS.join(", ")}`,EXIT_CODE.USAGE);const trigger=input.trigger,[document,workspaceContext]=await Promise.all([readDocument(pmRoot),createAssuranceWorkspaceContext(pmRoot,{...runtime.workspace,tree_id:input.tree,trigger})]),verdict=await normalizeAssuranceEvaluation(()=>evaluateAssuranceGate(gateId,document,workspaceContext,{trigger,dry_run:input.dry_run===!0}));return verdict.dry_run||await recordAssuranceVerdict(pmRoot,verdict,{author:input.author,message:input.message}),verdict}function throwRiskUsageError(error){throw error instanceof PmCliError?error:new PmCliError(error instanceof Error?error.message:"assurance risk request is invalid",EXIT_CODE.USAGE)}function parseRecurrenceActionRequest(input){if(input.limit!==void 0)throw new PmCliError(`assurance ${input.action} does not accept --limit; set limit inside the definition`,EXIT_CODE.USAGE);let definition=input.definition;if(typeof definition=="string")try{definition=JSON.parse(definition)}catch(error){throw new PmCliError(`assurance ${input.action} definition must be valid JSON`,EXIT_CODE.USAGE,{reason:error instanceof Error?error.message:"invalid_json"})}try{return input.action==="lineages"?parseDefectRecurrenceCoverageRequest(definition):parseDefectChangeRiskRequest(definition)}catch(error){return throwRiskUsageError(error)}}function changedRiskItemIds(cached,current){const changed=new Set;for(const[itemId,itemFingerprint]of current)cached.item_fingerprints.get(itemId)!==itemFingerprint&&changed.add(itemId);for(const itemId of cached.item_fingerprints.keys())current.has(itemId)||changed.add(itemId);return changed}function buildCachedRiskIndex(pmRoot,request,items){const policySerialized=stableStringify(request.policy),cached=riskIndexCache?.pm_root===pmRoot?riskIndexCache:void 0,itemFingerprints=new Map(items.map(item=>[item.id,createHash("sha256").update(stableStringify([defectRecurrenceItemSignals(item),readDefectRecurrenceRecord(item)])).digest("hex")])),reusable=cached?.policy_serialized===policySerialized?cached:void 0,changed=reusable?changedRiskItemIds(reusable,itemFingerprints):new Set,index=buildDefectRecurrenceIndex(request.policy,reusable?items.filter(item=>changed.has(item.id)):items,reusable?{previous_index:reusable.index,changed_item_ids:[...changed]}:{});return riskIndexCache={pm_root:pmRoot,policy_serialized:policySerialized,item_fingerprints:itemFingerprints,index},index}async function runRecurrenceAction(input,pmRoot){const request=parseRecurrenceActionRequest(input),context=await createAssuranceWorkspaceContext(pmRoot,{strict_read:!0,include_history:!1,resolve_tree:!1});try{return"change"in request?analyzeDefectChangeRisk(buildCachedRiskIndex(pmRoot,request,context.items),request.change,{cursor:request.cursor,limit:request.limit}):analyzeDefectRecurrenceCoverage(request.policy,context.items,request)}catch(error){return throwRiskUsageError(error)}}async function runAssuranceAction(input,global2={},runtime={}){const action=parseAction(input.action),pmRoot=resolvePmRoot(process.cwd(),global2.path);if(action==="presets"||action==="apply"||action==="derive"||action==="promote")return runAdoptionAction(action,input,pmRoot);if(action==="verdicts")return runVerdictsAction(input,pmRoot);if(action==="run")return runGateAction(input,pmRoot,runtime);if(["risk","lineages"].includes(action))return runRecurrenceAction(input,pmRoot);const kind=parseKind(input.kind);if(action==="list")return listAssuranceDeclarations(pmRoot,kind);if(!input.id)return missingAssuranceArgument("id",`assurance ${action} requires an id`,`pm assurance ${action} ${kind} <id>`);const id=input.id;if(action==="show")return getAssuranceDeclaration(pmRoot,kind,id);if(action==="remove"){const receipt2=await normalizeAssuranceMutation(()=>removeAssuranceDeclaration(pmRoot,kind,id,{author:input.author,message:input.message}));return projectMutationReceipt(receipt2,input.idOnly)}const definition=parseDefinition(kind,input.definition);if(definition.id!==id)throw new PmCliError(`Assurance definition id ${definition.id} does not match requested id ${id}`,EXIT_CODE.USAGE);const mutationOptions={author:input.author,message:input.message,...kind==="assertion"?{authorized_decision_ids:await authorizedDecisionIds(pmRoot,definition)}:{}},receipt=await normalizeAssuranceMutation(()=>putAssuranceDeclaration(pmRoot,kind,definition,mutationOptions));return projectMutationReceipt(receipt,input.idOnly)}function runAssuranceDispatch(args,options,global2){const merged={...args,...options};return runAssuranceAction({action:readRuntimeString(merged,"subcommand")??readRuntimeString(merged,"assuranceAction")??readRuntimeString(merged,"operation")??"",kind:readRuntimeString(merged,"kind"),id:readRuntimeString(merged,"id"),definition:merged.definition,trigger:readRuntimeString(merged,"trigger"),tree:readRuntimeString(merged,"treeId")??readRuntimeString(merged,"tree"),gate:readRuntimeString(merged,"gate"),limit:parseRuntimeInteger(merged.limit,"assurance verdict limit"),dry_run:merged.dryRun===!0||merged.dry_run===!0,fullChangedFields:merged.fullChangedFields===!0,idOnly:merged.idOnly===!0,author:readRuntimeString(merged,"author"),message:readRuntimeString(merged,"message"),preset:readRuntimeString(merged,"preset"),owner:readRuntimeString(merged,"owner"),apply:merged.apply===!0,enforcement:readRuntimeString(merged,"enforcement")},global2)}export{ASSURANCE_ACTIONS,ASSURANCE_DECLARATION_KINDS,runAssuranceAction,runAssuranceDispatch};
|
|
1
|
+
(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="676125a5-e16e-5fa2-819f-f4028dc0c3c2")}catch{}})();import{createHash}from"node:crypto";import{EXIT_CODE}from"../../core/shared/constants.js";import{PmCliError}from"../../core/shared/errors.js";import{stableStringify}from"../../core/shared/serialization.js";import{ASSURANCE_GATE_TRIGGERS,evaluateAssuranceGate,getAssuranceDeclaration,listAssuranceDeclarations,listAssuranceVerdicts,putAssuranceDeclaration,recordAssuranceVerdict,removeAssuranceDeclaration}from"./assurance.js";import{ASSURANCE_PRESET_IDS,acceptAssuranceProposals,applyAssurancePreset,createAssurancePreset,deriveAssuranceProposals,promoteAssuranceAssertion}from"./assurance-presets.js";import{MAX_ASSURANCE_VERDICT_LIMIT}from"./assurance-limits.js";import{normalizeAssuranceEvaluation,normalizeAssuranceMutation}from"./assurance-mutation-error.js";import{createAssuranceWorkspaceContext}from"./assurance-runtime.js";import{resolvePmRoot}from"../runtime-primitives.js";import{parseRuntimeInteger,readRuntimeString}from"../runtime-input.js";import{analyzeDefectChangeRisk,DefectRecurrencePolicyParseError,buildDefectRecurrenceIndex,parseDefectChangeRiskRequest}from"./defect-recurrence.js";import{defectRecurrenceItemSignals}from"./defect-recurrence-signals.js";import{readDefectRecurrenceRecord}from"./defect-recurrence-graph.js";import{analyzeDefectRecurrenceCoverage,parseDefectRecurrenceCoverageRequest}from"./defect-recurrence-coverage.js";import{createUnknownSubcommandError}from"../agent/subcommand-recovery.js";let riskIndexCache;const ASSURANCE_ACTIONS=["list","show","put","remove","run","verdicts","presets","apply","derive","promote","risk","lineages"],ASSURANCE_DECLARATION_KINDS=["measurement","assertion","gate"];function parseAction(value){if(ASSURANCE_ACTIONS.includes(value))return value;throw createUnknownSubcommandError({command_path:"assurance",token:value,allowed:ASSURANCE_ACTIONS,display_name:"assurance action"})}function missingAssuranceArgument(operand,detail,example){throw new PmCliError(detail,EXIT_CODE.USAGE,{code:"missing_required_argument",required:`Provide the missing assurance operand: ${operand}.`,examples:[example],recovery:{missing:[operand]}})}function parseKind(value){if(!value)return missingAssuranceArgument("kind",`Assurance declaration kind is required. Expected: ${ASSURANCE_DECLARATION_KINDS.join(", ")}`,"pm assurance list measurement");if(ASSURANCE_DECLARATION_KINDS.includes(value))return value;throw new PmCliError(`Assurance declaration kind is required. Expected: ${ASSURANCE_DECLARATION_KINDS.join(", ")}`,EXIT_CODE.USAGE)}function parsePreset(value){if(!value)return missingAssuranceArgument("preset",`Assurance preset is required. Expected: ${ASSURANCE_PRESET_IDS.join(", ")}`,"pm assurance apply software-delivery --owner <pm-item-id>");if(ASSURANCE_PRESET_IDS.includes(value))return value;throw new PmCliError(`Assurance preset is required. Expected: ${ASSURANCE_PRESET_IDS.join(", ")}`,EXIT_CODE.USAGE)}function requireOwner(input){return input.owner?.trim()?input.owner.trim():missingAssuranceArgument("owner","assurance preset and derivation actions require --owner <pm-item-id>","pm assurance apply software-delivery --owner <pm-item-id>")}function parseDefinition(kind,value){let parsed=value;if(typeof value=="string")if(!value.trim())parsed=void 0;else try{parsed=JSON.parse(value)}catch(error){throw new PmCliError("assurance definition must be valid JSON",EXIT_CODE.USAGE,{reason:error instanceof Error?error.message:"invalid_json"})}if(typeof parsed!="object"||parsed===null||Array.isArray(parsed))throw new PmCliError("assurance put requires a JSON object definition",EXIT_CODE.USAGE);return parsed}async function readDocument(pmRoot){const[measurements,assertions,gates]=await Promise.all([listAssuranceDeclarations(pmRoot,"measurement"),listAssuranceDeclarations(pmRoot,"assertion"),listAssuranceDeclarations(pmRoot,"gate")]);return{version:1,measurements:measurements.items,assertions:assertions.items,gates:gates.items}}function projectMutationReceipt(receipt,idOnly){return idOnly===!0?{id:receipt.id}:receipt}async function authorizedDecisionIds(pmRoot,definition){const decisionId=definition.authorization_decision;if(!decisionId)return[];const context=await createAssuranceWorkspaceContext(pmRoot,{include_history:!1,resolve_tree:!1}),decision=context.items.find(item=>item.id===decisionId),terminalStatuses=new Set(context.terminal_statuses);if(!decision||decision.type.toLowerCase()!=="decision"||!terminalStatuses.has(decision.status))throw new PmCliError(`Assurance authorization ${decisionId} must name a terminal Decision item`,EXIT_CODE.USAGE);return[decision.id]}async function runVerdictsAction(input,pmRoot){const limit=parseRuntimeInteger(input.limit,"assurance verdict limit");if(limit!==void 0&&(limit<1||limit>MAX_ASSURANCE_VERDICT_LIMIT))throw new PmCliError(`assurance verdict limit must be an integer from 1 through ${MAX_ASSURANCE_VERDICT_LIMIT}`,EXIT_CODE.USAGE);const items=await listAssuranceVerdicts(pmRoot,{gate_id:input.id??input.gate,limit});return{items,count:items.length,row_contract:{row_keys:["items"],jq_selector:".items[]"}}}async function runAdoptionAction(action,input,pmRoot){if(action==="presets"){if(input.preset??input.id)return createAssurancePreset(parsePreset(input.preset??input.id),requireOwner(input));const items=ASSURANCE_PRESET_IDS.map(id=>{const preset=createAssurancePreset(id,"pm-owner");return{id,title:preset.title,description:preset.description}});return{items,count:items.length,row_contract:{row_keys:["items"],jq_selector:".items[]"}}}if(action==="apply")return normalizeAssuranceMutation(()=>applyAssurancePreset(pmRoot,parsePreset(input.preset??input.id),requireOwner(input),{author:input.author,message:input.message}));if(action==="derive"){const proposals=await deriveAssuranceProposals(await createAssuranceWorkspaceContext(pmRoot,{resolve_tree:!1,trigger:"derive"}),requireOwner(input)),applied=input.apply?await normalizeAssuranceMutation(()=>acceptAssuranceProposals(pmRoot,proposals,{author:input.author,message:input.message??"Accept observation-derived assurance proposals"})):void 0;return{items:proposals,count:proposals.length,...applied?{applied}:{}}}if(!input.id)return missingAssuranceArgument("assertion-id","assurance promote requires an assertion id","pm assurance promote <assertion-id> --enforcement warn");if(input.enforcement!=="warn"&&input.enforcement!=="block")throw new PmCliError("assurance promote requires --enforcement warn|block",EXIT_CODE.USAGE);const definition=await getAssuranceDeclaration(pmRoot,"assertion",input.id);return normalizeAssuranceMutation(()=>promoteAssuranceAssertion(pmRoot,definition,input.enforcement,{author:input.author,message:input.message}))}async function runGateAction(input,pmRoot,runtime){if(!input.id)return missingAssuranceArgument("gate-id","assurance run requires a gate id","pm assurance run <gate-id> --trigger ci --dry-run");const gateId=input.id;if(!input.trigger)throw new PmCliError("assurance run requires a trigger",EXIT_CODE.USAGE);if(!ASSURANCE_GATE_TRIGGERS.includes(input.trigger))throw new PmCliError(`Unknown assurance trigger ${input.trigger}. Expected: ${ASSURANCE_GATE_TRIGGERS.join(", ")}`,EXIT_CODE.USAGE);const trigger=input.trigger,[document,workspaceContext]=await Promise.all([readDocument(pmRoot),createAssuranceWorkspaceContext(pmRoot,{...runtime.workspace,tree_id:input.tree,trigger})]),verdict=await normalizeAssuranceEvaluation(()=>evaluateAssuranceGate(gateId,document,workspaceContext,{trigger,dry_run:input.dry_run===!0}));return verdict.dry_run||await recordAssuranceVerdict(pmRoot,verdict,{author:input.author,message:input.message}),verdict}function throwRiskUsageError(error){throw error instanceof PmCliError?error:new PmCliError(error instanceof Error?error.message:"assurance risk request is invalid",EXIT_CODE.USAGE)}function parseRecurrenceActionRequest(input){if(input.limit!==void 0)throw new PmCliError(`assurance ${input.action} does not accept --limit; set limit inside the definition`,EXIT_CODE.USAGE);let definition=input.definition;if(typeof definition=="string")try{definition=JSON.parse(definition)}catch(error){throw new PmCliError(`assurance ${input.action} definition must be valid JSON`,EXIT_CODE.USAGE,{reason:error instanceof Error?error.message:"invalid_json"})}try{return input.action==="lineages"?parseDefectRecurrenceCoverageRequest(definition):parseDefectChangeRiskRequest(definition)}catch(error){if(input.action==="risk"&&error instanceof DefectRecurrencePolicyParseError)throw new PmCliError(error.message,EXIT_CODE.USAGE,{required:"Supply definition.policy with the project's declared recurrence policy and definition.change with the proposed change; no policy is inferred.",recovery:{suggested_retry:`pm assurance ${input.action} --help`,suggested_retry_args:["assurance",input.action,"--help"]}});return throwRiskUsageError(error)}}function changedRiskItemIds(cached,current){const changed=new Set;for(const[itemId,itemFingerprint]of current)cached.item_fingerprints.get(itemId)!==itemFingerprint&&changed.add(itemId);for(const itemId of cached.item_fingerprints.keys())current.has(itemId)||changed.add(itemId);return changed}function buildCachedRiskIndex(pmRoot,request,items){const policySerialized=stableStringify(request.policy),cached=riskIndexCache?.pm_root===pmRoot?riskIndexCache:void 0,itemFingerprints=new Map(items.map(item=>[item.id,createHash("sha256").update(stableStringify([defectRecurrenceItemSignals(item),readDefectRecurrenceRecord(item)])).digest("hex")])),reusable=cached?.policy_serialized===policySerialized?cached:void 0,changed=reusable?changedRiskItemIds(reusable,itemFingerprints):new Set,index=buildDefectRecurrenceIndex(request.policy,reusable?items.filter(item=>changed.has(item.id)):items,reusable?{previous_index:reusable.index,changed_item_ids:[...changed]}:{});return riskIndexCache={pm_root:pmRoot,policy_serialized:policySerialized,item_fingerprints:itemFingerprints,index},index}async function runRecurrenceAction(input,pmRoot){const request=parseRecurrenceActionRequest(input),context=await createAssuranceWorkspaceContext(pmRoot,{strict_read:!0,include_history:!1,resolve_tree:!1});try{return"change"in request?analyzeDefectChangeRisk(buildCachedRiskIndex(pmRoot,request,context.items),request.change,{cursor:request.cursor,limit:request.limit}):analyzeDefectRecurrenceCoverage(request.policy,context.items,request)}catch(error){return throwRiskUsageError(error)}}async function runAssuranceAction(input,global2={},runtime={}){const action=parseAction(input.action),pmRoot=resolvePmRoot(process.cwd(),global2.path);if(action==="presets"||action==="apply"||action==="derive"||action==="promote")return runAdoptionAction(action,input,pmRoot);if(action==="verdicts")return runVerdictsAction(input,pmRoot);if(action==="run")return runGateAction(input,pmRoot,runtime);if(["risk","lineages"].includes(action))return runRecurrenceAction(input,pmRoot);const kind=parseKind(input.kind);if(action==="list")return listAssuranceDeclarations(pmRoot,kind);if(!input.id)return missingAssuranceArgument("id",`assurance ${action} requires an id`,`pm assurance ${action} ${kind} <id>`);const id=input.id;if(action==="show")return getAssuranceDeclaration(pmRoot,kind,id);if(action==="remove"){const receipt2=await normalizeAssuranceMutation(()=>removeAssuranceDeclaration(pmRoot,kind,id,{author:input.author,message:input.message}));return projectMutationReceipt(receipt2,input.idOnly)}const definition=parseDefinition(kind,input.definition);if(definition.id!==id)throw new PmCliError(`Assurance definition id ${definition.id} does not match requested id ${id}`,EXIT_CODE.USAGE);const mutationOptions={author:input.author,message:input.message,...kind==="assertion"?{authorized_decision_ids:await authorizedDecisionIds(pmRoot,definition)}:{}},receipt=await normalizeAssuranceMutation(()=>putAssuranceDeclaration(pmRoot,kind,definition,mutationOptions));return projectMutationReceipt(receipt,input.idOnly)}function runAssuranceDispatch(args,options,global2){const merged={...args,...options};return runAssuranceAction({action:readRuntimeString(merged,"subcommand")??readRuntimeString(merged,"assuranceAction")??readRuntimeString(merged,"operation")??"",kind:readRuntimeString(merged,"kind"),id:readRuntimeString(merged,"id"),definition:merged.definition,trigger:readRuntimeString(merged,"trigger"),tree:readRuntimeString(merged,"treeId")??readRuntimeString(merged,"tree"),gate:readRuntimeString(merged,"gate"),limit:parseRuntimeInteger(merged.limit,"assurance verdict limit"),dry_run:merged.dryRun===!0||merged.dry_run===!0,fullChangedFields:merged.fullChangedFields===!0,idOnly:merged.idOnly===!0,author:readRuntimeString(merged,"author"),message:readRuntimeString(merged,"message"),preset:readRuntimeString(merged,"preset"),owner:readRuntimeString(merged,"owner"),apply:merged.apply===!0,enforcement:readRuntimeString(merged,"enforcement")},global2)}export{ASSURANCE_ACTIONS,ASSURANCE_DECLARATION_KINDS,runAssuranceAction,runAssuranceDispatch};
|
|
2
2
|
//# sourceMappingURL=assurance-action.js.map
|
|
@@ -1,53 +1,53 @@
|
|
|
1
1
|
/** Machine-readable location of a refused assurance evaluation. */
|
|
2
2
|
export interface AssuranceEvaluationRefusalContext {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
3
|
+
/** Gate being evaluated. */
|
|
4
|
+
gate_id?: string;
|
|
5
|
+
/** Assertion whose measurement failed. */
|
|
6
|
+
assertion_id?: string;
|
|
7
|
+
/** Measurement whose source failed. */
|
|
8
|
+
measurement_id?: string;
|
|
9
|
+
/** Measurement source discriminant. */
|
|
10
|
+
source_kind?: string;
|
|
11
|
+
/** Field selected from a graph, validate, or health result. */
|
|
12
|
+
field?: string;
|
|
13
|
+
/** Validate or health check selected by the source. */
|
|
14
|
+
check?: string;
|
|
15
15
|
}
|
|
16
16
|
/** Machine-readable location of a failed measurement source resolution. */
|
|
17
17
|
export interface AssuranceSourceResolutionContext {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
18
|
+
/** Measurement that owns the failed source, once evaluation identifies it. */
|
|
19
|
+
measurement_id?: string;
|
|
20
|
+
/** Measurement source discriminant. */
|
|
21
|
+
source_kind: string;
|
|
22
|
+
/** Field selected from the source result. */
|
|
23
|
+
field: string;
|
|
24
|
+
/** Optional validate or health check selector. */
|
|
25
|
+
check?: string;
|
|
26
26
|
}
|
|
27
27
|
/** Expected declaration-validation or mutation-policy refusal. */
|
|
28
28
|
export declare class AssuranceMutationRefusalError extends TypeError {
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
/** Create one typed refusal while retaining TypeError compatibility for SDK callers. */
|
|
30
|
+
constructor(message: string);
|
|
31
31
|
}
|
|
32
32
|
/** Expected gate-policy refusal caused by an incomplete or disallowed provider contract. */
|
|
33
33
|
export declare class AssuranceEvaluationRefusalError extends TypeError {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
34
|
+
/** Structured evaluation location retained across CLI, SDK, and MCP. */
|
|
35
|
+
readonly context: AssuranceEvaluationRefusalContext;
|
|
36
|
+
/** Create one typed refusal while retaining TypeError compatibility for SDK callers. */
|
|
37
|
+
constructor(message: string, context?: AssuranceEvaluationRefusalContext);
|
|
38
38
|
}
|
|
39
39
|
/** Expected failure to resolve one declared external measurement source. */
|
|
40
40
|
export declare class AssuranceSourceResolutionError extends TypeError {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
41
|
+
/** Measurement that owns the failed source, once evaluation identifies it. */
|
|
42
|
+
readonly measurement_id?: string;
|
|
43
|
+
/** Measurement source discriminant. */
|
|
44
|
+
readonly source_kind: string;
|
|
45
|
+
/** Field selected from the source result. */
|
|
46
|
+
readonly field: string;
|
|
47
|
+
/** Optional validate or health check selector. */
|
|
48
|
+
readonly check?: string;
|
|
49
|
+
/** Create one source-local refusal before gate context is attached. */
|
|
50
|
+
constructor(message: string, context: AssuranceSourceResolutionContext);
|
|
51
51
|
}
|
|
52
52
|
/** Normalize only expected assurance mutation refusals for CLI and MCP hosts. */
|
|
53
53
|
export declare function normalizeAssuranceMutation<T>(operation: () => Promise<T>): Promise<T>;
|
|
@@ -11,44 +11,44 @@ export declare const ASSURANCE_PRESET_IDS: readonly ["software-delivery", "resea
|
|
|
11
11
|
export type AssurancePresetId = (typeof ASSURANCE_PRESET_IDS)[number];
|
|
12
12
|
/** Readable preset bundle before or after application. */
|
|
13
13
|
export interface AssurancePreset {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
/** Stable preset id. */
|
|
15
|
+
id: AssurancePresetId;
|
|
16
|
+
/** Human-readable project shape. */
|
|
17
|
+
title: string;
|
|
18
|
+
/** Why the initial contract is useful. */
|
|
19
|
+
description: string;
|
|
20
|
+
/** Ordinary declarations that become editable workspace data. */
|
|
21
|
+
declarations: AssuranceDeclarationBundle;
|
|
22
22
|
}
|
|
23
23
|
/** One observe-level candidate produced from authoritative workspace state. */
|
|
24
24
|
export interface AssuranceDerivedProposal {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
25
|
+
/** Stable proposal id. */
|
|
26
|
+
id: string;
|
|
27
|
+
/** Population used to calculate the proposed threshold. */
|
|
28
|
+
population_size: number;
|
|
29
|
+
/** Scope applied while measuring. */
|
|
30
|
+
scope: AssuranceScope;
|
|
31
|
+
/** Observed value proposed as the initial ceiling. */
|
|
32
|
+
observed: number;
|
|
33
|
+
/** Ordinary declarations created only after explicit acceptance. */
|
|
34
|
+
declarations: AssuranceDeclarationBundle;
|
|
35
35
|
}
|
|
36
36
|
/** Materialize one built-in preset as ordinary declarations owned by a pm item. */
|
|
37
37
|
export declare function createAssurancePreset(id: AssurancePresetId, ownerItemId: string): AssurancePreset;
|
|
38
38
|
/** Apply one preset atomically; a second identical application is idempotent. */
|
|
39
39
|
export declare function applyAssurancePreset(pmRoot: string, id: AssurancePresetId, ownerItemId: string, options?: {
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
author?: string;
|
|
41
|
+
message?: string;
|
|
42
42
|
}): Promise<AssuranceBundleMutationReceipt>;
|
|
43
43
|
/** Propose active-scope evidence ceilings from the record without persisting them. */
|
|
44
44
|
export declare function deriveAssuranceProposals(context: AssuranceEvaluationContext, ownerItemId: string): Promise<AssuranceDerivedProposal[]>;
|
|
45
45
|
/** Accept all derived proposals in one audited registry transaction. */
|
|
46
46
|
export declare function acceptAssuranceProposals(pmRoot: string, proposals: readonly AssuranceDerivedProposal[], options?: {
|
|
47
|
-
|
|
48
|
-
|
|
47
|
+
author?: string;
|
|
48
|
+
message?: string;
|
|
49
49
|
}): Promise<AssuranceBundleMutationReceipt>;
|
|
50
50
|
/** Promote one assertion by exactly one enforcement level and audit the transition. */
|
|
51
51
|
export declare function promoteAssuranceAssertion(pmRoot: string, definition: AssuranceAssertionDefinition, enforcement: Exclude<AssuranceEnforcement, "observe">, options?: {
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
author?: string;
|
|
53
|
+
message?: string;
|
|
54
54
|
}): Promise<Awaited<ReturnType<typeof putAssuranceDeclaration>>>;
|
|
@@ -3,20 +3,20 @@ import type { AssuranceEvaluationContext, AssuranceExternalMeasurementResult, As
|
|
|
3
3
|
export type AssuranceProviderResolver = (source: AssuranceProviderSource) => Promise<AssuranceExternalMeasurementResult>;
|
|
4
4
|
/** Workspace binding options. */
|
|
5
5
|
export interface CreateAssuranceWorkspaceContextOptions {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
6
|
+
/** Refuse incomplete item or directory reads through the public strict-list contract. */
|
|
7
|
+
strict_read?: boolean;
|
|
8
|
+
/** Explicit tree identity; otherwise the current Git commit is used. */
|
|
9
|
+
tree_id?: string;
|
|
10
|
+
/** Load immutable item history for history-backed measurements. */
|
|
11
|
+
include_history?: boolean;
|
|
12
|
+
/** Resolve a Git identity; item-only callers can skip this subprocess. */
|
|
13
|
+
resolve_tree?: boolean;
|
|
14
|
+
/** Provider resolvers keyed by stable provider id. */
|
|
15
|
+
providers?: Readonly<Record<string, AssuranceProviderResolver>>;
|
|
16
|
+
/** Capabilities for host-provided resolvers that are not extension registrations. */
|
|
17
|
+
provider_capabilities?: AssuranceEvaluationContext["provider_capabilities"];
|
|
18
|
+
/** Gate trigger supplied to extension provider resolvers. */
|
|
19
|
+
trigger?: string;
|
|
20
20
|
}
|
|
21
21
|
/**
|
|
22
22
|
* Build an assurance context from authoritative workspace data and public SDK
|