@unbrained/pm-cli 2026.9.7 → 2026.9.9
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/.agents/skills/pm-developer/SKILL.md +12 -4
- package/.agents/skills/pm-developer/references/MULTI_AGENT_MERGE.md +19 -10
- package/.agents/skills/pm-extensions/SKILL.md +6 -0
- package/.agents/skills/pm-sdk/SKILL.md +11 -2
- package/.agents/skills/pm-user/SKILL.md +7 -2
- package/.agents/skills/pm-user/references/ECOSYSTEM_PLANNING.md +95 -0
- package/.claude-plugin/marketplace.json +2 -2
- package/CHANGELOG.md +231 -182
- package/dist/cli/after-command-context-usage.js +1 -48
- package/dist/cli/argv-utils.js +1 -40
- package/dist/cli/bootstrap-args.js +1 -9
- package/dist/cli/bundle-integrity.js +2 -110
- package/dist/cli/commander-usage.js +11 -771
- package/dist/cli/commands/activity.js +1 -9
- package/dist/cli/commands/aggregate.js +1 -5
- package/dist/cli/commands/append.js +1 -5
- package/dist/cli/commands/claim.js +1 -5
- package/dist/cli/commands/close-many.js +1 -5
- package/dist/cli/commands/close.js +1 -9
- package/dist/cli/commands/comments.js +1 -5
- package/dist/cli/commands/config.js +1 -9
- package/dist/cli/commands/context.js +1 -9
- package/dist/cli/commands/contracts.js +1 -5
- package/dist/cli/commands/copy.js +1 -9
- package/dist/cli/commands/create.js +1 -9
- package/dist/cli/commands/delete.js +1 -9
- package/dist/cli/commands/deps.js +1 -9
- package/dist/cli/commands/docs.js +1 -9
- package/dist/cli/commands/duplicates.js +1 -9
- package/dist/cli/commands/eval.js +1 -9
- package/dist/cli/commands/extension/describe.js +1 -5
- package/dist/cli/commands/extension/scaffold.js +1 -5
- package/dist/cli/commands/extension/shared.js +1 -5
- package/dist/cli/commands/extension.js +1 -9
- package/dist/cli/commands/files.js +1 -9
- package/dist/cli/commands/focus.js +1 -9
- package/dist/cli/commands/gc.js +1 -9
- package/dist/cli/commands/get.js +1 -9
- package/dist/cli/commands/graph.js +1 -10
- package/dist/cli/commands/health.js +1 -9
- package/dist/cli/commands/history-compact.js +1 -10
- package/dist/cli/commands/history-redact.js +1 -11
- package/dist/cli/commands/history-repair.js +1 -10
- package/dist/cli/commands/history.js +1 -5
- package/dist/cli/commands/index.js +1 -58
- package/dist/cli/commands/init-agent-guidance.js +1 -9
- package/dist/cli/commands/init.js +1 -9
- package/dist/cli/commands/learnings.js +1 -5
- package/dist/cli/commands/lifecycle-transitions.js +1 -5
- package/dist/cli/commands/list.js +1 -9
- package/dist/cli/commands/merge.js +1 -11
- package/dist/cli/commands/next.js +1 -9
- package/dist/cli/commands/notes.js +1 -5
- package/dist/cli/commands/plan.js +1 -9
- package/dist/cli/commands/profile.js +1 -9
- package/dist/cli/commands/restore.js +1 -9
- package/dist/cli/commands/scheduling-shortcuts.js +1 -9
- package/dist/cli/commands/schema.js +1 -10
- package/dist/cli/commands/search.js +1 -9
- package/dist/cli/commands/stats.js +1 -9
- package/dist/cli/commands/telemetry.js +1 -9
- package/dist/cli/commands/test-all.js +1 -9
- package/dist/cli/commands/test-runs.js +1 -9
- package/dist/cli/commands/test.js +1 -9
- package/dist/cli/commands/update-many.js +1 -5
- package/dist/cli/commands/update.js +1 -9
- package/dist/cli/commands/upgrade.js +1 -5
- package/dist/cli/commands/validate.js +1 -15
- package/dist/cli/context-intent-invocation.js +1 -20
- package/dist/cli/description-stdin.js +1 -17
- package/dist/cli/error-guidance.js +1 -1353
- package/dist/cli/extension-command-help.js +5 -636
- package/dist/cli/extension-command-options.js +1 -427
- package/dist/cli/extension-recovery.js +1 -126
- package/dist/cli/help-content.js +2 -1001
- package/dist/cli/help-json-payload.js +4 -570
- package/dist/cli/main.d.ts +4 -0
- package/dist/cli/main.js +5 -2573
- package/dist/cli/migration-gates.js +1 -289
- package/dist/cli/public.js +1 -20
- package/dist/cli/register-annotations.js +1 -270
- package/dist/cli/register-assurance.js +1 -62
- package/dist/cli/register-files-lookup.js +1 -56
- package/dist/cli/register-history-activity.d.ts +8 -0
- package/dist/cli/register-history-activity.js +2 -0
- package/dist/cli/register-history-author.js +1 -38
- package/dist/cli/register-history-maintenance.d.ts +9 -0
- package/dist/cli/register-history-maintenance.js +2 -0
- package/dist/cli/register-list-query.js +10 -943
- package/dist/cli/register-mutation-options.js +1 -9
- package/dist/cli/register-mutation.d.ts +0 -5
- package/dist/cli/register-mutation.js +19 -1893
- package/dist/cli/register-operations.js +1 -920
- package/dist/cli/register-setup.js +1 -716
- package/dist/cli/register-structured-mutation.js +1 -196
- package/dist/cli/registration-helpers.js +1 -5
- package/dist/cli/runtime-compatibility-boundary.js +4 -42
- package/dist/cli/schema-registration-helpers.js +1 -73
- package/dist/cli/search-refresh.js +1 -13
- package/dist/cli/stats-analytics-json.js +1 -68
- package/dist/cli/telemetry-flush.js +1 -10
- package/dist/cli-bundle/bundle-manifest.json +164 -156
- package/dist/cli-bundle/chunks/{chunk-NPN5I67J.js → chunk-3IPRM75M.js} +3 -3
- package/dist/cli-bundle/chunks/chunk-4VL5P22L.js +2 -0
- package/dist/cli-bundle/chunks/chunk-AAFBV3U3.js +29 -0
- package/dist/cli-bundle/chunks/chunk-D3YVILJJ.js +20 -0
- package/dist/cli-bundle/chunks/{chunk-WYRZZ5ZE.js → chunk-DEZPZOQ7.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-ECBLPN7B.js +3 -0
- package/dist/cli-bundle/chunks/chunk-J6ERHBV2.js +235 -0
- package/dist/cli-bundle/chunks/chunk-JUNJ5EKI.js +2 -0
- package/dist/cli-bundle/chunks/chunk-L5RCDKQ2.js +2 -0
- package/dist/cli-bundle/chunks/chunk-NSAPNEYH.js +2 -0
- package/dist/cli-bundle/chunks/chunk-OHNLSGGV.js +79 -0
- package/dist/cli-bundle/chunks/chunk-WQKMSFBV.js +5 -0
- package/dist/cli-bundle/chunks/{chunk-BAX2BYUW.js → chunk-XZ6T7YPP.js} +256 -150
- package/dist/cli-bundle/chunks/{chunk-JT6XF6GE.js → chunk-Z3XVXUVF.js} +4 -4
- package/dist/cli-bundle/chunks/register-list-query-UIHRCS6D.js +11 -0
- package/dist/cli-bundle/chunks/register-mutation-WHWMGRVX.js +20 -0
- package/dist/cli-bundle/chunks/register-operations-64YZYTC5.js +2 -0
- package/dist/cli-bundle/chunks/register-setup-PERI45EM.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-2W4XIYOB.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-2WSBXIGF.js +12 -0
- package/dist/cli-bundle/focused-chunks/chunk-5FHTCOHS.js +3 -0
- package/dist/cli-bundle/focused-chunks/chunk-7N6DOREF.js +26 -0
- package/dist/cli-bundle/focused-chunks/{chunk-3BZEOXLT.js → chunk-7PC4R5QB.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-BUCJUZVG.js +6 -0
- package/dist/cli-bundle/focused-chunks/chunk-FE3BABLJ.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-IWITF53W.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-OQUGRHKV.js +10 -0
- package/dist/cli-bundle/focused-chunks/{chunk-M6PBRFSH.js → chunk-PNKIANFZ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-LIJIA4TY.js → chunk-QQQ4SAUO.js} +3 -3
- package/dist/cli-bundle/focused-chunks/chunk-TTYXF5YD.js +177 -0
- package/dist/cli-bundle/focused-chunks/chunk-XNR3DM6J.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-XSS3APUF.js +9 -0
- package/dist/cli-bundle/focused-chunks/chunk-YCDQ2N23.js +8 -0
- package/dist/cli-bundle/focused-chunks/chunk-YJUXGS57.js +20 -0
- package/dist/cli-bundle/focused-chunks/chunk-ZTCE4UO6.js +58 -0
- package/dist/cli-bundle/main.js +20 -20
- 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 +37 -37
- 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 +42 -42
- 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 +11 -11
- package/dist/cli.js +1 -104
- package/dist/core/checkpoint/checkpoint-gc.js +1 -169
- package/dist/core/checkpoint/mutation-checkpoint.js +2 -133
- package/dist/core/config/nested-settings.js +1 -534
- package/dist/core/config/positional-value.js +1 -109
- package/dist/core/diagnostics/remediation.js +1 -506
- package/dist/core/extensions/activation-summary-markdown.js +2 -145
- package/dist/core/extensions/activation-summary.js +1 -92
- package/dist/core/extensions/activation-transaction.js +1 -46
- package/dist/core/extensions/capability-usage.js +1 -173
- package/dist/core/extensions/command-hook-context.js +1 -13
- package/dist/core/extensions/command-metadata-contract.js +1 -22
- package/dist/core/extensions/command-visibility-tier.js +1 -29
- package/dist/core/extensions/contribution-inventory.js +1 -173
- package/dist/core/extensions/exporter-output-contract.js +1 -66
- package/dist/core/extensions/extension-candidate.js +1 -18
- package/dist/core/extensions/extension-capability-aliases.js +1 -158
- package/dist/core/extensions/extension-hook-runtime.js +1 -699
- package/dist/core/extensions/extension-policy.js +1 -599
- package/dist/core/extensions/extension-registries.js +1 -62
- package/dist/core/extensions/extension-runtime-helpers.js +1 -33
- package/dist/core/extensions/extension-types.js +1 -102
- package/dist/core/extensions/flag-definition-validation.js +1 -52
- package/dist/core/extensions/flag-value-types.js +1 -64
- package/dist/core/extensions/index.js +1 -526
- package/dist/core/extensions/item-field-types.js +1 -39
- package/dist/core/extensions/item-fields.js +1 -261
- package/dist/core/extensions/loader.js +1 -2223
- package/dist/core/extensions/manifest-schema.js +1 -69
- package/dist/core/extensions/module-graph-snapshot.js +1 -33
- package/dist/core/extensions/preflight-ownership.js +1 -41
- package/dist/core/extensions/registration-validation.js +1 -82
- package/dist/core/extensions/registration-values.js +1 -209
- package/dist/core/extensions/reserved-host-flags.js +1 -36
- package/dist/core/extensions/runtime-registrations.js +1 -67
- package/dist/core/extensions/service-ownership.js +1 -19
- package/dist/core/extensions/version-compat.js +1 -216
- package/dist/core/fs/fs-utils.js +2 -158
- package/dist/core/fs/host-environment-errors.js +1 -141
- package/dist/core/fs/index.js +1 -9
- package/dist/core/fs/path-utils.js +1 -17
- package/dist/core/governance/content-fields.js +1 -160
- package/dist/core/governance/issue-codes.js +1 -151
- package/dist/core/governance/metadata-coverage.js +1 -358
- package/dist/core/history/drift-cache.js +3 -72
- package/dist/core/history/drift-scan.js +1 -342
- package/dist/core/history/event-classification.js +1 -109
- package/dist/core/history/event-index.js +8 -784
- package/dist/core/history/history-compact-bulk.js +1 -104
- package/dist/core/history/history-diff.js +1 -158
- package/dist/core/history/history-rewrite.d.ts +6 -1
- package/dist/core/history/history-rewrite.js +1 -107
- package/dist/core/history/history-storage-stats.js +1 -102
- package/dist/core/history/history-stream-policy.js +1 -62
- package/dist/core/history/history.js +2 -617
- package/dist/core/history/identity.js +1 -30
- package/dist/core/history/index.js +1 -9
- package/dist/core/history/projection.js +1 -196
- package/dist/core/history/read.d.ts +9 -0
- package/dist/core/history/read.js +1 -57
- package/dist/core/history/replay.js +2 -439
- package/dist/core/history/version-address.js +1 -32
- package/dist/core/history/workspace-history.js +2 -433
- package/dist/core/io/body-file.js +1 -62
- package/dist/core/io/bulk-ids-input.js +1 -112
- package/dist/core/item/actionability.js +1 -327
- package/dist/core/item/dependency-reference.js +1 -20
- package/dist/core/item/id.js +1 -112
- package/dist/core/item/index.js +1 -12
- package/dist/core/item/item-format-version.js +1 -78
- package/dist/core/item/item-format.js +5 -1473
- package/dist/core/item/item-record.js +1 -23
- package/dist/core/item/item-type-definition.js +1 -133
- package/dist/core/item/parent-reference-policy.js +1 -57
- package/dist/core/item/parse.js +2 -603
- package/dist/core/item/plan-lifecycle.js +1 -19
- package/dist/core/item/priority.js +1 -61
- package/dist/core/item/sprint-release-format.js +1 -38
- package/dist/core/item/status-filter.js +1 -115
- package/dist/core/item/status.js +1 -43
- package/dist/core/item/toon-decode.js +1 -29
- package/dist/core/item/type-registry.js +1 -715
- package/dist/core/item/type-synonyms.js +1 -38
- package/dist/core/lock/index.js +1 -9
- package/dist/core/lock/lock-gc.js +1 -240
- package/dist/core/lock/lock.js +3 -590
- package/dist/core/output/mutation-projection.js +1 -217
- package/dist/core/output/output-control.js +1 -25
- package/dist/core/output/output.js +11 -494
- package/dist/core/output/query-summary.js +1 -58
- package/dist/core/output/tabular.js +1 -77
- package/dist/core/packages/manifest.js +1 -244
- package/dist/core/packages/root.js +1 -84
- package/dist/core/policy/workflow-policy-schema.d.ts +312 -0
- package/dist/core/policy/workflow-policy-schema.js +2 -0
- package/dist/core/policy/workflow-policy-store.d.ts +24 -0
- package/dist/core/policy/workflow-policy-store.js +2 -0
- package/dist/core/policy/workflow-policy.d.ts +139 -0
- package/dist/core/policy/workflow-policy.js +2 -0
- package/dist/core/profile/profile-describe.js +1 -83
- package/dist/core/profile/profile-lint.js +1 -415
- package/dist/core/profile/profile-plan.js +0 -0
- package/dist/core/profile/profile-presets.js +1 -370
- package/dist/core/reproducibility/context.js +1 -82
- package/dist/core/schema/fields-file.js +2 -288
- package/dist/core/schema/item-types-file.js +2 -296
- package/dist/core/schema/runtime-field-filters.js +1 -49
- package/dist/core/schema/runtime-field-values.js +1 -313
- package/dist/core/schema/runtime-schema.js +2 -826
- package/dist/core/schema/status-defs-file.js +2 -227
- package/dist/core/schema/status-token.js +1 -31
- package/dist/core/schema/type-inference.js +1 -95
- package/dist/core/schema/type-presets.js +1 -87
- package/dist/core/schema/type-workflows.js +1 -104
- package/dist/core/search/background-refresh.js +2 -286
- package/dist/core/search/bm25.js +1 -146
- package/dist/core/search/cache.js +2 -534
- package/dist/core/search/corpus.js +1 -311
- package/dist/core/search/embedding-batches.js +1 -163
- package/dist/core/search/eval.js +1 -225
- package/dist/core/search/http-client.js +1 -75
- package/dist/core/search/providers.js +1 -242
- package/dist/core/search/relevance.js +1 -244
- package/dist/core/search/semantic-defaults.js +1 -199
- package/dist/core/search/staleness.js +1 -30
- package/dist/core/search/vector-stores.js +2 -664
- package/dist/core/search/vectorization-metadata.js +1 -81
- package/dist/core/sentry/helpers.js +1 -272
- package/dist/core/sentry/instrument.js +1 -387
- package/dist/core/session/session-state.js +1 -260
- package/dist/core/shared/agent-session-context.js +1 -133
- package/dist/core/shared/author.js +1 -1172
- package/dist/core/shared/command-types.js +1 -4
- package/dist/core/shared/conflict-markers.js +1 -31
- package/dist/core/shared/constants.js +1 -405
- package/dist/core/shared/errors.js +1 -20
- package/dist/core/shared/html-entity-decode.js +1 -131
- package/dist/core/shared/index.js +1 -12
- package/dist/core/shared/item-metadata-contract.js +1 -89
- package/dist/core/shared/lazy-module.js +1 -16
- package/dist/core/shared/levenshtein.js +1 -61
- package/dist/core/shared/memo.js +1 -19
- package/dist/core/shared/numeric-parsers.js +1 -20
- package/dist/core/shared/option-alias-visibility.js +1 -67
- package/dist/core/shared/primitives.js +1 -127
- package/dist/core/shared/serial-queue.js +1 -79
- package/dist/core/shared/serialization.js +1 -210
- package/dist/core/shared/split-comma-list.js +1 -30
- package/dist/core/shared/text-normalization.js +1 -38
- package/dist/core/shared/time.js +1 -306
- package/dist/core/store/index.js +1 -12
- package/dist/core/store/item-format-migration.js +1 -125
- package/dist/core/store/item-metadata-cache.js +1 -1116
- package/dist/core/store/item-metadata-query-index.js +9 -394
- package/dist/core/store/item-metadata-read-work.js +1 -43
- package/dist/core/store/item-store.js +1 -693
- package/dist/core/store/paths.d.ts +1 -1
- package/dist/core/store/paths.js +1 -214
- package/dist/core/store/settings-read-cache.js +1 -85
- package/dist/core/store/settings-validator.d.ts +1 -0
- package/dist/core/store/settings-validator.js +1 -421
- package/dist/core/store/settings.js +3 -1309
- package/dist/core/store/tracker-preflight.js +1 -141
- package/dist/core/telemetry/consent.js +5 -108
- package/dist/core/telemetry/observability.js +1 -246
- package/dist/core/telemetry/runtime.js +4 -1988
- package/dist/core/test/background-runs.js +4 -945
- package/dist/core/test/item-test-run-tracking.js +1 -63
- package/dist/core/test/run-selectors.js +1 -120
- package/dist/core/validate/estimate-defaults.js +1 -89
- package/dist/core/validate/fix-planning.js +1 -189
- package/dist/core/validate/linked-artifact-reference.js +1 -36
- package/dist/core/validate/missing-by-type.js +1 -34
- package/dist/core/validate/missing-link-owners.js +1 -95
- package/dist/core/validate/stale-file-classification.js +1 -82
- package/dist/mcp/http-server.js +5 -448
- package/dist/mcp/legacy-adapter.js +1 -77
- package/dist/mcp/runtime-capabilities.js +1 -200
- package/dist/mcp/server.js +4 -1233
- package/dist/mcp/tool-definitions.js +1 -804
- package/dist/sdk/actionability.js +1 -13
- package/dist/sdk/agent/closed-domain-contracts.js +1 -161
- package/dist/sdk/agent/command-recovery.js +1 -59
- package/dist/sdk/agent/command-suggestions.js +1 -66
- package/dist/sdk/agent/create-option-policy.js +1 -31
- package/dist/sdk/agent/identity-config.js +1 -106
- package/dist/sdk/agent/item-addressing.js +1 -207
- package/dist/sdk/agent/refusal-closure-census.js +1 -151
- package/dist/sdk/agent/refusal-closure.js +1 -133
- package/dist/sdk/agent/refusal-corpus-contracts.js +1 -193
- package/dist/sdk/agent/refusal-reachability.js +1 -593
- package/dist/sdk/agent/subcommand-recovery.js +1 -83
- package/dist/sdk/agent/task-transcript-contracts.js +1 -197
- package/dist/sdk/agent/tracker-preflight-contracts.js +1 -126
- package/dist/sdk/agent-capability-contracts.js +1 -428
- package/dist/sdk/agent-session-context.js +1 -9
- package/dist/sdk/annotations.js +1 -448
- package/dist/sdk/author-attribution.js +1 -468
- package/dist/sdk/authoring.js +1 -20
- package/dist/sdk/cli-bootstrap.js +1 -838
- package/dist/sdk/cli-contracts/agent-output-contracts.d.ts +1 -1
- package/dist/sdk/cli-contracts/agent-output-contracts.js +4 -476
- package/dist/sdk/cli-contracts/bootstrap-command-scanner.js +1 -79
- package/dist/sdk/cli-contracts/command-aliases.d.ts +4 -0
- package/dist/sdk/cli-contracts/command-aliases.js +1 -107
- package/dist/sdk/cli-contracts/command-exit-contracts.js +1 -151
- package/dist/sdk/cli-contracts/commander-mutation-options.js +1 -1081
- package/dist/sdk/cli-contracts/commander-types.js +1 -159
- package/dist/sdk/cli-contracts/completeness.js +1 -393
- package/dist/sdk/cli-contracts/enum-contracts.d.ts +1 -1
- package/dist/sdk/cli-contracts/enum-contracts.js +1 -222
- package/dist/sdk/cli-contracts/flag-contracts.js +1 -1947
- package/dist/sdk/cli-contracts/flag-lexicon-contracts.js +1 -347
- package/dist/sdk/cli-contracts/grammar-contracts.js +1 -986
- package/dist/sdk/cli-contracts/registration-helpers.js +7 -990
- package/dist/sdk/cli-contracts/runtime-contracts.d.ts +5 -0
- package/dist/sdk/cli-contracts/runtime-contracts.js +1 -2090
- package/dist/sdk/cli-contracts/schemas/assurance-definition.js +1 -324
- package/dist/sdk/cli-contracts/string-lists.js +1 -16
- package/dist/sdk/cli-contracts/tool-option-contracts.js +1 -461
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +1 -2167
- package/dist/sdk/cli-contracts/tool-schema.d.ts +3 -1
- package/dist/sdk/cli-contracts/tool-schema.js +1 -1664
- package/dist/sdk/cli-contracts/typed-action-inputs.js +1 -4
- package/dist/sdk/cli-contracts.d.ts +1 -1
- package/dist/sdk/cli-contracts.js +1 -17
- package/dist/sdk/cli-program.js +1 -49
- package/dist/sdk/command-line.d.ts +2 -5
- package/dist/sdk/command-line.js +1 -78
- package/dist/sdk/comments.js +1 -133
- package/dist/sdk/compile-cache.js +1 -73
- package/dist/sdk/completion.js +174 -839
- package/dist/sdk/compose.js +1 -1090
- package/dist/sdk/config.js +1 -1204
- package/dist/sdk/context/recency.js +1 -33
- package/dist/sdk/context/semantic-session-attribution.js +1 -82
- package/dist/sdk/context/usage-egress.js +1 -29
- package/dist/sdk/context/usage-ledger.js +3 -185
- package/dist/sdk/context-intent-contracts.js +1 -709
- package/dist/sdk/context-intent-runtime.js +1 -115
- package/dist/sdk/context-packing.js +1 -218
- package/dist/sdk/context-relevance.js +1 -503
- package/dist/sdk/context-signal-store.js +2 -426
- package/dist/sdk/context-usage.js +1 -367
- package/dist/sdk/contracts.js +1 -23
- package/dist/sdk/core-governance.js +1 -14
- package/dist/sdk/core.js +1 -14
- package/dist/sdk/corpus-shape.js +1 -401
- package/dist/sdk/define.js +1 -220
- package/dist/sdk/dependencies.js +1 -718
- package/dist/sdk/dependency-flag-validation.js +1 -156
- package/dist/sdk/dependency-provenance.js +1 -135
- package/dist/sdk/docs.js +1 -14
- package/dist/sdk/duplicates.js +1 -40
- package/dist/sdk/environment/agent-environment.js +1 -466
- package/dist/sdk/environment/host-environment-errors.js +1 -8
- package/dist/sdk/environment/project-runtime-compatibility.js +1 -481
- package/dist/sdk/environment/source-context.js +1 -28
- package/dist/sdk/environment/tracker-preflight.js +1 -9
- package/dist/sdk/error-code-catalog.js +1 -153
- package/dist/sdk/error-runtime.js +1 -58
- package/dist/sdk/errors.js +1 -58
- package/dist/sdk/eval.js +1 -190
- package/dist/sdk/extension/author-manifest.js +1 -92
- package/dist/sdk/extension/bundled-catalog.js +1 -332
- package/dist/sdk/extension/concurrency.js +1 -25
- package/dist/sdk/extension/copy-scope.d.ts +2 -0
- package/dist/sdk/extension/copy-scope.js +2 -0
- package/dist/sdk/extension/custom-field-collisions.js +1 -30
- package/dist/sdk/extension/describe.js +3 -189
- package/dist/sdk/extension/doctor.js +1 -606
- package/dist/sdk/extension/install-plan.d.ts +69 -0
- package/dist/sdk/extension/install-plan.js +2 -0
- package/dist/sdk/extension/install-receipts.d.ts +7 -0
- package/dist/sdk/extension/install-receipts.js +2 -0
- package/dist/sdk/extension/install-runtime.js +3 -313
- package/dist/sdk/extension/install-snapshot.js +1 -66
- package/dist/sdk/extension/install-sources.js +5 -1057
- package/dist/sdk/extension/managed-state.js +2 -252
- package/dist/sdk/extension/migrations.js +2 -174
- package/dist/sdk/extension/output-ownership.js +1 -25
- package/dist/sdk/extension/runtime-summary.js +1 -18
- package/dist/sdk/extension/scaffold.js +4 -2308
- package/dist/sdk/extension/shared.js +1 -147
- package/dist/sdk/extension/source-resolution.js +1 -65
- package/dist/sdk/extension/update-check.js +1 -67
- package/dist/sdk/extension-command-context.js +1 -44
- package/dist/sdk/extension-contracts.js +1 -73
- package/dist/sdk/extension.d.ts +7 -2
- package/dist/sdk/extension.js +1 -2196
- package/dist/sdk/files.js +1 -535
- package/dist/sdk/flag-invocation-contracts.d.ts +0 -5
- package/dist/sdk/flag-invocation-contracts.js +1 -344
- package/dist/sdk/generated/generated-error-code-catalog-part-1.js +1 -2224
- package/dist/sdk/generated/generated-error-code-catalog-part-2.js +1 -2236
- package/dist/sdk/generated-error-code-catalog.js +1 -16
- package/dist/sdk/governance/assurance-action-contracts.js +1 -4
- package/dist/sdk/governance/assurance-action.js +1 -411
- package/dist/sdk/governance/assurance-limits.js +1 -10
- package/dist/sdk/governance/assurance-mutation-error.js +1 -81
- package/dist/sdk/governance/assurance-presets.js +1 -135
- package/dist/sdk/governance/assurance-runtime.js +1 -238
- package/dist/sdk/governance/assurance.js +4 -1182
- package/dist/sdk/governance/boundary-fixtures.js +1 -200
- package/dist/sdk/governance/coverage-assurance.js +1 -60
- package/dist/sdk/governance/defect-recurrence-coverage.js +1 -188
- package/dist/sdk/governance/defect-recurrence-graph.js +1 -120
- package/dist/sdk/governance/defect-recurrence-signals.js +1 -24
- package/dist/sdk/governance/defect-recurrence.js +1 -623
- package/dist/sdk/governance/extension-host-version.js +1 -115
- package/dist/sdk/governance/gc.js +1 -368
- package/dist/sdk/governance/health.js +1 -2367
- package/dist/sdk/governance/hierarchy-validation.js +1 -108
- package/dist/sdk/governance/linked-file-report.js +1 -71
- package/dist/sdk/governance/merge-receipt-history.js +1 -206
- package/dist/sdk/governance/provenance-health.js +1 -282
- package/dist/sdk/governance/reindex.js +4 -761
- package/dist/sdk/governance/stale-work.js +1 -82
- package/dist/sdk/governance/status-role-diagnostics.js +1 -35
- package/dist/sdk/governance/storage-integrity.js +1 -280
- package/dist/sdk/governance/tracked-runtime-cache.js +1 -106
- package/dist/sdk/governance/upgrade.js +2 -327
- package/dist/sdk/governance/validate-history-drift.js +1 -81
- package/dist/sdk/governance/validate-item-reader.js +1 -17
- package/dist/sdk/governance/validate-normalization.js +1 -36
- package/dist/sdk/governance/validate.d.ts +3 -1
- package/dist/sdk/governance/validate.js +1 -2261
- package/dist/sdk/governance/workflow-completeness.d.ts +32 -0
- package/dist/sdk/governance/workflow-completeness.js +2 -0
- package/dist/sdk/governance/workflow-policy.d.ts +47 -0
- package/dist/sdk/governance/workflow-policy.js +4 -0
- package/dist/sdk/governance/workspace-position.js +1 -163
- package/dist/sdk/governance.d.ts +2 -0
- package/dist/sdk/governance.js +1 -31
- package/dist/sdk/graph/adapter.js +1 -181
- package/dist/sdk/graph/analytics.js +1 -474
- package/dist/sdk/graph/assembly.js +1 -377
- package/dist/sdk/graph/cache.js +1 -160
- package/dist/sdk/graph/centrality.js +1 -258
- package/dist/sdk/graph/conformance.js +1 -130
- package/dist/sdk/graph/deadline-scheduling.d.ts +90 -0
- package/dist/sdk/graph/deadline-scheduling.js +2 -0
- package/dist/sdk/graph/durable-cache.d.ts +1 -1
- package/dist/sdk/graph/durable-cache.js +1 -361
- package/dist/sdk/graph/governance-contracts.js +1 -34
- package/dist/sdk/graph/governance.d.ts +13 -1
- package/dist/sdk/graph/governance.js +1 -735
- package/dist/sdk/graph/hierarchy-integrity.js +1 -310
- package/dist/sdk/graph/index.d.ts +3 -2
- package/dist/sdk/graph/index.js +1 -26
- package/dist/sdk/graph/lifecycle-coverage.d.ts +32 -0
- package/dist/sdk/graph/lifecycle-coverage.js +2 -0
- package/dist/sdk/graph/mutation-advisory.js +1 -176
- package/dist/sdk/graph/remediation.js +1 -197
- package/dist/sdk/graph/run.d.ts +15 -1
- package/dist/sdk/graph/run.js +1 -768
- package/dist/sdk/graph/scheduling.js +1 -124
- package/dist/sdk/graph/traversal.js +1 -284
- package/dist/sdk/graph/workspace-relationship-kind-registry.js +1 -27
- package/dist/sdk/graph.js +1 -15
- package/dist/sdk/guide-topics.js +1 -707
- package/dist/sdk/guide.js +1 -279
- package/dist/sdk/history/maintenance.d.ts +71 -0
- package/dist/sdk/history/maintenance.js +2 -0
- package/dist/sdk/history/salvage.js +2 -247
- package/dist/sdk/history/subject.d.ts +19 -0
- package/dist/sdk/history/subject.js +2 -0
- package/dist/sdk/history-analytics.js +1 -282
- package/dist/sdk/history-compact.js +1 -527
- package/dist/sdk/history-mcp.js +1 -68
- package/dist/sdk/history-provenance.js +1 -182
- package/dist/sdk/history-read.js +1 -96
- package/dist/sdk/history-redact.d.ts +1 -14
- package/dist/sdk/history-redact.js +1 -643
- package/dist/sdk/history-repair.d.ts +5 -0
- package/dist/sdk/history-repair.js +1 -657
- package/dist/sdk/improvement-ledger-validation.js +1 -62
- package/dist/sdk/improvement-ledger.js +2 -257
- package/dist/sdk/index.d.ts +4 -1
- package/dist/sdk/index.js +1 -183
- package/dist/sdk/init-agent-guidance.js +2 -496
- package/dist/sdk/init.js +2 -820
- package/dist/sdk/invocation-author.js +1 -39
- package/dist/sdk/item-children.js +1 -90
- package/dist/sdk/item-metadata-index.js +1 -15
- package/dist/sdk/item-schedule.js +1 -27
- package/dist/sdk/item-transaction.js +1 -396
- package/dist/sdk/learnings.js +1 -29
- package/dist/sdk/lifecycle/append.js +2 -53
- package/dist/sdk/lifecycle/claim.d.ts +2 -0
- package/dist/sdk/lifecycle/claim.js +1 -242
- package/dist/sdk/lifecycle/close-many.js +1 -438
- package/dist/sdk/lifecycle/close.js +1 -468
- package/dist/sdk/lifecycle/copy.js +1 -212
- package/dist/sdk/lifecycle/create.js +1 -1949
- package/dist/sdk/lifecycle/delete.js +1 -45
- package/dist/sdk/lifecycle/event-validation-messages.js +1 -91
- package/dist/sdk/lifecycle/focus.js +1 -91
- package/dist/sdk/lifecycle/hierarchy-mutation-lock.js +1 -24
- package/dist/sdk/lifecycle/legacy-none-tokens.js +1 -149
- package/dist/sdk/lifecycle/lifecycle-transitions.js +1 -40
- package/dist/sdk/lifecycle/mcp-actions.d.ts +2 -0
- package/dist/sdk/lifecycle/mcp-actions.js +1 -51
- package/dist/sdk/lifecycle/metadata-normalizers.js +1 -46
- package/dist/sdk/lifecycle/mutation-command-options.js +1 -9
- package/dist/sdk/lifecycle/plan.js +1 -1606
- package/dist/sdk/lifecycle/recurrence-parsers.d.ts +1 -1
- package/dist/sdk/lifecycle/recurrence-parsers.js +1 -147
- package/dist/sdk/lifecycle/reopen.js +1 -68
- package/dist/sdk/lifecycle/repeatable-metadata-parsers.js +1 -143
- package/dist/sdk/lifecycle/restore.d.ts +1 -0
- package/dist/sdk/lifecycle/restore.js +1 -330
- package/dist/sdk/lifecycle/shared-unset-fields.js +1 -295
- package/dist/sdk/lifecycle/update-many.js +1 -861
- package/dist/sdk/lifecycle/update.js +1 -2136
- package/dist/sdk/lifecycle-completion.js +1 -92
- package/dist/sdk/lifecycle-policy.js +1 -120
- package/dist/sdk/linked-artifacts.js +1 -530
- package/dist/sdk/mcp/apps.js +4 -133
- package/dist/sdk/mcp/authorization.js +1 -404
- package/dist/sdk/mcp/discovery.js +1 -494
- package/dist/sdk/mcp/interactions.js +1 -336
- package/dist/sdk/mcp/protocol.d.ts +7 -0
- package/dist/sdk/mcp/protocol.js +1 -184
- package/dist/sdk/mcp/skills.js +1 -389
- package/dist/sdk/mcp/subscriptions.js +1 -211
- package/dist/sdk/mcp/tasks.js +2 -430
- package/dist/sdk/mcp/transport.js +1 -260
- package/dist/sdk/merge/abandoned-receipts.js +1 -46
- package/dist/sdk/merge/driver.js +1 -212
- package/dist/sdk/merge/index.js +1 -16
- package/dist/sdk/merge/install.js +3 -561
- package/dist/sdk/merge/receipt-file-boundary.js +1 -46
- package/dist/sdk/merge/receipt-operation.js +1 -96
- package/dist/sdk/merge/receipt-schema.js +1 -397
- package/dist/sdk/merge/receipts.js +4 -525
- package/dist/sdk/merge/reconcile.js +1 -352
- package/dist/sdk/merge/three-way.js +3 -775
- package/dist/sdk/merge.js +1 -10
- package/dist/sdk/mutation-events.js +1 -292
- package/dist/sdk/mutation-guard.js +1 -216
- package/dist/sdk/notes.js +1 -139
- package/dist/sdk/output-contracts.js +1 -172
- package/dist/sdk/output-projection.js +1 -430
- package/dist/sdk/output-token-accounting.js +1 -140
- package/dist/sdk/output.js +1 -64
- package/dist/sdk/ownership-source.js +1 -21
- package/dist/sdk/package-import-adapters.js +1 -442
- package/dist/sdk/package-migrations.js +1 -20
- package/dist/sdk/package-runtime-options.js +1 -80
- package/dist/sdk/pagination.js +1 -162
- package/dist/sdk/profile.js +1 -454
- package/dist/sdk/provenance.js +1 -258
- package/dist/sdk/public-surface.json +1 -1
- package/dist/sdk/query/activity.js +1 -401
- package/dist/sdk/query/aggregate.d.ts +16 -0
- package/dist/sdk/query/aggregate.js +1 -390
- package/dist/sdk/query/calendar.js +1 -964
- package/dist/sdk/query/complete-list.js +1 -215
- package/dist/sdk/query/context.js +1 -1702
- package/dist/sdk/query/duplicate-candidates.js +1 -70
- package/dist/sdk/query/get.js +1 -450
- package/dist/sdk/query/history.js +1 -186
- package/dist/sdk/query/item-filter-options.js +1 -9
- package/dist/sdk/query/light-metadata.js +1 -18
- package/dist/sdk/query/list-filter-shared.js +1 -81
- package/dist/sdk/query/list.js +1 -1304
- package/dist/sdk/query/multi-value-filters.js +1 -78
- package/dist/sdk/query/next.js +1 -513
- package/dist/sdk/query/parsers.js +1 -44
- package/dist/sdk/query/projection-contracts.js +1 -184
- package/dist/sdk/query/search-contracts.d.ts +27 -0
- package/dist/sdk/query/search-contracts.js +1 -230
- package/dist/sdk/query/search-pagination.js +1 -35
- package/dist/sdk/query/search-rendering.js +1 -105
- package/dist/sdk/query/search.d.ts +6 -4
- package/dist/sdk/query/search.js +2 -1987
- package/dist/sdk/query.js +1 -35
- package/dist/sdk/read-output/continuation.js +1 -194
- package/dist/sdk/read-output-budget.js +1 -135
- package/dist/sdk/read-output-contracts.d.ts +1 -1
- package/dist/sdk/read-output-contracts.js +1 -1225
- package/dist/sdk/read-output-rows.js +1 -186
- package/dist/sdk/read-output-session.js +1 -208
- package/dist/sdk/relationship-analytics.js +1 -410
- package/dist/sdk/relationship-context.js +1 -284
- package/dist/sdk/relationship-history.js +4 -519
- package/dist/sdk/relationship-kinds/contract.js +1 -22
- package/dist/sdk/relationship-migration.js +1 -77
- package/dist/sdk/relationships.js +1 -579
- package/dist/sdk/reproducibility/process.js +1 -87
- package/dist/sdk/runtime-action-aliases.js +1 -59
- package/dist/sdk/runtime-extended-actions.js +1 -177
- package/dist/sdk/runtime-input.js +1 -614
- package/dist/sdk/runtime-primitives.js +1 -84
- package/dist/sdk/runtime-public-contracts.d.ts +2 -1
- package/dist/sdk/runtime-public-contracts.js +1 -4
- package/dist/sdk/runtime-stats-options.js +1 -38
- package/dist/sdk/runtime.d.ts +4 -0
- package/dist/sdk/runtime.js +1 -1928
- package/dist/sdk/scheduling-shortcuts.js +1 -63
- package/dist/sdk/schema-migration.js +3 -856
- package/dist/sdk/schema.d.ts +2 -1
- package/dist/sdk/schema.js +1 -1376
- package/dist/sdk/search-refresh-worker.js +1 -18
- package/dist/sdk/similarity-scoring.js +1 -53
- package/dist/sdk/similarity.js +1 -326
- package/dist/sdk/start-task-status.js +1 -14
- package/dist/sdk/stats.js +1 -270
- package/dist/sdk/structured-mutations.js +1 -580
- package/dist/sdk/telemetry-flush.js +1 -13
- package/dist/sdk/telemetry.js +1 -405
- package/dist/sdk/templates.js +2 -292
- package/dist/sdk/test/batch.js +2 -509
- package/dist/sdk/test/entry.js +1 -70
- package/dist/sdk/test/execution.js +6 -2211
- package/dist/sdk/test/linked-command-detection.js +1 -546
- package/dist/sdk/test/measurements.js +1 -91
- package/dist/sdk/test/parsers.js +1 -545
- package/dist/sdk/test/runs.js +1 -193
- package/dist/sdk/test/trust.js +2 -206
- package/dist/sdk/testing.js +4 -1391
- package/dist/sdk/traceability/runtime-files-lookup.js +1 -32
- package/dist/sdk/traceability/source-traceability.js +1 -292
- package/dist/sdk/tracker-root-discovery.js +1 -9
- package/dist/sdk/workspace-contracts-cache.js +1 -28
- package/dist/sdk/workspace-contracts.js +1 -33
- package/dist/sdk/workspace-memory.js +2 -318
- package/dist/sdk/workspace-recipe.js +1 -71
- package/dist/sdk/workspace-snapshot.js +4 -613
- package/dist/sdk/workspace-transaction-gc.js +1 -149
- package/dist/sdk/workspace-transaction.js +2 -363
- package/dist/sdk/workspace.js +3 -127
- package/dist/types/index.js +1 -9
- package/dist/types.d.ts +4 -0
- package/dist/types.js +1 -245
- package/docs/AGENT_GUIDE.md +1 -1
- package/docs/COMMANDS.md +10 -0
- package/docs/CONFIGURATION.md +12 -1
- package/docs/CONTEXT_ALGORITHM_PORTFOLIO.md +167 -0
- package/docs/DIAGNOSTIC_OUTPUT_CONTRACTS.md +9 -3
- package/docs/EXTENSIONS.md +1 -0
- package/docs/HISTORY_MAINTENANCE.md +125 -0
- package/docs/MCP_2026_07_28_CONFORMANCE.md +20 -10
- package/docs/PACKAGE_EVIDENCE.md +92 -0
- package/docs/PLANNING_MEASUREMENTS.md +183 -0
- package/docs/README.md +4 -0
- package/docs/READ_OUTPUT_CONTRACTS.md +5 -0
- package/docs/SCRIPTING.md +21 -0
- package/docs/TESTING.md +33 -0
- package/docs/WORKFLOW_POLICIES.md +129 -0
- package/docs/generated/FLAG_LEXICON_BUDGETS.md +7 -7
- package/docs/generated/REFUSAL_CLOSURE_CENSUS.md +11 -5
- package/marketplace.json +2 -2
- package/package.json +5 -5
- 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-codex/.codex-plugin/plugin.json +1 -1
- package/scripts/finalize-build.mjs +45 -3
- package/dist/cli-bundle/chunks/chunk-AZDFJGH6.js +0 -9
- package/dist/cli-bundle/chunks/chunk-CKOL5U7J.js +0 -77
- package/dist/cli-bundle/chunks/chunk-JX4DH4WC.js +0 -3
- package/dist/cli-bundle/chunks/chunk-OF76PSDQ.js +0 -5
- package/dist/cli-bundle/chunks/chunk-QUWFABDM.js +0 -232
- package/dist/cli-bundle/chunks/chunk-QWRRFYK3.js +0 -2
- package/dist/cli-bundle/chunks/chunk-RWWBOWJ5.js +0 -2
- package/dist/cli-bundle/chunks/chunk-WGAOYSYH.js +0 -40
- package/dist/cli-bundle/chunks/chunk-WI2AYPA7.js +0 -2
- package/dist/cli-bundle/chunks/register-list-query-5JL52D33.js +0 -11
- package/dist/cli-bundle/chunks/register-mutation-ZPG7KMVP.js +0 -20
- package/dist/cli-bundle/chunks/register-operations-I5W3KMGB.js +0 -2
- package/dist/cli-bundle/chunks/register-setup-H4SVAVX7.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-AL5ON6K6.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-CHC2IDXA.js +0 -6
- package/dist/cli-bundle/focused-chunks/chunk-CK6QFAPZ.js +0 -20
- package/dist/cli-bundle/focused-chunks/chunk-EZR3GHFE.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-H2WJWK7L.js +0 -56
- package/dist/cli-bundle/focused-chunks/chunk-NTPY5GSO.js +0 -3
- package/dist/cli-bundle/focused-chunks/chunk-P5O7MP5Y.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-PDMW2E36.js +0 -177
- package/dist/cli-bundle/focused-chunks/chunk-PEFABF7E.js +0 -26
- package/dist/cli-bundle/focused-chunks/chunk-QTVCLMSZ.js +0 -6
- package/dist/cli-bundle/focused-chunks/chunk-QTZRBUYA.js +0 -8
- package/dist/cli-bundle/focused-chunks/chunk-SGQST3PQ.js +0 -12
- package/dist/cli-bundle/focused-chunks/chunk-UKHASMMP.js +0 -10
- package/dist/cli-bundle/focused-chunks/chunk-ZPEKQHOC.js +0 -2
|
@@ -1,174 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
* @module core/extensions/contribution-inventory
|
|
3
|
-
*
|
|
4
|
-
* Validates and canonicalizes the serializable extension surface inventory.
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="f7c79f37-1cae-59c9-b500-eb87d0089f94")}catch(e){}}();
|
|
8
|
-
import { normalizeCommandName } from "./extension-runtime-helpers.js";
|
|
9
|
-
const COMMAND_PATH_FIELDS = new Set([
|
|
10
|
-
"commands",
|
|
11
|
-
"command_overrides",
|
|
12
|
-
"command_handlers",
|
|
13
|
-
"flag_commands",
|
|
14
|
-
"parser_overrides",
|
|
15
|
-
]);
|
|
16
|
-
const STRING_LIST_FIELDS = [
|
|
17
|
-
"commands",
|
|
18
|
-
"command_overrides",
|
|
19
|
-
"command_handlers",
|
|
20
|
-
"hooks",
|
|
21
|
-
"flag_commands",
|
|
22
|
-
"item_types",
|
|
23
|
-
"item_fields",
|
|
24
|
-
"relationship_kinds",
|
|
25
|
-
"migrations",
|
|
26
|
-
"profiles",
|
|
27
|
-
"importers",
|
|
28
|
-
"exporters",
|
|
29
|
-
"search_providers",
|
|
30
|
-
"vector_store_adapters",
|
|
31
|
-
"assurance_providers",
|
|
32
|
-
"parser_overrides",
|
|
33
|
-
"service_overrides",
|
|
34
|
-
"renderer_overrides",
|
|
35
|
-
];
|
|
36
|
-
/** Canonicalize every optional string-list surface into an inventory. */
|
|
37
|
-
function applyContributionStringLists(record, inventory) {
|
|
38
|
-
for (const field of STRING_LIST_FIELDS) {
|
|
39
|
-
const raw = record[field];
|
|
40
|
-
if (raw === undefined)
|
|
41
|
-
continue;
|
|
42
|
-
if (!Array.isArray(raw) || raw.some((entry) => typeof entry !== "string")) {
|
|
43
|
-
return false;
|
|
44
|
-
}
|
|
45
|
-
const values = raw
|
|
46
|
-
.map((entry) => COMMAND_PATH_FIELDS.has(field)
|
|
47
|
-
? normalizeCommandName(entry)
|
|
48
|
-
: entry.trim())
|
|
49
|
-
.filter((entry) => entry.length > 0);
|
|
50
|
-
inventory[field] = [...new Set(values)].sort((left, right) => left.localeCompare(right));
|
|
51
|
-
}
|
|
52
|
-
return true;
|
|
53
|
-
}
|
|
54
|
-
/** Validate renderer routing metadata without importing its implementation. */
|
|
55
|
-
function normalizeRendererOwnership(value) {
|
|
56
|
-
if (!Array.isArray(value))
|
|
57
|
-
return null;
|
|
58
|
-
const ownership = [];
|
|
59
|
-
for (const rawEntry of value) {
|
|
60
|
-
if (typeof rawEntry !== "object" || rawEntry === null)
|
|
61
|
-
return null;
|
|
62
|
-
const entry = rawEntry;
|
|
63
|
-
if ((entry.format !== "json" && entry.format !== "toon") ||
|
|
64
|
-
!Array.isArray(entry.commands) ||
|
|
65
|
-
entry.commands.some((command) => typeof command !== "string") ||
|
|
66
|
-
typeof entry.result_discriminator !== "boolean") {
|
|
67
|
-
return null;
|
|
68
|
-
}
|
|
69
|
-
ownership.push({
|
|
70
|
-
format: entry.format,
|
|
71
|
-
commands: [
|
|
72
|
-
...new Set(entry.commands.map((command) => normalizeCommandName(command))),
|
|
73
|
-
].sort((left, right) => left.localeCompare(right)),
|
|
74
|
-
result_discriminator: entry.result_discriminator,
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
return ownership.sort((left, right) => left.format.localeCompare(right.format));
|
|
78
|
-
}
|
|
79
|
-
/** Validate preflight command ownership without importing extension code. */
|
|
80
|
-
function normalizePreflightOwnership(value) {
|
|
81
|
-
if (!Array.isArray(value))
|
|
82
|
-
return null;
|
|
83
|
-
const ownership = [];
|
|
84
|
-
for (const rawEntry of value) {
|
|
85
|
-
if (typeof rawEntry !== "object" || rawEntry === null)
|
|
86
|
-
return null;
|
|
87
|
-
const commands = rawEntry.commands;
|
|
88
|
-
if (!Array.isArray(commands) ||
|
|
89
|
-
commands.some((command) => typeof command !== "string")) {
|
|
90
|
-
return null;
|
|
91
|
-
}
|
|
92
|
-
ownership.push({
|
|
93
|
-
commands: [
|
|
94
|
-
...new Set(commands.map((command) => normalizeCommandName(command))),
|
|
95
|
-
]
|
|
96
|
-
.filter((command) => command.length > 0)
|
|
97
|
-
.sort((left, right) => left.localeCompare(right)),
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
return ownership;
|
|
101
|
-
}
|
|
102
|
-
/** Normalize an optional contribution inventory, returning null for malformed data. */
|
|
103
|
-
export function normalizeExtensionContributionInventory(value) {
|
|
104
|
-
if (value === undefined || value === null)
|
|
105
|
-
return undefined;
|
|
106
|
-
if (typeof value !== "object" || Array.isArray(value))
|
|
107
|
-
return null;
|
|
108
|
-
const record = value;
|
|
109
|
-
if (record.schema_version !== 1)
|
|
110
|
-
return null;
|
|
111
|
-
const inventory = { schema_version: 1 };
|
|
112
|
-
if (!applyContributionStringLists(record, inventory))
|
|
113
|
-
return null;
|
|
114
|
-
const preflightCount = record.preflight_overrides;
|
|
115
|
-
if (preflightCount !== undefined &&
|
|
116
|
-
(!Number.isInteger(preflightCount) || preflightCount < 0)) {
|
|
117
|
-
return null;
|
|
118
|
-
}
|
|
119
|
-
if (typeof preflightCount === "number") {
|
|
120
|
-
inventory.preflight_overrides = preflightCount;
|
|
121
|
-
}
|
|
122
|
-
const rawRendererOwnership = record.renderer_ownership;
|
|
123
|
-
if (rawRendererOwnership !== undefined) {
|
|
124
|
-
const ownership = normalizeRendererOwnership(rawRendererOwnership);
|
|
125
|
-
if (ownership === null)
|
|
126
|
-
return null;
|
|
127
|
-
inventory.renderer_ownership = ownership;
|
|
128
|
-
}
|
|
129
|
-
const rawPreflightOwnership = record.preflight_ownership;
|
|
130
|
-
if (rawPreflightOwnership !== undefined) {
|
|
131
|
-
const ownership = normalizePreflightOwnership(rawPreflightOwnership);
|
|
132
|
-
if (ownership === null)
|
|
133
|
-
return null;
|
|
134
|
-
inventory.preflight_ownership = ownership;
|
|
135
|
-
}
|
|
136
|
-
return inventory;
|
|
137
|
-
}
|
|
138
|
-
/** Project an activation summary into the versioned static inventory contract. */
|
|
139
|
-
export function createExtensionContributionInventory(summary) {
|
|
140
|
-
return {
|
|
141
|
-
schema_version: 1,
|
|
142
|
-
commands: summary.commands,
|
|
143
|
-
command_overrides: summary.command_overrides,
|
|
144
|
-
command_handlers: summary.command_handlers,
|
|
145
|
-
hooks: summary.hooks,
|
|
146
|
-
flag_commands: summary.flag_commands,
|
|
147
|
-
item_types: summary.item_types,
|
|
148
|
-
item_fields: summary.item_fields,
|
|
149
|
-
...(summary.relationship_kinds
|
|
150
|
-
? { relationship_kinds: summary.relationship_kinds }
|
|
151
|
-
: {}),
|
|
152
|
-
migrations: summary.migrations,
|
|
153
|
-
profiles: summary.profiles,
|
|
154
|
-
importers: summary.importers,
|
|
155
|
-
exporters: summary.exporters,
|
|
156
|
-
search_providers: summary.search_providers,
|
|
157
|
-
vector_store_adapters: summary.vector_store_adapters,
|
|
158
|
-
...(summary.assurance_providers
|
|
159
|
-
? { assurance_providers: summary.assurance_providers }
|
|
160
|
-
: {}),
|
|
161
|
-
parser_overrides: summary.parser_overrides,
|
|
162
|
-
service_overrides: summary.service_overrides,
|
|
163
|
-
renderer_overrides: summary.renderer_overrides,
|
|
164
|
-
...(summary.renderer_ownership
|
|
165
|
-
? { renderer_ownership: summary.renderer_ownership }
|
|
166
|
-
: {}),
|
|
167
|
-
preflight_overrides: summary.preflight_overrides,
|
|
168
|
-
...(summary.preflight_ownership
|
|
169
|
-
? { preflight_ownership: summary.preflight_ownership }
|
|
170
|
-
: {}),
|
|
171
|
-
};
|
|
172
|
-
}
|
|
1
|
+
!(function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="7d96fda0-1f2f-5e34-99da-c3c5ad0f53f6")}catch(e2){}})();import{normalizeCommandName}from"./extension-runtime-helpers.js";const COMMAND_PATH_FIELDS=new Set(["commands","command_overrides","command_handlers","flag_commands","parser_overrides"]);const STRING_LIST_FIELDS=["commands","command_overrides","command_handlers","hooks","flag_commands","item_types","item_fields","relationship_kinds","migrations","profiles","importers","exporters","search_providers","vector_store_adapters","assurance_providers","parser_overrides","service_overrides","renderer_overrides"];function applyContributionStringLists(record,inventory){for(const field of STRING_LIST_FIELDS){const raw=record[field];if(raw===void 0)continue;if(!Array.isArray(raw)||raw.some(entry=>typeof entry!=="string")){return false}const values=raw.map(entry=>COMMAND_PATH_FIELDS.has(field)?normalizeCommandName(entry):entry.trim()).filter(entry=>entry.length>0);inventory[field]=[...new Set(values)].sort((left,right)=>left.localeCompare(right))}return true}function normalizeRendererOwnership(value){if(!Array.isArray(value))return null;const ownership=[];for(const rawEntry of value){if(typeof rawEntry!=="object"||rawEntry===null)return null;const entry=rawEntry;if(entry.format!=="json"&&entry.format!=="toon"||!Array.isArray(entry.commands)||entry.commands.some(command=>typeof command!=="string")||typeof entry.result_discriminator!=="boolean"){return null}ownership.push({format:entry.format,commands:[...new Set(entry.commands.map(command=>normalizeCommandName(command)))].sort((left,right)=>left.localeCompare(right)),result_discriminator:entry.result_discriminator})}return ownership.sort((left,right)=>left.format.localeCompare(right.format))}function normalizePreflightOwnership(value){if(!Array.isArray(value))return null;const ownership=[];for(const rawEntry of value){if(typeof rawEntry!=="object"||rawEntry===null)return null;const commands=rawEntry.commands;if(!Array.isArray(commands)||commands.some(command=>typeof command!=="string")){return null}ownership.push({commands:[...new Set(commands.map(command=>normalizeCommandName(command)))].filter(command=>command.length>0).sort((left,right)=>left.localeCompare(right))})}return ownership}function normalizeExtensionContributionInventory(value){if(value===void 0||value===null)return void 0;if(typeof value!=="object"||Array.isArray(value))return null;const record=value;if(record.schema_version!==1)return null;const inventory={schema_version:1};if(!applyContributionStringLists(record,inventory))return null;const preflightCount=record.preflight_overrides;if(preflightCount!==void 0&&(!Number.isInteger(preflightCount)||preflightCount<0)){return null}if(typeof preflightCount==="number"){inventory.preflight_overrides=preflightCount}const rawRendererOwnership=record.renderer_ownership;if(rawRendererOwnership!==void 0){const ownership=normalizeRendererOwnership(rawRendererOwnership);if(ownership===null)return null;inventory.renderer_ownership=ownership}const rawPreflightOwnership=record.preflight_ownership;if(rawPreflightOwnership!==void 0){const ownership=normalizePreflightOwnership(rawPreflightOwnership);if(ownership===null)return null;inventory.preflight_ownership=ownership}return inventory}function createExtensionContributionInventory(summary){return{schema_version:1,commands:summary.commands,command_overrides:summary.command_overrides,command_handlers:summary.command_handlers,hooks:summary.hooks,flag_commands:summary.flag_commands,item_types:summary.item_types,item_fields:summary.item_fields,...summary.relationship_kinds?{relationship_kinds:summary.relationship_kinds}:{},migrations:summary.migrations,profiles:summary.profiles,importers:summary.importers,exporters:summary.exporters,search_providers:summary.search_providers,vector_store_adapters:summary.vector_store_adapters,...summary.assurance_providers?{assurance_providers:summary.assurance_providers}:{},parser_overrides:summary.parser_overrides,service_overrides:summary.service_overrides,renderer_overrides:summary.renderer_overrides,...summary.renderer_ownership?{renderer_ownership:summary.renderer_ownership}:{},preflight_overrides:summary.preflight_overrides,...summary.preflight_ownership?{preflight_ownership:summary.preflight_ownership}:{}}}export{createExtensionContributionInventory,normalizeExtensionContributionInventory};
|
|
173
2
|
//# sourceMappingURL=contribution-inventory.js.map
|
|
174
|
-
//# debugId=f7c79f37-1cae-59c9-b500-eb87d0089f94
|
|
@@ -1,67 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="057f439e-ac5c-5715-9fd0-4410e003d481")}catch(e){}}();
|
|
3
|
-
import { cloneContextSnapshot } from "./extension-runtime-helpers.js";
|
|
4
|
-
import { asRegistrationRecord, assertOptionalStringField, } from "./registration-validation.js";
|
|
5
|
-
/** Validates and normalizes the public artifact-channel metadata for one exporter registration. */
|
|
6
|
-
export function normalizeExporterArtifactOutput(value) {
|
|
7
|
-
const candidate = asRegistrationRecord("registerExporter options.output", value);
|
|
8
|
-
const allowedKeys = new Set(["channel", "receipt", "media_type"]);
|
|
9
|
-
for (const key of Object.keys(candidate)) {
|
|
10
|
-
if (!allowedKeys.has(key)) {
|
|
11
|
-
throw new TypeError(`registerExporter options.output contains unsupported field ${key}`);
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
if (candidate.channel !== "stdout" && candidate.channel !== "file") {
|
|
15
|
-
throw new TypeError("registerExporter options.output.channel must be stdout|file");
|
|
16
|
-
}
|
|
17
|
-
if (candidate.receipt !== undefined &&
|
|
18
|
-
candidate.receipt !== "suppress" &&
|
|
19
|
-
candidate.receipt !== "render") {
|
|
20
|
-
throw new TypeError("registerExporter options.output.receipt must be suppress|render");
|
|
21
|
-
}
|
|
22
|
-
if (candidate.channel === "stdout" && candidate.receipt === "render") {
|
|
23
|
-
throw new TypeError("registerExporter stdout artifacts cannot render a host receipt");
|
|
24
|
-
}
|
|
25
|
-
assertOptionalStringField("registerExporter options.output.media_type", candidate.media_type);
|
|
26
|
-
return {
|
|
27
|
-
channel: candidate.channel,
|
|
28
|
-
receipt: candidate.receipt ??
|
|
29
|
-
(candidate.channel === "stdout" ? "suppress" : "render"),
|
|
30
|
-
...(typeof candidate.media_type === "string"
|
|
31
|
-
? { media_type: candidate.media_type }
|
|
32
|
-
: {}),
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
/** Enforces importer/exporter channel ownership and applies the stdout-specific derived description. */
|
|
36
|
-
export function resolveImportExportArtifactOutput(method, resolvedOptions, descriptionWasDeclared) {
|
|
37
|
-
if (method === "registerImporter" && resolvedOptions.output !== undefined) {
|
|
38
|
-
throw new TypeError("registerImporter options.output is exporter-only");
|
|
39
|
-
}
|
|
40
|
-
if (method !== "registerExporter" || resolvedOptions.output === undefined) {
|
|
41
|
-
return undefined;
|
|
42
|
-
}
|
|
43
|
-
const output = normalizeExporterArtifactOutput(resolvedOptions.output);
|
|
44
|
-
if (!descriptionWasDeclared && output.channel === "stdout") {
|
|
45
|
-
resolvedOptions.description =
|
|
46
|
-
"Export items with the registered extension adapter. Artifact bytes are written exclusively to stdout and the host receipt is suppressed by default.";
|
|
47
|
-
}
|
|
48
|
-
return output;
|
|
49
|
-
}
|
|
50
|
-
/** Snapshots a host command invocation into the stable importer/exporter context contract. */
|
|
51
|
-
export function buildImportExportContext(context, registration, action) {
|
|
52
|
-
return {
|
|
53
|
-
registration,
|
|
54
|
-
action,
|
|
55
|
-
command: context.command,
|
|
56
|
-
args: cloneContextSnapshot(context.args),
|
|
57
|
-
options: cloneContextSnapshot(context.options),
|
|
58
|
-
global: cloneContextSnapshot(context.global),
|
|
59
|
-
pm_root: context.pm_root,
|
|
60
|
-
source_workspace_root: context.source_workspace_root,
|
|
61
|
-
repo_root: context.repo_root,
|
|
62
|
-
pm_root_rel: context.pm_root_rel,
|
|
63
|
-
...(context.sdk === undefined ? {} : { sdk: context.sdk }),
|
|
64
|
-
};
|
|
65
|
-
}
|
|
1
|
+
!(function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="1729c469-5e9c-5d8c-8137-ec506c9fd31b")}catch(e2){}})();import{cloneContextSnapshot}from"./extension-runtime-helpers.js";import{asRegistrationRecord,assertOptionalStringField}from"./registration-validation.js";function normalizeExporterArtifactOutput(value){const candidate=asRegistrationRecord("registerExporter options.output",value);const allowedKeys=new Set(["channel","receipt","media_type"]);for(const key of Object.keys(candidate)){if(!allowedKeys.has(key)){throw new TypeError(`registerExporter options.output contains unsupported field ${key}`)}}if(candidate.channel!=="stdout"&&candidate.channel!=="file"){throw new TypeError("registerExporter options.output.channel must be stdout|file")}if(candidate.receipt!==void 0&&candidate.receipt!=="suppress"&&candidate.receipt!=="render"){throw new TypeError("registerExporter options.output.receipt must be suppress|render")}if(candidate.channel==="stdout"&&candidate.receipt==="render"){throw new TypeError("registerExporter stdout artifacts cannot render a host receipt")}assertOptionalStringField("registerExporter options.output.media_type",candidate.media_type);return{channel:candidate.channel,receipt:candidate.receipt??(candidate.channel==="stdout"?"suppress":"render"),...typeof candidate.media_type==="string"?{media_type:candidate.media_type}:{}}}function resolveImportExportArtifactOutput(method,resolvedOptions,descriptionWasDeclared){if(method==="registerImporter"&&resolvedOptions.output!==void 0){throw new TypeError("registerImporter options.output is exporter-only")}if(method!=="registerExporter"||resolvedOptions.output===void 0){return void 0}const output=normalizeExporterArtifactOutput(resolvedOptions.output);if(!descriptionWasDeclared&&output.channel==="stdout"){resolvedOptions.description="Export items with the registered extension adapter. Artifact bytes are written exclusively to stdout and the host receipt is suppressed by default."}return output}function buildImportExportContext(context,registration,action){return{registration,action,command:context.command,args:cloneContextSnapshot(context.args),options:cloneContextSnapshot(context.options),global:cloneContextSnapshot(context.global),pm_root:context.pm_root,source_workspace_root:context.source_workspace_root,repo_root:context.repo_root,pm_root_rel:context.pm_root_rel,...context.sdk===void 0?{}:{sdk:context.sdk}}}export{buildImportExportContext,normalizeExporterArtifactOutput,resolveImportExportArtifactOutput};
|
|
66
2
|
//# sourceMappingURL=exporter-output-contract.js.map
|
|
67
|
-
//# debugId=057f439e-ac5c-5715-9fd0-4410e003d481
|
|
@@ -1,19 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8725b7dd-ec6f-5c71-897a-7a84ce93f5f0")}catch(e){}}();
|
|
4
|
-
export function buildReadyExtensionCandidate(params) {
|
|
5
|
-
if (!params.extensionReady || !params.enabledForLoad)
|
|
6
|
-
return null;
|
|
7
|
-
return {
|
|
8
|
-
layer: params.layer,
|
|
9
|
-
directory: params.directory,
|
|
10
|
-
manifest_path: params.manifestPath,
|
|
11
|
-
entry_path: params.entryPath,
|
|
12
|
-
manifest: params.manifest,
|
|
13
|
-
source_package: params.sourceIdentity?.package_name,
|
|
14
|
-
source_aliases: params.sourceIdentity?.aliases,
|
|
15
|
-
contributions: params.sourceIdentity?.contributions,
|
|
16
|
-
};
|
|
17
|
-
}
|
|
1
|
+
!(function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b35d854e-5025-5999-abe7-507f1a25647f")}catch(e2){}})();function buildReadyExtensionCandidate(params){if(!params.extensionReady||!params.enabledForLoad)return null;return{layer:params.layer,directory:params.directory,manifest_path:params.manifestPath,entry_path:params.entryPath,manifest:params.manifest,source_package:params.sourceIdentity?.package_name,source_aliases:params.sourceIdentity?.aliases,contributions:params.sourceIdentity?.contributions}}export{buildReadyExtensionCandidate};
|
|
18
2
|
//# sourceMappingURL=extension-candidate.js.map
|
|
19
|
-
//# debugId=8725b7dd-ec6f-5c71-897a-7a84ce93f5f0
|
|
@@ -1,159 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
* @module core/extensions/extension-capability-aliases
|
|
3
|
-
*
|
|
4
|
-
* Implements extension runtime contracts and governance for Extension Capability Aliases.
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3225f4de-aa48-55b7-a704-d93ccb3ee0f4")}catch(e){}}();
|
|
8
|
-
import { KNOWN_EXTENSION_CAPABILITIES, EXTENSION_CAPABILITY_CONTRACT_VERSION, EXTENSION_CAPABILITY_LEGACY_ALIASES, } from "./extension-types.js";
|
|
9
|
-
import { levenshteinDistanceWithinLimit } from "../shared/levenshtein.js";
|
|
10
|
-
/** Implements normalize names for the public runtime surface of this module. */
|
|
11
|
-
export function normalizeNames(values) {
|
|
12
|
-
return [
|
|
13
|
-
...new Set(values.map((value) => value.trim()).filter((value) => value.length > 0)),
|
|
14
|
-
].sort((a, b) => a.localeCompare(b));
|
|
15
|
-
}
|
|
16
|
-
/** Implements check whether known extension capability for the public runtime surface of this module. */
|
|
17
|
-
export function isKnownExtensionCapability(value) {
|
|
18
|
-
return KNOWN_EXTENSION_CAPABILITIES.includes(value);
|
|
19
|
-
}
|
|
20
|
-
/** Trim and lower-case a capability token, returning it only when it is a known canonical capability (otherwise `null`). Shared so capability normalization and known-capability filtering stay identical across the doctor and the SDK least-privilege helpers. */
|
|
21
|
-
export function normalizeKnownExtensionCapability(value) {
|
|
22
|
-
const normalized = value.trim().toLowerCase();
|
|
23
|
-
return isKnownExtensionCapability(normalized) ? normalized : null;
|
|
24
|
-
}
|
|
25
|
-
/** Implements collect unknown extension capabilities for the public runtime surface of this module. */
|
|
26
|
-
export function collectUnknownExtensionCapabilities(capabilities) {
|
|
27
|
-
return capabilities.filter((capability) => !isKnownExtensionCapability(capability));
|
|
28
|
-
}
|
|
29
|
-
/** Implements resolve legacy extension capability alias for the public runtime surface of this module. */
|
|
30
|
-
export function resolveLegacyExtensionCapabilityAlias(capability) {
|
|
31
|
-
const normalized = capability.trim().toLowerCase();
|
|
32
|
-
if (normalized.length === 0) {
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
return EXTENSION_CAPABILITY_LEGACY_ALIASES[normalized] ?? null;
|
|
36
|
-
}
|
|
37
|
-
/** Implements normalize manifest capabilities for the public runtime surface of this module. */
|
|
38
|
-
export function normalizeManifestCapabilities(rawCapabilities) {
|
|
39
|
-
const normalizedCapabilities = normalizeNames([...rawCapabilities].map((value) => value.toLowerCase()));
|
|
40
|
-
const remappedCapabilities = [];
|
|
41
|
-
const legacyAliases = [];
|
|
42
|
-
for (const capability of normalizedCapabilities) {
|
|
43
|
-
const legacyAliasTarget = resolveLegacyExtensionCapabilityAlias(capability);
|
|
44
|
-
if (legacyAliasTarget) {
|
|
45
|
-
remappedCapabilities.push(legacyAliasTarget);
|
|
46
|
-
legacyAliases.push({
|
|
47
|
-
alias: capability,
|
|
48
|
-
target: legacyAliasTarget,
|
|
49
|
-
});
|
|
50
|
-
continue;
|
|
51
|
-
}
|
|
52
|
-
remappedCapabilities.push(capability);
|
|
53
|
-
}
|
|
54
|
-
const dedupedLegacyAliases = [
|
|
55
|
-
...new Map(legacyAliases.map((entry) => [`${entry.alias}>${entry.target}`, entry])).values(),
|
|
56
|
-
].sort((left, right) => left.alias.localeCompare(right.alias));
|
|
57
|
-
return {
|
|
58
|
-
capabilities: normalizeNames(remappedCapabilities),
|
|
59
|
-
legacy_aliases: dedupedLegacyAliases,
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
|
-
/** Implements suggest known extension capability for the public runtime surface of this module. */
|
|
63
|
-
export function suggestKnownExtensionCapability(capability) {
|
|
64
|
-
const normalized = capability.trim().toLowerCase();
|
|
65
|
-
if (normalized.length === 0) {
|
|
66
|
-
return null;
|
|
67
|
-
}
|
|
68
|
-
const legacyAlias = resolveLegacyExtensionCapabilityAlias(normalized);
|
|
69
|
-
if (legacyAlias) {
|
|
70
|
-
return legacyAlias;
|
|
71
|
-
}
|
|
72
|
-
const maxDistance = Math.max(1, Math.floor(normalized.length * 0.34));
|
|
73
|
-
let bestMatch = null;
|
|
74
|
-
let bestDistance = Number.POSITIVE_INFINITY;
|
|
75
|
-
for (const candidate of KNOWN_EXTENSION_CAPABILITIES) {
|
|
76
|
-
const distance = levenshteinDistanceWithinLimit(normalized, candidate, maxDistance);
|
|
77
|
-
if (distance !== null && distance < bestDistance) {
|
|
78
|
-
bestDistance = distance;
|
|
79
|
-
bestMatch = candidate;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
return bestMatch;
|
|
83
|
-
}
|
|
84
|
-
/** Implements format unknown extension capability warning for the public runtime surface of this module. */
|
|
85
|
-
export function formatUnknownExtensionCapabilityWarning(layer, name, capability) {
|
|
86
|
-
const allowed = KNOWN_EXTENSION_CAPABILITIES.join(",");
|
|
87
|
-
const suggested = suggestKnownExtensionCapability(capability) ?? "none";
|
|
88
|
-
return `extension_capability_unknown:${layer}:${name}:${capability}:allowed=${allowed}:suggested=${suggested}`;
|
|
89
|
-
}
|
|
90
|
-
/** Implements format legacy extension capability alias warning for the public runtime surface of this module. */
|
|
91
|
-
export function formatLegacyExtensionCapabilityAliasWarning(layer, name, aliases) {
|
|
92
|
-
const aliasesToken = aliases
|
|
93
|
-
.map((entry) => `${entry.alias}>${entry.target}`)
|
|
94
|
-
.join(",");
|
|
95
|
-
return `extension_capability_legacy_alias:${layer}:${name}:aliases=${aliasesToken}`;
|
|
96
|
-
}
|
|
97
|
-
/** Implements parse unknown extension capability warning for the public runtime surface of this module. */
|
|
98
|
-
export function parseUnknownExtensionCapabilityWarning(warning) {
|
|
99
|
-
const match = /^extension_capability_unknown:(global|project):([^:]+):([^:]+):allowed=([^:]+):suggested=([^:]+)$/.exec(warning.trim());
|
|
100
|
-
if (!match) {
|
|
101
|
-
return null;
|
|
102
|
-
}
|
|
103
|
-
const [, layerRaw, name, capability, allowedRaw, suggestedRaw] = match;
|
|
104
|
-
const layer = layerRaw;
|
|
105
|
-
const allowed_capabilities = allowedRaw
|
|
106
|
-
.split(",")
|
|
107
|
-
.map((value) => value.trim())
|
|
108
|
-
.filter((value) => value.length > 0);
|
|
109
|
-
const legacyAlias = resolveLegacyExtensionCapabilityAlias(capability);
|
|
110
|
-
const suggestedFromWarning = suggestedRaw === "none" ? undefined : suggestedRaw;
|
|
111
|
-
const suggested_capability = suggestedFromWarning ?? legacyAlias ?? undefined;
|
|
112
|
-
const suggestion_source = suggested_capability
|
|
113
|
-
? legacyAlias === suggested_capability
|
|
114
|
-
? "legacy_alias"
|
|
115
|
-
: "nearest_match"
|
|
116
|
-
: undefined;
|
|
117
|
-
return {
|
|
118
|
-
layer,
|
|
119
|
-
name,
|
|
120
|
-
capability,
|
|
121
|
-
allowed_capabilities,
|
|
122
|
-
capability_contract_version: EXTENSION_CAPABILITY_CONTRACT_VERSION,
|
|
123
|
-
suggested_capability,
|
|
124
|
-
suggestion_source,
|
|
125
|
-
legacy_alias_target: legacyAlias ?? undefined,
|
|
126
|
-
};
|
|
127
|
-
}
|
|
128
|
-
/** Implements parse legacy extension capability alias warning for the public runtime surface of this module. */
|
|
129
|
-
export function parseLegacyExtensionCapabilityAliasWarning(warning) {
|
|
130
|
-
const match = /^extension_capability_legacy_alias:(global|project):([^:]+):aliases=(.+)$/.exec(warning.trim());
|
|
131
|
-
if (!match) {
|
|
132
|
-
return [];
|
|
133
|
-
}
|
|
134
|
-
const [, layerRaw, name, aliasesRaw] = match;
|
|
135
|
-
const layer = layerRaw;
|
|
136
|
-
const allowedCapabilities = [...KNOWN_EXTENSION_CAPABILITIES];
|
|
137
|
-
const parsed = [];
|
|
138
|
-
for (const token of aliasesRaw.split(",")) {
|
|
139
|
-
const [rawAlias, rawTarget] = token.split(">");
|
|
140
|
-
const alias = rawAlias?.trim();
|
|
141
|
-
const target = rawTarget?.trim().toLowerCase();
|
|
142
|
-
if (!alias || !target || !isKnownExtensionCapability(target)) {
|
|
143
|
-
continue;
|
|
144
|
-
}
|
|
145
|
-
parsed.push({
|
|
146
|
-
layer,
|
|
147
|
-
name,
|
|
148
|
-
capability: alias,
|
|
149
|
-
allowed_capabilities: allowedCapabilities,
|
|
150
|
-
capability_contract_version: EXTENSION_CAPABILITY_CONTRACT_VERSION,
|
|
151
|
-
suggested_capability: target,
|
|
152
|
-
suggestion_source: "legacy_alias",
|
|
153
|
-
legacy_alias_target: target,
|
|
154
|
-
});
|
|
155
|
-
}
|
|
156
|
-
return parsed;
|
|
157
|
-
}
|
|
1
|
+
!(function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="1ddb0411-5fdd-56af-a524-0f6830c288a5")}catch(e2){}})();import{KNOWN_EXTENSION_CAPABILITIES,EXTENSION_CAPABILITY_CONTRACT_VERSION,EXTENSION_CAPABILITY_LEGACY_ALIASES}from"./extension-types.js";import{levenshteinDistanceWithinLimit}from"../shared/levenshtein.js";function normalizeNames(values){return[...new Set(values.map(value=>value.trim()).filter(value=>value.length>0))].sort((a,b)=>a.localeCompare(b))}function isKnownExtensionCapability(value){return KNOWN_EXTENSION_CAPABILITIES.includes(value)}function normalizeKnownExtensionCapability(value){const normalized=value.trim().toLowerCase();return isKnownExtensionCapability(normalized)?normalized:null}function collectUnknownExtensionCapabilities(capabilities){return capabilities.filter(capability=>!isKnownExtensionCapability(capability))}function resolveLegacyExtensionCapabilityAlias(capability){const normalized=capability.trim().toLowerCase();if(normalized.length===0){return null}return EXTENSION_CAPABILITY_LEGACY_ALIASES[normalized]??null}function normalizeManifestCapabilities(rawCapabilities){const normalizedCapabilities=normalizeNames([...rawCapabilities].map(value=>value.toLowerCase()));const remappedCapabilities=[];const legacyAliases=[];for(const capability of normalizedCapabilities){const legacyAliasTarget=resolveLegacyExtensionCapabilityAlias(capability);if(legacyAliasTarget){remappedCapabilities.push(legacyAliasTarget);legacyAliases.push({alias:capability,target:legacyAliasTarget});continue}remappedCapabilities.push(capability)}const dedupedLegacyAliases=[...new Map(legacyAliases.map(entry=>[`${entry.alias}>${entry.target}`,entry])).values()].sort((left,right)=>left.alias.localeCompare(right.alias));return{capabilities:normalizeNames(remappedCapabilities),legacy_aliases:dedupedLegacyAliases}}function suggestKnownExtensionCapability(capability){const normalized=capability.trim().toLowerCase();if(normalized.length===0){return null}const legacyAlias=resolveLegacyExtensionCapabilityAlias(normalized);if(legacyAlias){return legacyAlias}const maxDistance=Math.max(1,Math.floor(normalized.length*.34));let bestMatch=null;let bestDistance=Number.POSITIVE_INFINITY;for(const candidate of KNOWN_EXTENSION_CAPABILITIES){const distance=levenshteinDistanceWithinLimit(normalized,candidate,maxDistance);if(distance!==null&&distance<bestDistance){bestDistance=distance;bestMatch=candidate}}return bestMatch}function formatUnknownExtensionCapabilityWarning(layer,name,capability){const allowed=KNOWN_EXTENSION_CAPABILITIES.join(",");const suggested=suggestKnownExtensionCapability(capability)??"none";return`extension_capability_unknown:${layer}:${name}:${capability}:allowed=${allowed}:suggested=${suggested}`}function formatLegacyExtensionCapabilityAliasWarning(layer,name,aliases){const aliasesToken=aliases.map(entry=>`${entry.alias}>${entry.target}`).join(",");return`extension_capability_legacy_alias:${layer}:${name}:aliases=${aliasesToken}`}function parseUnknownExtensionCapabilityWarning(warning){const match=/^extension_capability_unknown:(global|project):([^:]+):([^:]+):allowed=([^:]+):suggested=([^:]+)$/.exec(warning.trim());if(!match){return null}const[,layerRaw,name,capability,allowedRaw,suggestedRaw]=match;const layer=layerRaw;const allowed_capabilities=allowedRaw.split(",").map(value=>value.trim()).filter(value=>value.length>0);const legacyAlias=resolveLegacyExtensionCapabilityAlias(capability);const suggestedFromWarning=suggestedRaw==="none"?void 0:suggestedRaw;const suggested_capability=suggestedFromWarning??legacyAlias??void 0;const suggestion_source=suggested_capability?legacyAlias===suggested_capability?"legacy_alias":"nearest_match":void 0;return{layer,name,capability,allowed_capabilities,capability_contract_version:EXTENSION_CAPABILITY_CONTRACT_VERSION,suggested_capability,suggestion_source,legacy_alias_target:legacyAlias??void 0}}function parseLegacyExtensionCapabilityAliasWarning(warning){const match=/^extension_capability_legacy_alias:(global|project):([^:]+):aliases=(.+)$/.exec(warning.trim());if(!match){return[]}const[,layerRaw,name,aliasesRaw]=match;const layer=layerRaw;const allowedCapabilities=[...KNOWN_EXTENSION_CAPABILITIES];const parsed=[];for(const token of aliasesRaw.split(",")){const[rawAlias,rawTarget]=token.split(">");const alias=rawAlias?.trim();const target=rawTarget?.trim().toLowerCase();if(!alias||!target||!isKnownExtensionCapability(target)){continue}parsed.push({layer,name,capability:alias,allowed_capabilities:allowedCapabilities,capability_contract_version:EXTENSION_CAPABILITY_CONTRACT_VERSION,suggested_capability:target,suggestion_source:"legacy_alias",legacy_alias_target:target})}return parsed}export{collectUnknownExtensionCapabilities,formatLegacyExtensionCapabilityAliasWarning,formatUnknownExtensionCapabilityWarning,isKnownExtensionCapability,normalizeKnownExtensionCapability,normalizeManifestCapabilities,normalizeNames,parseLegacyExtensionCapabilityAliasWarning,parseUnknownExtensionCapabilityWarning,resolveLegacyExtensionCapabilityAlias,suggestKnownExtensionCapability};
|
|
158
2
|
//# sourceMappingURL=extension-capability-aliases.js.map
|
|
159
|
-
//# debugId=3225f4de-aa48-55b7-a704-d93ccb3ee0f4
|