openplanr 3.1.1 → 3.3.0
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/CHANGELOG.md +69 -0
- package/dist/cli/commands/groups/delivery.d.ts.map +1 -1
- package/dist/cli/commands/groups/delivery.js +2 -0
- package/dist/cli/commands/groups/delivery.js.map +1 -1
- package/dist/cli/commands/planning-artifacts.d.ts.map +1 -1
- package/dist/cli/commands/planning-artifacts.js +22 -12
- package/dist/cli/commands/planning-artifacts.js.map +1 -1
- package/dist/cli/commands/ship.d.ts +3 -0
- package/dist/cli/commands/ship.d.ts.map +1 -0
- package/dist/cli/commands/ship.js +65 -0
- package/dist/cli/commands/ship.js.map +1 -0
- package/dist/cli/commands/spec.d.ts +2 -1
- package/dist/cli/commands/spec.d.ts.map +1 -1
- package/dist/cli/commands/spec.js +45 -5
- package/dist/cli/commands/spec.js.map +1 -1
- package/dist/dashboard/.vite/manifest.json +1 -1
- package/dist/dashboard/assets/index-B_96uzCl.js +572 -0
- package/dist/dashboard/assets/index-B_96uzCl.js.map +1 -0
- package/dist/dashboard/dashboard-manifest.json +10 -10
- package/dist/dashboard/index.html +1 -1
- package/dist/models/schema.d.ts +39 -23
- package/dist/models/schema.d.ts.map +1 -1
- package/dist/models/schema.js +19 -12
- package/dist/models/schema.js.map +1 -1
- package/dist/models/types.d.ts +6 -0
- package/dist/models/types.d.ts.map +1 -1
- package/dist/services/claude-plugin-service.d.ts +5 -0
- package/dist/services/claude-plugin-service.d.ts.map +1 -1
- package/dist/services/claude-plugin-service.js +18 -2
- package/dist/services/claude-plugin-service.js.map +1 -1
- package/dist/services/codex-plugin-service.d.ts.map +1 -1
- package/dist/services/codex-plugin-service.js +11 -3
- package/dist/services/codex-plugin-service.js.map +1 -1
- package/dist/services/id-service.d.ts +1 -5
- package/dist/services/id-service.d.ts.map +1 -1
- package/dist/services/id-service.js +1 -34
- package/dist/services/id-service.js.map +1 -1
- package/dist/services/runtime-manager/codex-discovery.d.ts +1 -3
- package/dist/services/runtime-manager/codex-discovery.d.ts.map +1 -1
- package/dist/services/runtime-manager/codex-discovery.js +3 -16
- package/dist/services/runtime-manager/codex-discovery.js.map +1 -1
- package/dist/services/runtime-manager/doctor.d.ts +25 -0
- package/dist/services/runtime-manager/doctor.d.ts.map +1 -1
- package/dist/services/runtime-manager/doctor.js +480 -0
- package/dist/services/runtime-manager/doctor.js.map +1 -1
- package/dist/services/runtime-manager/errors.d.ts +12 -0
- package/dist/services/runtime-manager/errors.d.ts.map +1 -0
- package/dist/services/runtime-manager/errors.js +14 -0
- package/dist/services/runtime-manager/errors.js.map +1 -0
- package/dist/services/runtime-manager/global-state.d.ts +7 -0
- package/dist/services/runtime-manager/global-state.d.ts.map +1 -1
- package/dist/services/runtime-manager/global-state.js +116 -0
- package/dist/services/runtime-manager/global-state.js.map +1 -1
- package/dist/services/runtime-manager/host-version-probe.d.ts +8 -0
- package/dist/services/runtime-manager/host-version-probe.d.ts.map +1 -0
- package/dist/services/runtime-manager/host-version-probe.js +14 -0
- package/dist/services/runtime-manager/host-version-probe.js.map +1 -0
- package/dist/services/runtime-manager/install-plan.d.ts +25 -0
- package/dist/services/runtime-manager/install-plan.d.ts.map +1 -1
- package/dist/services/runtime-manager/install-plan.js +305 -0
- package/dist/services/runtime-manager/install-plan.js.map +1 -1
- package/dist/services/runtime-manager/inventory.d.ts +6 -0
- package/dist/services/runtime-manager/inventory.d.ts.map +1 -1
- package/dist/services/runtime-manager/inventory.js +16 -1
- package/dist/services/runtime-manager/inventory.js.map +1 -1
- package/dist/services/runtime-manager/legacy-adapters.d.ts +9 -0
- package/dist/services/runtime-manager/legacy-adapters.d.ts.map +1 -0
- package/dist/services/runtime-manager/legacy-adapters.js +187 -0
- package/dist/services/runtime-manager/legacy-adapters.js.map +1 -0
- package/dist/services/runtime-manager/paths.d.ts +18 -0
- package/dist/services/runtime-manager/paths.d.ts.map +1 -0
- package/dist/services/runtime-manager/paths.js +83 -0
- package/dist/services/runtime-manager/paths.js.map +1 -0
- package/dist/services/runtime-manager/runtime-package.d.ts +21 -0
- package/dist/services/runtime-manager/runtime-package.d.ts.map +1 -1
- package/dist/services/runtime-manager/runtime-package.js +77 -0
- package/dist/services/runtime-manager/runtime-package.js.map +1 -1
- package/dist/services/runtime-manager/storage.d.ts +47 -0
- package/dist/services/runtime-manager/storage.d.ts.map +1 -0
- package/dist/services/runtime-manager/storage.js +604 -0
- package/dist/services/runtime-manager/storage.js.map +1 -0
- package/dist/services/runtime-manager-service.d.ts +7 -17
- package/dist/services/runtime-manager-service.d.ts.map +1 -1
- package/dist/services/runtime-manager-service.js +32 -1695
- package/dist/services/runtime-manager-service.js.map +1 -1
- package/dist/services/ship-checks/changes.d.ts +24 -0
- package/dist/services/ship-checks/changes.d.ts.map +1 -0
- package/dist/services/ship-checks/changes.js +135 -0
- package/dist/services/ship-checks/changes.js.map +1 -0
- package/dist/services/ship-checks/contract.d.ts +93 -0
- package/dist/services/ship-checks/contract.d.ts.map +1 -0
- package/dist/services/ship-checks/contract.js +7 -0
- package/dist/services/ship-checks/contract.js.map +1 -0
- package/dist/services/ship-checks/coverage.d.ts +4 -0
- package/dist/services/ship-checks/coverage.d.ts.map +1 -0
- package/dist/services/ship-checks/coverage.js +113 -0
- package/dist/services/ship-checks/coverage.js.map +1 -0
- package/dist/services/ship-checks/discover.d.ts +10 -0
- package/dist/services/ship-checks/discover.d.ts.map +1 -0
- package/dist/services/ship-checks/discover.js +253 -0
- package/dist/services/ship-checks/discover.js.map +1 -0
- package/dist/services/ship-checks/glob.d.ts +5 -0
- package/dist/services/ship-checks/glob.d.ts.map +1 -0
- package/dist/services/ship-checks/glob.js +39 -0
- package/dist/services/ship-checks/glob.js.map +1 -0
- package/dist/services/ship-checks/hooks.d.ts +7 -0
- package/dist/services/ship-checks/hooks.d.ts.map +1 -0
- package/dist/services/ship-checks/hooks.js +65 -0
- package/dist/services/ship-checks/hooks.js.map +1 -0
- package/dist/services/ship-checks/packages.d.ts +29 -0
- package/dist/services/ship-checks/packages.d.ts.map +1 -0
- package/dist/services/ship-checks/packages.js +197 -0
- package/dist/services/ship-checks/packages.js.map +1 -0
- package/dist/services/ship-checks/related-tests.d.ts +13 -0
- package/dist/services/ship-checks/related-tests.d.ts.map +1 -0
- package/dist/services/ship-checks/related-tests.js +73 -0
- package/dist/services/ship-checks/related-tests.js.map +1 -0
- package/dist/services/ship-checks/scope.d.ts +8 -0
- package/dist/services/ship-checks/scope.d.ts.map +1 -0
- package/dist/services/ship-checks/scope.js +66 -0
- package/dist/services/ship-checks/scope.js.map +1 -0
- package/dist/services/ship-checks/task-requirements.d.ts +14 -0
- package/dist/services/ship-checks/task-requirements.d.ts.map +1 -0
- package/dist/services/ship-checks/task-requirements.js +145 -0
- package/dist/services/ship-checks/task-requirements.js.map +1 -0
- package/dist/services/ship-checks/workflows.d.ts +21 -0
- package/dist/services/ship-checks/workflows.d.ts.map +1 -0
- package/dist/services/ship-checks/workflows.js +208 -0
- package/dist/services/ship-checks/workflows.js.map +1 -0
- package/dist/services/spec-service.d.ts +18 -0
- package/dist/services/spec-service.d.ts.map +1 -1
- package/dist/services/spec-service.js +174 -9
- package/dist/services/spec-service.js.map +1 -1
- package/dist/services/template-service.d.ts +2 -0
- package/dist/services/template-service.d.ts.map +1 -1
- package/dist/services/template-service.js +4 -0
- package/dist/services/template-service.js.map +1 -1
- package/dist/templates/spec/spec-shaped.md.hbs +1 -1
- package/dist/templates/spec/spec.md.hbs +2 -2
- package/dist/utils/slugify.d.ts +1 -8
- package/dist/utils/slugify.d.ts.map +1 -1
- package/dist/utils/slugify.js +1 -25
- package/dist/utils/slugify.js.map +1 -1
- package/docs/CLI.md +96 -2
- package/lib/backlog-item.d.mts +49 -0
- package/lib/backlog-item.mjs +339 -0
- package/lib/host-packages/adapter-registry.json +5 -5
- package/lib/host-packages/capability-map.json +3 -3
- package/lib/host-packages/claude/.claude-plugin/marketplace.json +2 -2
- package/lib/host-packages/claude/openplanr/.claude-plugin/plugin.json +1 -1
- package/lib/host-packages/claude/openplanr/.openplanr-content.json +134 -94
- package/lib/host-packages/claude/openplanr/CONNECTORS.md +4 -6
- package/lib/host-packages/claude/openplanr/README.md +1 -1
- package/lib/host-packages/claude/openplanr/agents/planr-qa.md +5 -3
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-artifact-shell.mjs +1 -1
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-chunked-workspace-client.mjs +1 -1
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-document.mjs +471 -80
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-handoff.mjs +2 -2
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-resource-pack.mjs +1 -1
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-review.mjs +45 -4
- package/lib/host-packages/{cursor/openplanr/runtime/design/scripts/design-runtime-support-e34c388a8e59.mjs → claude/openplanr/runtime/design/scripts/design-runtime-support-25485dbf1cb2.mjs} +1 -1
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-share.mjs +8 -5
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-shared-artifact-support-dependencies-design-support-protocol-contracts-3d9b1a86.mjs +138 -12
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-shared-artifact-support-protocol-contracts-ea2cd15e.mjs +1 -1
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/{design-shared-protocol-contracts-31a760fc.mjs → design-shared-protocol-contracts-b5f28f94.mjs} +413 -45
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-upload-spool.mjs +1 -1
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/design.mjs +482 -79
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/notices/THIRD_PARTY_NOTICES.txt +32 -32
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/02-artifact-review-ui.js +23 -23
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/03-protocol-contracts.js +322 -45
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/06-artifact-review-ui.js +12 -12
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/08-artifact-review-ui.js +47 -14
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources.json +11 -10
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/package.json +4 -3
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.css +16 -11
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/01-module-runtime.js +7 -11
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/02-react.js +165 -276
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/03-react-dom-client-fiber-foundations.js +494 -967
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/04-react-dom-client-reconciliation-hooks.js +346 -678
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/05-react-dom-client-render-phases.js +382 -810
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/06-react-dom-client-commit-effects.js +406 -730
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/07-react-dom-client-work-loop-scheduling.js +259 -522
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/08-react-dom-client-dom-events-properties-hydration.js +585 -937
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/09-react-dom-client-public-roots.js +119 -244
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/10-react.js +7 -17
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/11-artifact-review-ui.js +3 -4
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/12-protocol-contracts.js +285 -0
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-design-review-experience.js +2773 -0
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/14-studio-shell.js +134 -0
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/15-canvas-engine.js +2207 -0
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/16-design-review-experience.js +16 -0
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/17-studio-shell.js +8 -0
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/18-interface-primitives.js +3883 -0
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/19-interface-primitives.js +966 -0
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/{16-studio-shell.js → 20-studio-shell.js} +122 -227
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/21-design-studio.js +1597 -0
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources.json +101 -47
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/protocol/package.json +6 -2
- package/lib/host-packages/{openai/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.9.0 → claude/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.22.0}/design-document.schema.json +207 -7
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.22.0/design-review-bundle.schema.json +822 -0
- package/lib/host-packages/claude/openplanr/runtime/plan/scripts/design-protocol-contracts.mjs +324 -45
- package/lib/host-packages/claude/openplanr/runtime/plan/scripts/design.mjs +73 -12
- package/lib/host-packages/claude/openplanr/runtime/plan/scripts/runtime/packages/protocol/package.json +6 -2
- package/lib/host-packages/claude/openplanr/skills/connect/references/connectors.md +4 -6
- package/lib/host-packages/claude/openplanr/skills/design/SKILL.md +12 -0
- package/lib/host-packages/claude/openplanr/skills/design/references/craft.md +14 -3
- package/lib/host-packages/claude/openplanr/skills/design/references/design-system.md +48 -1
- package/lib/host-packages/claude/openplanr/skills/design/references/discovery.md +18 -4
- package/lib/host-packages/claude/openplanr/skills/design/references/generation.md +133 -2
- package/lib/host-packages/claude/openplanr/skills/design/references/hosted-canvas.md +62 -0
- package/lib/host-packages/claude/openplanr/skills/design/references/review.md +46 -1
- package/lib/host-packages/claude/openplanr/skills/design/references/utilities.md +17 -1
- package/lib/host-packages/claude/openplanr/skills/design/schemas/design-document.schema.json +207 -7
- package/lib/host-packages/claude/openplanr/skills/design-loop/references/craft.md +14 -3
- package/lib/host-packages/claude/openplanr/skills/design-loop/references/design-system.md +48 -1
- package/lib/host-packages/claude/openplanr/skills/design-loop/references/discovery.md +18 -4
- package/lib/host-packages/claude/openplanr/skills/design-loop/references/generation.md +133 -2
- package/lib/host-packages/claude/openplanr/skills/design-loop/references/review.md +46 -1
- package/lib/host-packages/claude/openplanr/skills/design-loop/references/utilities.md +17 -1
- package/lib/host-packages/claude/openplanr/skills/design-loop/schemas/design-document.schema.json +207 -7
- package/lib/host-packages/claude/openplanr/skills/design-review/references/craft.md +14 -3
- package/lib/host-packages/claude/openplanr/skills/design-review/references/design-system.md +48 -1
- package/lib/host-packages/claude/openplanr/skills/design-review/references/discovery.md +18 -4
- package/lib/host-packages/claude/openplanr/skills/design-review/references/generation.md +133 -2
- package/lib/host-packages/claude/openplanr/skills/design-review/references/review.md +46 -1
- package/lib/host-packages/claude/openplanr/skills/design-review/references/utilities.md +17 -1
- package/lib/host-packages/claude/openplanr/skills/design-review/schemas/design-document.schema.json +207 -7
- package/lib/host-packages/claude/openplanr/skills/investigate/SKILL.md +11 -2
- package/lib/host-packages/claude/openplanr/skills/investigate/references/findings.md +92 -0
- package/lib/host-packages/claude/openplanr/skills/investigate/scripts/backlog-item.mjs +339 -0
- package/lib/host-packages/claude/openplanr/skills/plan/SKILL.md +24 -11
- package/lib/host-packages/claude/openplanr/skills/plan/schemas/design-document.schema.json +207 -7
- package/lib/host-packages/claude/openplanr/skills/share/references/connectors.md +4 -6
- package/lib/host-packages/claude/openplanr/skills/ship/SKILL.md +46 -14
- package/lib/host-packages/claude/openplanr/skills/ship/references/findings.md +92 -0
- package/lib/host-packages/claude/openplanr/skills/ship/references/result-contract.md +3 -1
- package/lib/host-packages/claude/openplanr/skills/ship/scripts/backlog-item.mjs +339 -0
- package/lib/host-packages/claude/openplanr/skills/spec/SKILL.md +6 -0
- package/lib/host-packages/claude/openplanr/skills/spec/references/specification-contract.md +3 -1
- package/lib/host-packages/claude/openplanr/skills/sprint/references/connectors.md +4 -6
- package/lib/host-packages/claude/openplanr/skills/status/references/connectors.md +4 -6
- package/lib/host-packages/claude/openplanr/skills/sync/references/connectors.md +4 -6
- package/lib/host-packages/cursor/openplanr/.openplanr-content.json +132 -92
- package/lib/host-packages/cursor/openplanr/CONNECTORS.md +4 -6
- package/lib/host-packages/cursor/openplanr/manifest.json +1 -1
- package/lib/host-packages/cursor/openplanr/rules/planr-connect/references/connectors.md +4 -6
- package/lib/host-packages/cursor/openplanr/rules/planr-design/references/craft.md +14 -3
- package/lib/host-packages/cursor/openplanr/rules/planr-design/references/design-system.md +48 -1
- package/lib/host-packages/cursor/openplanr/rules/planr-design/references/discovery.md +18 -4
- package/lib/host-packages/cursor/openplanr/rules/planr-design/references/generation.md +133 -2
- package/lib/host-packages/cursor/openplanr/rules/planr-design/references/hosted-canvas.md +62 -0
- package/lib/host-packages/cursor/openplanr/rules/planr-design/references/review.md +46 -1
- package/lib/host-packages/cursor/openplanr/rules/planr-design/references/utilities.md +17 -1
- package/lib/host-packages/cursor/openplanr/rules/planr-design/schemas/design-document.schema.json +207 -7
- package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/craft.md +14 -3
- package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/design-system.md +48 -1
- package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/discovery.md +18 -4
- package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/generation.md +133 -2
- package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/review.md +46 -1
- package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/utilities.md +17 -1
- package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/schemas/design-document.schema.json +207 -7
- package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/craft.md +14 -3
- package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/design-system.md +48 -1
- package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/discovery.md +18 -4
- package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/generation.md +133 -2
- package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/review.md +46 -1
- package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/utilities.md +17 -1
- package/lib/host-packages/cursor/openplanr/rules/planr-design-review/schemas/design-document.schema.json +207 -7
- package/lib/host-packages/cursor/openplanr/rules/planr-design.mdc +12 -0
- package/lib/host-packages/cursor/openplanr/rules/planr-investigate/references/findings.md +92 -0
- package/lib/host-packages/cursor/openplanr/rules/planr-investigate/scripts/backlog-item.mjs +339 -0
- package/lib/host-packages/cursor/openplanr/rules/planr-investigate.mdc +11 -2
- package/lib/host-packages/cursor/openplanr/rules/planr-plan/schemas/design-document.schema.json +207 -7
- package/lib/host-packages/cursor/openplanr/rules/planr-plan.mdc +24 -11
- package/lib/host-packages/cursor/openplanr/rules/planr-share/references/connectors.md +4 -6
- package/lib/host-packages/cursor/openplanr/rules/planr-ship/references/findings.md +92 -0
- package/lib/host-packages/cursor/openplanr/rules/planr-ship/references/result-contract.md +3 -1
- package/lib/host-packages/cursor/openplanr/rules/planr-ship/scripts/backlog-item.mjs +339 -0
- package/lib/host-packages/cursor/openplanr/rules/planr-ship.mdc +46 -14
- package/lib/host-packages/cursor/openplanr/rules/planr-spec/references/specification-contract.md +3 -1
- package/lib/host-packages/cursor/openplanr/rules/planr-spec.mdc +6 -0
- package/lib/host-packages/cursor/openplanr/rules/planr-sprint/references/connectors.md +4 -6
- package/lib/host-packages/cursor/openplanr/rules/planr-status/references/connectors.md +4 -6
- package/lib/host-packages/cursor/openplanr/rules/planr-sync/references/connectors.md +4 -6
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-artifact-shell.mjs +1 -1
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-chunked-workspace-client.mjs +1 -1
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-document.mjs +471 -80
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-handoff.mjs +2 -2
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-resource-pack.mjs +1 -1
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-review.mjs +45 -4
- package/lib/host-packages/{openai/openplanr/runtime/design/scripts/design-runtime-support-e34c388a8e59.mjs → cursor/openplanr/runtime/design/scripts/design-runtime-support-25485dbf1cb2.mjs} +1 -1
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-share.mjs +8 -5
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-shared-artifact-support-dependencies-design-support-protocol-contracts-3d9b1a86.mjs +138 -12
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-shared-artifact-support-protocol-contracts-ea2cd15e.mjs +1 -1
- package/lib/host-packages/{openai/openplanr/runtime/design/scripts/design-shared-protocol-contracts-31a760fc.mjs → cursor/openplanr/runtime/design/scripts/design-shared-protocol-contracts-b5f28f94.mjs} +413 -45
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-upload-spool.mjs +1 -1
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design.mjs +482 -79
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/notices/THIRD_PARTY_NOTICES.txt +32 -32
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/02-artifact-review-ui.js +23 -23
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/03-protocol-contracts.js +322 -45
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/06-artifact-review-ui.js +12 -12
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/08-artifact-review-ui.js +47 -14
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources.json +11 -10
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/package.json +4 -3
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.css +16 -11
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/01-module-runtime.js +7 -11
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/02-react.js +165 -276
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/03-react-dom-client-fiber-foundations.js +494 -967
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/04-react-dom-client-reconciliation-hooks.js +346 -678
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/05-react-dom-client-render-phases.js +382 -810
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/06-react-dom-client-commit-effects.js +406 -730
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/07-react-dom-client-work-loop-scheduling.js +259 -522
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/08-react-dom-client-dom-events-properties-hydration.js +585 -937
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/09-react-dom-client-public-roots.js +119 -244
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/10-react.js +7 -17
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/11-artifact-review-ui.js +3 -4
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/12-protocol-contracts.js +285 -0
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-design-review-experience.js +2773 -0
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/14-studio-shell.js +134 -0
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/15-canvas-engine.js +2207 -0
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/16-design-review-experience.js +16 -0
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/17-studio-shell.js +8 -0
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/18-interface-primitives.js +3883 -0
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/19-interface-primitives.js +966 -0
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/{16-studio-shell.js → 20-studio-shell.js} +122 -227
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/21-design-studio.js +1597 -0
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources.json +101 -47
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/protocol/package.json +6 -2
- package/lib/host-packages/{claude/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.9.0 → cursor/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.22.0}/design-document.schema.json +207 -7
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.22.0/design-review-bundle.schema.json +822 -0
- package/lib/host-packages/cursor/openplanr/runtime/plan/scripts/design-protocol-contracts.mjs +324 -45
- package/lib/host-packages/cursor/openplanr/runtime/plan/scripts/design.mjs +73 -12
- package/lib/host-packages/cursor/openplanr/runtime/plan/scripts/runtime/packages/protocol/package.json +6 -2
- package/lib/host-packages/openai/.claude-plugin/marketplace.json +2 -2
- package/lib/host-packages/openai/openplanr/.codex-plugin/plugin.json +1 -1
- package/lib/host-packages/openai/openplanr/.openplanr-content.json +139 -99
- package/lib/host-packages/openai/openplanr/CONNECTORS.md +4 -6
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-artifact-shell.mjs +1 -1
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-chunked-workspace-client.mjs +1 -1
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-document.mjs +471 -80
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-handoff.mjs +2 -2
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-resource-pack.mjs +1 -1
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-review.mjs +45 -4
- package/lib/host-packages/{claude/openplanr/runtime/design/scripts/design-runtime-support-e34c388a8e59.mjs → openai/openplanr/runtime/design/scripts/design-runtime-support-25485dbf1cb2.mjs} +1 -1
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-share.mjs +8 -5
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-shared-artifact-support-dependencies-design-support-protocol-contracts-3d9b1a86.mjs +138 -12
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-shared-artifact-support-protocol-contracts-ea2cd15e.mjs +1 -1
- package/lib/host-packages/{cursor/openplanr/runtime/design/scripts/design-shared-protocol-contracts-31a760fc.mjs → openai/openplanr/runtime/design/scripts/design-shared-protocol-contracts-b5f28f94.mjs} +413 -45
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-upload-spool.mjs +1 -1
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/design.mjs +482 -79
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/notices/THIRD_PARTY_NOTICES.txt +32 -32
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/02-artifact-review-ui.js +23 -23
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/03-protocol-contracts.js +322 -45
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/06-artifact-review-ui.js +12 -12
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/08-artifact-review-ui.js +47 -14
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources.json +11 -10
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/package.json +4 -3
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.css +16 -11
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/01-module-runtime.js +7 -11
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/02-react.js +165 -276
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/03-react-dom-client-fiber-foundations.js +494 -967
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/04-react-dom-client-reconciliation-hooks.js +346 -678
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/05-react-dom-client-render-phases.js +382 -810
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/06-react-dom-client-commit-effects.js +406 -730
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/07-react-dom-client-work-loop-scheduling.js +259 -522
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/08-react-dom-client-dom-events-properties-hydration.js +585 -937
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/09-react-dom-client-public-roots.js +119 -244
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/10-react.js +7 -17
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/11-artifact-review-ui.js +3 -4
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/12-protocol-contracts.js +285 -0
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-design-review-experience.js +2773 -0
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/14-studio-shell.js +134 -0
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/15-canvas-engine.js +2207 -0
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/16-design-review-experience.js +16 -0
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/17-studio-shell.js +8 -0
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/18-interface-primitives.js +3883 -0
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/19-interface-primitives.js +966 -0
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/{16-studio-shell.js → 20-studio-shell.js} +122 -227
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/21-design-studio.js +1597 -0
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources.json +101 -47
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/protocol/package.json +6 -2
- package/lib/host-packages/{cursor/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.9.0 → openai/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.22.0}/design-document.schema.json +207 -7
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.22.0/design-review-bundle.schema.json +822 -0
- package/lib/host-packages/openai/openplanr/runtime/plan/scripts/design-protocol-contracts.mjs +324 -45
- package/lib/host-packages/openai/openplanr/runtime/plan/scripts/design.mjs +73 -12
- package/lib/host-packages/openai/openplanr/runtime/plan/scripts/runtime/packages/protocol/package.json +6 -2
- package/lib/host-packages/openai/openplanr/skills/connect/references/connectors.md +4 -6
- package/lib/host-packages/openai/openplanr/skills/design/SKILL.md +12 -0
- package/lib/host-packages/openai/openplanr/skills/design/openplanr.skill.json +11 -0
- package/lib/host-packages/openai/openplanr/skills/design/references/craft.md +14 -3
- package/lib/host-packages/openai/openplanr/skills/design/references/design-system.md +48 -1
- package/lib/host-packages/openai/openplanr/skills/design/references/discovery.md +18 -4
- package/lib/host-packages/openai/openplanr/skills/design/references/generation.md +133 -2
- package/lib/host-packages/openai/openplanr/skills/design/references/hosted-canvas.md +62 -0
- package/lib/host-packages/openai/openplanr/skills/design/references/review.md +46 -1
- package/lib/host-packages/openai/openplanr/skills/design/references/utilities.md +17 -1
- package/lib/host-packages/openai/openplanr/skills/design/schemas/design-document.schema.json +207 -7
- package/lib/host-packages/openai/openplanr/skills/design-loop/references/craft.md +14 -3
- package/lib/host-packages/openai/openplanr/skills/design-loop/references/design-system.md +48 -1
- package/lib/host-packages/openai/openplanr/skills/design-loop/references/discovery.md +18 -4
- package/lib/host-packages/openai/openplanr/skills/design-loop/references/generation.md +133 -2
- package/lib/host-packages/openai/openplanr/skills/design-loop/references/review.md +46 -1
- package/lib/host-packages/openai/openplanr/skills/design-loop/references/utilities.md +17 -1
- package/lib/host-packages/openai/openplanr/skills/design-loop/schemas/design-document.schema.json +207 -7
- package/lib/host-packages/openai/openplanr/skills/design-review/references/craft.md +14 -3
- package/lib/host-packages/openai/openplanr/skills/design-review/references/design-system.md +48 -1
- package/lib/host-packages/openai/openplanr/skills/design-review/references/discovery.md +18 -4
- package/lib/host-packages/openai/openplanr/skills/design-review/references/generation.md +133 -2
- package/lib/host-packages/openai/openplanr/skills/design-review/references/review.md +46 -1
- package/lib/host-packages/openai/openplanr/skills/design-review/references/utilities.md +17 -1
- package/lib/host-packages/openai/openplanr/skills/design-review/schemas/design-document.schema.json +207 -7
- package/lib/host-packages/openai/openplanr/skills/investigate/SKILL.md +11 -2
- package/lib/host-packages/openai/openplanr/skills/investigate/agents/openai.yaml +1 -1
- package/lib/host-packages/openai/openplanr/skills/investigate/openplanr.skill.json +23 -1
- package/lib/host-packages/openai/openplanr/skills/investigate/references/findings.md +92 -0
- package/lib/host-packages/openai/openplanr/skills/investigate/scripts/backlog-item.mjs +339 -0
- package/lib/host-packages/openai/openplanr/skills/plan/SKILL.md +24 -11
- package/lib/host-packages/openai/openplanr/skills/plan/openplanr.skill.json +1 -1
- package/lib/host-packages/openai/openplanr/skills/plan/schemas/design-document.schema.json +207 -7
- package/lib/host-packages/openai/openplanr/skills/share/references/connectors.md +4 -6
- package/lib/host-packages/openai/openplanr/skills/ship/SKILL.md +46 -14
- package/lib/host-packages/openai/openplanr/skills/ship/agents/openai.yaml +1 -1
- package/lib/host-packages/openai/openplanr/skills/ship/openplanr.skill.json +23 -1
- package/lib/host-packages/openai/openplanr/skills/ship/references/findings.md +92 -0
- package/lib/host-packages/openai/openplanr/skills/ship/references/result-contract.md +3 -1
- package/lib/host-packages/openai/openplanr/skills/ship/scripts/backlog-item.mjs +339 -0
- package/lib/host-packages/openai/openplanr/skills/spec/SKILL.md +6 -0
- package/lib/host-packages/openai/openplanr/skills/spec/openplanr.skill.json +1 -1
- package/lib/host-packages/openai/openplanr/skills/spec/references/specification-contract.md +3 -1
- package/lib/host-packages/openai/openplanr/skills/sprint/references/connectors.md +4 -6
- package/lib/host-packages/openai/openplanr/skills/status/references/connectors.md +4 -6
- package/lib/host-packages/openai/openplanr/skills/sync/references/connectors.md +4 -6
- package/lib/json-schema.mjs +4 -0
- package/package.json +13 -13
- package/dist/dashboard/assets/index-G7ygVDGg.js +0 -572
- package/dist/dashboard/assets/index-G7ygVDGg.js.map +0 -1
- package/dist/templates/backlog/backlog-item.md.hbs +0 -40
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/12-design-review-experience.js +0 -3589
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-studio-shell.js +0 -184
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/14-interface-primitives.js +0 -5229
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/15-interface-primitives.js +0 -1733
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/17-design-studio.js +0 -1844
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/12-design-review-experience.js +0 -3589
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-studio-shell.js +0 -184
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/14-interface-primitives.js +0 -5229
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/15-interface-primitives.js +0 -1733
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/17-design-studio.js +0 -1844
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/12-design-review-experience.js +0 -3589
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-studio-shell.js +0 -184
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/14-interface-primitives.js +0 -5229
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/15-interface-primitives.js +0 -1733
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/17-design-studio.js +0 -1844
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
import { readFile } from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { RuntimeManagerError } from './errors.js';
|
|
4
|
+
import { canonicalProjectPath, codexProfileKey, effectiveCodexHome, pathIsWithin, planrCustodyAnchor, projectKey, runtimeRoot, statePath, userHome, } from './paths.js';
|
|
5
|
+
import { assertApprovedTargetCustody, assertRequestedProjectBinding, assertRuntimeStateValue, isUserOwnedFile, } from './storage.js';
|
|
1
6
|
/** Owns the exact one-time v1 project-state to v2 global user-bundle transition. */
|
|
2
7
|
export function migrateLegacyGlobalRuntimeState(state, dependencies) {
|
|
3
8
|
state.userBundles ??= {};
|
|
@@ -56,4 +61,115 @@ export function migrateLegacyGlobalRuntimeState(state, dependencies) {
|
|
|
56
61
|
state.schemaVersion = '2.0.0';
|
|
57
62
|
return state;
|
|
58
63
|
}
|
|
64
|
+
export function projectUsesUserRuntime(project, runtime, nativeHome = effectiveCodexHome()) {
|
|
65
|
+
if (runtime === 'codex' &&
|
|
66
|
+
(project.codexHome ?? path.resolve(userHome(), '.codex')) !== nativeHome)
|
|
67
|
+
return false;
|
|
68
|
+
if (!project.runtimes.includes(runtime))
|
|
69
|
+
return false;
|
|
70
|
+
const recorded = project.runtimeScopes?.[runtime];
|
|
71
|
+
if (recorded)
|
|
72
|
+
return recorded === 'user' || recorded === 'both';
|
|
73
|
+
return project.ownedFiles.some((file) => file.runtime === runtime && isUserOwnedFile(file, runtime));
|
|
74
|
+
}
|
|
75
|
+
function inferLegacyCodexPrefix(project, nativeHome = effectiveCodexHome()) {
|
|
76
|
+
if (!projectUsesUserRuntime(project, 'codex', nativeHome))
|
|
77
|
+
return undefined;
|
|
78
|
+
if (project.commandPrefix)
|
|
79
|
+
return project.commandPrefix;
|
|
80
|
+
const roots = project.ownedFiles
|
|
81
|
+
.filter((file) => file.runtime === 'codex' && pathIsWithin(file.target, path.join(nativeHome, 'skills')))
|
|
82
|
+
.map((file) => path.relative(path.join(nativeHome, 'skills'), file.target).split(path.sep)[0])
|
|
83
|
+
.filter(Boolean);
|
|
84
|
+
if (roots.length === 0)
|
|
85
|
+
return 'namespaced';
|
|
86
|
+
const modes = new Set(roots.map((name) => (name.startsWith('planr-') ? 'namespaced' : 'bare')));
|
|
87
|
+
if (modes.size !== 1) {
|
|
88
|
+
throw new RuntimeManagerError('E_RUNTIME_PREFIX_CONFLICT', `Legacy Codex ownership for ${project.projectDir} mixes bare and namespaced skill targets.`, 'Choose one global Codex prefix, move the other skill tree aside, and rerun setup.');
|
|
89
|
+
}
|
|
90
|
+
return [...modes][0];
|
|
91
|
+
}
|
|
92
|
+
export function inferRuntimeScope(files, runtime, nativeHome = effectiveCodexHome()) {
|
|
93
|
+
const owned = files.filter((file) => file.runtime === runtime);
|
|
94
|
+
const hasUser = owned.some((file) => isUserOwnedFile(file, runtime, nativeHome));
|
|
95
|
+
const hasProject = owned.some((file) => !isUserOwnedFile(file, runtime, nativeHome));
|
|
96
|
+
return hasUser && hasProject ? 'both' : hasUser ? 'user' : 'project';
|
|
97
|
+
}
|
|
98
|
+
const defaultCodexBundles = new WeakMap();
|
|
99
|
+
function selectCodexProfile(state) {
|
|
100
|
+
const key = codexProfileKey();
|
|
101
|
+
if (!key)
|
|
102
|
+
return state;
|
|
103
|
+
defaultCodexBundles.set(state, state.userBundles?.codex);
|
|
104
|
+
state.userBundles ??= {};
|
|
105
|
+
const bundle = state.codexProfiles?.[key]?.bundle;
|
|
106
|
+
if (bundle)
|
|
107
|
+
state.userBundles.codex = bundle;
|
|
108
|
+
else
|
|
109
|
+
delete state.userBundles.codex;
|
|
110
|
+
return state;
|
|
111
|
+
}
|
|
112
|
+
/** One shared ownership file and setup lock serialize all native profiles. */
|
|
113
|
+
export function runtimeStateBytes(state) {
|
|
114
|
+
const key = codexProfileKey();
|
|
115
|
+
if (!key)
|
|
116
|
+
return Buffer.from(`${JSON.stringify(state, null, 2)}\n`);
|
|
117
|
+
if (!defaultCodexBundles.has(state))
|
|
118
|
+
throw new RuntimeManagerError('E_RUNTIME_STATE_INVALID', 'Codex profile state lost its default bundle.');
|
|
119
|
+
const stored = {
|
|
120
|
+
...state,
|
|
121
|
+
userBundles: { ...state.userBundles },
|
|
122
|
+
codexProfiles: { ...state.codexProfiles },
|
|
123
|
+
};
|
|
124
|
+
stored.codexProfiles[key] = {
|
|
125
|
+
home: effectiveCodexHome(),
|
|
126
|
+
...(state.userBundles?.codex ? { bundle: state.userBundles.codex } : {}),
|
|
127
|
+
};
|
|
128
|
+
const defaultBundle = defaultCodexBundles.get(state);
|
|
129
|
+
if (defaultBundle)
|
|
130
|
+
stored.userBundles.codex = defaultBundle;
|
|
131
|
+
else
|
|
132
|
+
delete stored.userBundles.codex;
|
|
133
|
+
return Buffer.from(`${JSON.stringify(stored, null, 2)}\n`);
|
|
134
|
+
}
|
|
135
|
+
export function decodeStoredRuntimeState(value, allowLegacyProjectKeys = false) {
|
|
136
|
+
const defaultHome = path.resolve(userHome(), '.codex');
|
|
137
|
+
const state = assertRuntimeStateValue(value, 'E_RUNTIME_STATE_INVALID', allowLegacyProjectKeys, defaultHome);
|
|
138
|
+
migrateLegacyGlobalRuntimeState(state, {
|
|
139
|
+
inferRuntimeScope: (files, runtime) => inferRuntimeScope(files, runtime, defaultHome),
|
|
140
|
+
inferLegacyCodexPrefix: (project) => inferLegacyCodexPrefix(project, defaultHome),
|
|
141
|
+
isUserOwnedFile: (file, runtime) => isUserOwnedFile(file, runtime, defaultHome),
|
|
142
|
+
projectKey,
|
|
143
|
+
conflict: (code, message, recovery) => {
|
|
144
|
+
throw new RuntimeManagerError(code, message, recovery);
|
|
145
|
+
},
|
|
146
|
+
});
|
|
147
|
+
return assertRuntimeStateValue(selectCodexProfile(state));
|
|
148
|
+
}
|
|
149
|
+
export async function loadState() {
|
|
150
|
+
assertApprovedTargetCustody(statePath(), runtimeRoot(), planrCustodyAnchor(), 'E_RUNTIME_STATE_INVALID', 'Runtime ownership state');
|
|
151
|
+
try {
|
|
152
|
+
return decodeStoredRuntimeState(JSON.parse(await readFile(statePath(), 'utf8')), true);
|
|
153
|
+
}
|
|
154
|
+
catch (error) {
|
|
155
|
+
if (error.code === 'ENOENT') {
|
|
156
|
+
return selectCodexProfile({ schemaVersion: '2.0.0', projects: {}, userBundles: {} });
|
|
157
|
+
}
|
|
158
|
+
if (error instanceof RuntimeManagerError)
|
|
159
|
+
throw error;
|
|
160
|
+
throw new RuntimeManagerError('E_RUNTIME_STATE_INVALID', `Runtime ownership state is invalid: ${error instanceof Error ? error.message : String(error)}`, 'Restore the recorded state backup before running setup again.');
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
function homeProjectRecord(state) {
|
|
164
|
+
return state.projects[projectKey(userHome())];
|
|
165
|
+
}
|
|
166
|
+
export async function previewHomeProjectCleanup() {
|
|
167
|
+
const state = await loadState();
|
|
168
|
+
const key = projectKey(userHome());
|
|
169
|
+
const project = homeProjectRecord(state);
|
|
170
|
+
if (!project || canonicalProjectPath(project.projectDir) !== canonicalProjectPath(userHome()))
|
|
171
|
+
return [];
|
|
172
|
+
assertRequestedProjectBinding(userHome(), key, project);
|
|
173
|
+
return project.ownedFiles.filter((file) => file.scope === 'project').map((file) => file.target);
|
|
174
|
+
}
|
|
59
175
|
//# sourceMappingURL=global-state.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-state.js","sourceRoot":"","sources":["../../../src/services/runtime-manager/global-state.ts"],"names":[],"mappings":"AA+
|
|
1
|
+
{"version":3,"file":"global-state.js","sourceRoot":"","sources":["../../../src/services/runtime-manager/global-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,UAAU,EACV,WAAW,EACX,SAAS,EACT,QAAQ,GACT,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,2BAA2B,EAC3B,6BAA6B,EAC7B,uBAAuB,EACvB,eAAe,GAChB,MAAM,cAAc,CAAC;AA+DtB,oFAAoF;AACpF,MAAM,UAAU,+BAA+B,CAC7C,KAAmB,EACnB,YAQC;IAED,KAAK,CAAC,WAAW,KAAK,EAAE,CAAC;IACzB,IAAI,KAAK,CAAC,aAAa,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAElD,KAAK,MAAM,OAAO,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,CAAU,EAAE,CAAC;QAClE,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;aAC3C,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;aACvD,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QACxE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAqB,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAiB,CAAC;QAC1C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,aAAa,GACjB,OAAO,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC;gBAChC,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC9D,OAAO,CAAC,aAAa,KAAK,EAAE,CAAC;YAC7B,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC;YAC/C,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;gBACxB,MAAM,MAAM,GAAG,YAAY,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;gBAC5D,IAAI,MAAM;oBAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACnC,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAC1C,CAAC,SAAS,EAAE,EAAE,CACZ,SAAS,CAAC,OAAO,KAAK,OAAO,IAAI,YAAY,CAAC,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,CACpF,EAAE,CAAC;gBACF,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACxC,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC5C,OAAO,YAAY,CAAC,QAAQ,CAC1B,0BAA0B,EAC1B,8CAA8C,IAAI,CAAC,MAAM,GAAG,EAC5D,sFAAsF,CACvF,CAAC;gBACJ,CAAC;gBACD,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACrD,CAAC;YACD,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAC5C,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,IAAI,YAAY,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CACrF,CAAC;YACF,IAAI,OAAO,KAAK,OAAO;gBAAE,OAAO,OAAO,CAAC,aAAa,CAAC;QACxD,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,YAAY,CAAC,QAAQ,CAC1B,2BAA2B,EAC3B,sEAAsE,EACtE,yFAAyF,CAC1F,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACnB,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG;gBAC3B,OAAO;gBACP,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;gBAC9D,eAAe,EAAE,QAAQ;gBACzB,aAAa,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY;gBACtF,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;aAChC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAA6B,EAAE,CAAC;IAC7C,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpD,MAAM,GAAG,GAAG,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACxD,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACjB,OAAO,YAAY,CAAC,QAAQ,CAC1B,0BAA0B,EAC1B,kFAAkF,CACnF,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;IACzB,CAAC;IACD,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC;IACzB,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC;IAC9B,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,OAAyC,EACzC,OAAkB,EAClB,UAAU,GAAG,kBAAkB,EAAE;IAEjC,IACE,OAAO,KAAK,OAAO;QACnB,CAAC,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC,KAAK,UAAU;QAExE,OAAO,KAAK,CAAC;IACf,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,CAAC;IAClD,IAAI,QAAQ;QAAE,OAAO,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,MAAM,CAAC;IAChE,OAAO,OAAO,CAAC,UAAU,CAAC,IAAI,CAC5B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CACrE,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,OAAyC,EACzC,UAAU,GAAG,kBAAkB,EAAE;IAEjC,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC;QAAE,OAAO,SAAS,CAAC;IAC5E,IAAI,OAAO,CAAC,aAAa;QAAE,OAAO,OAAO,CAAC,aAAa,CAAC;IACxD,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU;SAC7B,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,OAAO,KAAK,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CACzF;SACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SAC7F,MAAM,CAAC,OAAO,CAAC,CAAC;IACnB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,YAAY,CAAC;IAC5C,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAChG,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,mBAAmB,CAC3B,2BAA2B,EAC3B,8BAA8B,OAAO,CAAC,UAAU,2CAA2C,EAC3F,mFAAmF,CACpF,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAkB,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,KAAkB,EAClB,OAAkB,EAClB,UAAU,GAAG,kBAAkB,EAAE;IAEjC,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IACjF,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IACrF,OAAO,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACvE,CAAC;AAED,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAGpC,CAAC;AAEJ,SAAS,kBAAkB,CAAC,KAAmB;IAC7C,MAAM,GAAG,GAAG,eAAe,EAAE,CAAC;IAC9B,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IACvB,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IACzD,KAAK,CAAC,WAAW,KAAK,EAAE,CAAC;IACzB,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAClD,IAAI,MAAM;QAAE,KAAK,CAAC,WAAW,CAAC,KAAK,GAAG,MAAM,CAAC;;QACxC,OAAO,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC;IACpC,OAAO,KAAK,CAAC;AACf,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,iBAAiB,CAAC,KAAmB;IACnD,MAAM,GAAG,GAAG,eAAe,EAAE,CAAC;IAC9B,IAAI,CAAC,GAAG;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACpE,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;QACjC,MAAM,IAAI,mBAAmB,CAC3B,yBAAyB,EACzB,8CAA8C,CAC/C,CAAC;IACJ,MAAM,MAAM,GAAG;QACb,GAAG,KAAK;QACR,WAAW,EAAE,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE;QACrC,aAAa,EAAE,EAAE,GAAG,KAAK,CAAC,aAAa,EAAE;KAC1C,CAAC;IACF,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG;QAC1B,IAAI,EAAE,kBAAkB,EAAE;QAC1B,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzE,CAAC;IACF,MAAM,aAAa,GAAG,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrD,IAAI,aAAa;QAAE,MAAM,CAAC,WAAW,CAAC,KAAK,GAAG,aAAa,CAAC;;QACvD,OAAO,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC;IACrC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,KAAc,EACd,sBAAsB,GAAG,KAAK;IAE9B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,uBAAuB,CACnC,KAAK,EACL,yBAAyB,EACzB,sBAAsB,EACtB,WAAW,CACZ,CAAC;IACF,+BAA+B,CAAC,KAAK,EAAE;QACrC,iBAAiB,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC;QACrF,sBAAsB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,sBAAsB,CAAC,OAAO,EAAE,WAAW,CAAC;QACjF,eAAe,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC;QAC/E,UAAU;QACV,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE;YACpC,MAAM,IAAI,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QACzD,CAAC;KACF,CAAC,CAAC;IACH,OAAO,uBAAuB,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,2BAA2B,CACzB,SAAS,EAAE,EACX,WAAW,EAAE,EACb,kBAAkB,EAAE,EACpB,yBAAyB,EACzB,yBAAyB,CAC1B,CAAC;IACF,IAAI,CAAC;QACH,OAAO,wBAAwB,CAC7B,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,SAAS,EAAE,EAAE,MAAM,CAAC,CAAY,EAC1D,IAAI,CACL,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvD,OAAO,kBAAkB,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,KAAK,YAAY,mBAAmB;YAAE,MAAM,KAAK,CAAC;QACtD,MAAM,IAAI,mBAAmB,CAC3B,yBAAyB,EACzB,uCAAuC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAC/F,+DAA+D,CAChE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAmB;IAC5C,OAAO,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB;IAC7C,MAAM,KAAK,GAAG,MAAM,SAAS,EAAE,CAAC;IAChC,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,CAAC,OAAO,IAAI,oBAAoB,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,oBAAoB,CAAC,QAAQ,EAAE,CAAC;QAC3F,OAAO,EAAE,CAAC;IACZ,6BAA6B,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IACxD,OAAO,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAClG,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** Spawn bounds for a host runner call: only a `--version` probe is time-limited. */
|
|
2
|
+
export declare function hostRunnerBounds(args: readonly string[]): {
|
|
3
|
+
timeout: number;
|
|
4
|
+
killSignal: 'SIGKILL';
|
|
5
|
+
} | undefined;
|
|
6
|
+
export declare function isProbeTimeout(error: Error | undefined): boolean;
|
|
7
|
+
export declare function probeTimeoutMessage(command: string, product: string): string;
|
|
8
|
+
//# sourceMappingURL=host-version-probe.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host-version-probe.d.ts","sourceRoot":"","sources":["../../../src/services/runtime-manager/host-version-probe.ts"],"names":[],"mappings":"AAEA,qFAAqF;AACrF,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,SAAS,MAAM,EAAE,GACtB;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,SAAS,CAAA;CAAE,GAAG,SAAS,CAIxD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,GAAG,OAAO,CAEhE;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAE5E"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
const HOST_VERSION_TIMEOUT_MS = 5_000;
|
|
2
|
+
/** Spawn bounds for a host runner call: only a `--version` probe is time-limited. */
|
|
3
|
+
export function hostRunnerBounds(args) {
|
|
4
|
+
return args.length === 1 && args[0] === '--version'
|
|
5
|
+
? { timeout: HOST_VERSION_TIMEOUT_MS, killSignal: 'SIGKILL' }
|
|
6
|
+
: undefined;
|
|
7
|
+
}
|
|
8
|
+
export function isProbeTimeout(error) {
|
|
9
|
+
return Boolean(error && 'code' in error && error.code === 'ETIMEDOUT');
|
|
10
|
+
}
|
|
11
|
+
export function probeTimeoutMessage(command, product) {
|
|
12
|
+
return `${command} --version did not finish within ${HOST_VERSION_TIMEOUT_MS}ms; ${product} is present but its version is unknown. Plugin state was not read.`;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=host-version-probe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host-version-probe.js","sourceRoot":"","sources":["../../../src/services/runtime-manager/host-version-probe.ts"],"names":[],"mappings":"AAAA,MAAM,uBAAuB,GAAG,KAAK,CAAC;AAEtC,qFAAqF;AACrF,MAAM,UAAU,gBAAgB,CAC9B,IAAuB;IAEvB,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW;QACjD,CAAC,CAAC,EAAE,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,SAAS,EAAE;QAC7D,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAwB;IACrD,OAAO,OAAO,CAAC,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,OAAe;IAClE,OAAO,GAAG,OAAO,oCAAoC,uBAAuB,OAAO,OAAO,oEAAoE,CAAC;AACjK,CAAC"}
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
+
import type { RuntimePackageRestore, SetupOptions } from '../runtime-manager-service.js';
|
|
2
|
+
import type { InstallScope, RuntimeState, SkillInstallMode } from './global-state.js';
|
|
1
3
|
import type { RuntimeId } from './inventory.js';
|
|
4
|
+
import { type AdapterRegistryEntry } from './inventory.js';
|
|
5
|
+
type FileAction = PlannedFileAction;
|
|
2
6
|
export type PlannedFileAction = Readonly<{
|
|
3
7
|
runtime: RuntimeId | 'core';
|
|
4
8
|
scope: 'user' | 'project';
|
|
@@ -6,6 +10,7 @@ export type PlannedFileAction = Readonly<{
|
|
|
6
10
|
content: Buffer;
|
|
7
11
|
kind: 'file' | 'managed-block';
|
|
8
12
|
marker?: string;
|
|
13
|
+
custody?: 'professional-skill' | 'runtime-package';
|
|
9
14
|
description: string;
|
|
10
15
|
}>;
|
|
11
16
|
export type PlannedOwnedFile = Readonly<{
|
|
@@ -33,5 +38,25 @@ export declare function planCodexUserBundleTransition(input: {
|
|
|
33
38
|
}): {
|
|
34
39
|
retired: PlannedOwnedFile[];
|
|
35
40
|
};
|
|
41
|
+
export declare function validateRuntimeLockContract(value: unknown): import("../../../lib/json-schema.mjs").JsonSchemaDiagnostic[];
|
|
42
|
+
export declare function actionBytes(action: FileAction): Buffer;
|
|
43
|
+
export declare function normalizeInstallScope(adapter: AdapterRegistryEntry, requested: InstallScope): InstallScope;
|
|
44
|
+
export declare function skillInstallMode(runtime: RuntimeId, options: SetupOptions, scope?: 'project'): SkillInstallMode;
|
|
45
|
+
export declare function skillInstallModes(runtimes: RuntimeId[], options: SetupOptions, scope?: 'project'): Partial<Record<RuntimeId, SkillInstallMode>>;
|
|
46
|
+
export interface RuntimeLockAdapter {
|
|
47
|
+
runtime: RuntimeId;
|
|
48
|
+
version: string;
|
|
49
|
+
capabilityLevel: string;
|
|
50
|
+
installScope: InstallScope;
|
|
51
|
+
}
|
|
52
|
+
interface RuntimeLockDigestInput {
|
|
53
|
+
protocolVersion?: string;
|
|
54
|
+
pipelineVersion?: string;
|
|
55
|
+
adapters?: readonly RuntimeLockAdapter[];
|
|
56
|
+
skillModes?: Partial<Record<RuntimeId, SkillInstallMode>>;
|
|
57
|
+
}
|
|
58
|
+
export declare function runtimeLockManifestDigest(input: RuntimeLockDigestInput): string;
|
|
59
|
+
export declare function buildActions(options: SetupOptions, runtimes: RuntimeId[], runtimeScopes: Partial<Record<RuntimeId, InstallScope>>, retainedProject?: RuntimeState['projects'][string], packageRestores?: RuntimePackageRestore[]): FileAction[];
|
|
60
|
+
export declare function inventoryRegularFiles(root: string): string[];
|
|
36
61
|
export {};
|
|
37
62
|
//# sourceMappingURL=install-plan.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-plan.d.ts","sourceRoot":"","sources":["../../../src/services/runtime-manager/install-plan.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"install-plan.d.ts","sourceRoot":"","sources":["../../../src/services/runtime-manager/install-plan.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,13 @@
|
|
|
1
|
+
import { createHash } from 'node:crypto';
|
|
1
2
|
import { existsSync, lstatSync, readdirSync, readFileSync } from 'node:fs';
|
|
2
3
|
import path from 'node:path';
|
|
4
|
+
import { validateJson } from '../../../lib/json-schema.mjs';
|
|
5
|
+
import { CLI_COMMAND, PLANNING_FOLDER } from '../../utils/constants.js';
|
|
6
|
+
import { spliceManagedBlock } from '../../utils/splice-managed-block.js';
|
|
7
|
+
import { RuntimeManagerError } from './errors.js';
|
|
8
|
+
import { readRegistry } from './inventory.js';
|
|
9
|
+
import { codexRuntimeRoot, codexSkillsRoot, runtimeRoot } from './paths.js';
|
|
10
|
+
import { bundledHostRoot, bundledRuntimePackage, bundledSkillAssets, caseVariantOf, describePackageDrift, retainedRuntimePackageDrift, } from './runtime-package.js';
|
|
3
11
|
const KNOWN_STALE_SKILL_FINGERPRINTS = new Map([
|
|
4
12
|
[
|
|
5
13
|
`${path.sep}planr-operate${path.sep}SKILL.md`,
|
|
@@ -88,4 +96,301 @@ export function planCodexUserBundleTransition(input) {
|
|
|
88
96
|
}
|
|
89
97
|
return { retired: input.existing.filter((file) => !desired.has(file.target)) };
|
|
90
98
|
}
|
|
99
|
+
function hash(value) {
|
|
100
|
+
return createHash('sha256').update(value).digest('hex');
|
|
101
|
+
}
|
|
102
|
+
const runtimeLockSchema = JSON.parse(readFileSync(new URL('../../../lib/runtime-lock.schema.json', import.meta.url), 'utf8'));
|
|
103
|
+
// Setup and global help remain available when the optional pipeline package is absent.
|
|
104
|
+
export function validateRuntimeLockContract(value) {
|
|
105
|
+
return validateJson(value, runtimeLockSchema);
|
|
106
|
+
}
|
|
107
|
+
export function actionBytes(action) {
|
|
108
|
+
if (action.kind === 'file')
|
|
109
|
+
return action.content;
|
|
110
|
+
const existing = existsSync(action.target) ? readFileSync(action.target, 'utf8') : '';
|
|
111
|
+
const spliced = spliceManagedBlock(existing, action.marker ?? 'runtime', action.content.toString('utf8'));
|
|
112
|
+
return Buffer.from(spliced.endsWith('\n') ? spliced : `${spliced}\n`);
|
|
113
|
+
}
|
|
114
|
+
function runtimeMarker(runtime, pipelineVersion) {
|
|
115
|
+
return Buffer.from(`${JSON.stringify({ schemaVersion: '1.0.0', runtime, pipelineVersion, managedBy: 'openplanr' }, null, 2)}\n`);
|
|
116
|
+
}
|
|
117
|
+
export function normalizeInstallScope(adapter, requested) {
|
|
118
|
+
const supportsUser = adapter.installScopes.includes('user');
|
|
119
|
+
const supportsProject = adapter.installScopes.includes('project');
|
|
120
|
+
if (requested === 'user' && !supportsUser) {
|
|
121
|
+
throw new RuntimeManagerError('E_SCOPE_UNSUPPORTED', `OpenPlanr's ${adapter.id} integration currently requires project scope.`, `Change into your project, then run \`${CLI_COMMAND} setup --runtime ${adapter.id} --scope project\`. To initialize a new project there, run \`${CLI_COMMAND} init\` first.`);
|
|
122
|
+
}
|
|
123
|
+
if (requested === 'project' && !supportsProject) {
|
|
124
|
+
throw new RuntimeManagerError('E_SCOPE_UNSUPPORTED', `${adapter.id} does not support project-scope installation.`);
|
|
125
|
+
}
|
|
126
|
+
if (requested !== 'both')
|
|
127
|
+
return requested;
|
|
128
|
+
if (supportsUser && supportsProject)
|
|
129
|
+
return 'both';
|
|
130
|
+
return supportsProject ? 'project' : 'user';
|
|
131
|
+
}
|
|
132
|
+
export function skillInstallMode(runtime, options, scope) {
|
|
133
|
+
if (runtime === 'claude-code')
|
|
134
|
+
return 'unified-plugin';
|
|
135
|
+
if (runtime === 'cursor')
|
|
136
|
+
return 'project-rule';
|
|
137
|
+
if (scope === 'project' && options.projectSkillMode)
|
|
138
|
+
return options.projectSkillMode;
|
|
139
|
+
return options.skillMode ?? (options.scope === 'project' ? 'project-rule' : 'direct');
|
|
140
|
+
}
|
|
141
|
+
export function skillInstallModes(runtimes, options, scope) {
|
|
142
|
+
return Object.fromEntries(runtimes.map((runtime) => [runtime, skillInstallMode(runtime, options, scope)]));
|
|
143
|
+
}
|
|
144
|
+
export function runtimeLockManifestDigest(input) {
|
|
145
|
+
return `sha256:${hash(JSON.stringify({
|
|
146
|
+
protocol: input.protocolVersion,
|
|
147
|
+
pipelineVersion: input.pipelineVersion,
|
|
148
|
+
adapters: input.adapters,
|
|
149
|
+
...(input.skillModes ? { skillModes: input.skillModes } : {}),
|
|
150
|
+
}))}`;
|
|
151
|
+
}
|
|
152
|
+
function buildRuntimeLock(options, runtimes, runtimeScopes, registry, pipelineVersion) {
|
|
153
|
+
const adapters = runtimes.map((runtime) => {
|
|
154
|
+
const adapter = registry.adapters.find((entry) => entry.id === runtime);
|
|
155
|
+
if (!adapter)
|
|
156
|
+
throw new RuntimeManagerError('E_ADAPTER_MISSING', `Adapter ${runtime} is absent.`);
|
|
157
|
+
const installScope = normalizeInstallScope(adapter, runtimeScopes[runtime] ?? options.scope ?? 'user');
|
|
158
|
+
return {
|
|
159
|
+
runtime,
|
|
160
|
+
version: adapter.version,
|
|
161
|
+
capabilityLevel: adapter.capabilityLevel,
|
|
162
|
+
installScope,
|
|
163
|
+
};
|
|
164
|
+
});
|
|
165
|
+
const skillModes = skillInstallModes(runtimes, options, 'project');
|
|
166
|
+
const components = {
|
|
167
|
+
cli: options.cliVersion,
|
|
168
|
+
pipeline: pipelineVersion,
|
|
169
|
+
skills: readRegistry().pluginVersion,
|
|
170
|
+
};
|
|
171
|
+
const manifestDigest = runtimeLockManifestDigest({
|
|
172
|
+
protocolVersion: registry.protocolVersion,
|
|
173
|
+
pipelineVersion,
|
|
174
|
+
adapters,
|
|
175
|
+
skillModes,
|
|
176
|
+
});
|
|
177
|
+
const lockPath = path.join(options.projectDir, PLANNING_FOLDER, 'runtime-lock.json');
|
|
178
|
+
if (existsSync(lockPath)) {
|
|
179
|
+
try {
|
|
180
|
+
const existing = JSON.parse(readFileSync(lockPath, 'utf8'));
|
|
181
|
+
if (existing.manifestDigest === manifestDigest &&
|
|
182
|
+
existing.protocolVersion === registry.protocolVersion &&
|
|
183
|
+
JSON.stringify(existing.components) === JSON.stringify(components) &&
|
|
184
|
+
JSON.stringify(existing.adapters) === JSON.stringify(adapters) &&
|
|
185
|
+
validateRuntimeLockContract(existing).length === 0) {
|
|
186
|
+
return readFileSync(lockPath);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
catch {
|
|
190
|
+
// Invalid locks are replaced after backup during setup.
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
const lock = {
|
|
194
|
+
schemaVersion: '1.0.0',
|
|
195
|
+
generatedAt: new Date().toISOString(),
|
|
196
|
+
manifestDigest,
|
|
197
|
+
protocolVersion: registry.protocolVersion,
|
|
198
|
+
components,
|
|
199
|
+
adapters,
|
|
200
|
+
skillModes,
|
|
201
|
+
};
|
|
202
|
+
const errors = validateRuntimeLockContract(lock);
|
|
203
|
+
if (errors.length) {
|
|
204
|
+
throw new RuntimeManagerError('E_RUNTIME_LOCK_INVALID', `Generated runtime lock does not match the supported contract: ${errors[0].path} ${errors[0].detail}`, 'Reinstall the OpenPlanr CLI or regenerate its bundled runtime adapters.');
|
|
205
|
+
}
|
|
206
|
+
return Buffer.from(`${JSON.stringify(lock, null, 2)}\n`);
|
|
207
|
+
}
|
|
208
|
+
export function buildActions(options, runtimes, runtimeScopes, retainedProject, packageRestores = []) {
|
|
209
|
+
if (options.minimal)
|
|
210
|
+
return [];
|
|
211
|
+
const { version, registry } = readRegistry();
|
|
212
|
+
if (options.version && options.version !== version) {
|
|
213
|
+
throw new RuntimeManagerError('E_VERSION_UNAVAILABLE', `Installed pipeline ${version} does not match requested ${options.version}.`, `Install an OpenPlanr CLI release that bundles workflow assets ${options.version}, then rerun setup.`);
|
|
214
|
+
}
|
|
215
|
+
const actions = [];
|
|
216
|
+
for (const runtime of runtimes) {
|
|
217
|
+
const adapter = registry.adapters.find((entry) => entry.id === runtime);
|
|
218
|
+
if (!adapter)
|
|
219
|
+
throw new RuntimeManagerError('E_ADAPTER_MISSING', `Adapter ${runtime} is absent.`);
|
|
220
|
+
const scope = normalizeInstallScope(adapter, runtimeScopes[runtime] ?? options.scope ?? 'user');
|
|
221
|
+
const installUser = (scope === 'user' || scope === 'both' || options.userScopeRuntimes?.includes(runtime)) &&
|
|
222
|
+
adapter.installScopes.includes('user');
|
|
223
|
+
const installProject = (scope === 'project' || scope === 'both') && adapter.installScopes.includes('project');
|
|
224
|
+
const userDiscovery = installUser &&
|
|
225
|
+
(runtime === 'claude-code' ||
|
|
226
|
+
(runtime === 'codex' && skillInstallMode(runtime, options) !== 'project-rule'));
|
|
227
|
+
const usesThinEntries = (installProject && !userDiscovery) ||
|
|
228
|
+
(installUser && runtime === 'codex' && skillInstallMode(runtime, options) === 'direct');
|
|
229
|
+
let skillAssets;
|
|
230
|
+
let runtimePackage;
|
|
231
|
+
try {
|
|
232
|
+
runtimePackage = bundledRuntimePackage(runtime);
|
|
233
|
+
skillAssets = bundledSkillAssets(runtime, runtimePackage);
|
|
234
|
+
}
|
|
235
|
+
catch (cause) {
|
|
236
|
+
throw new RuntimeManagerError('E_SKILL_DISTRIBUTION_INVALID', `The generated ${runtime} skill distribution is invalid: ${cause instanceof Error ? cause.message : String(cause)}`, 'Reinstall the OpenPlanr utility CLI or regenerate the host packages.');
|
|
237
|
+
}
|
|
238
|
+
if (usesThinEntries) {
|
|
239
|
+
const drift = retainedRuntimePackageDrift(runtime, runtimePackage);
|
|
240
|
+
if (drift.changed.length > 0 || drift.unexpected.length > 0) {
|
|
241
|
+
if (!options.restoreRuntimePackages) {
|
|
242
|
+
throw new RuntimeManagerError('E_RUNTIME_PACKAGE_CHANGED', `Files in the ${runtime} runtime package ${runtimePackage.version} were changed outside OpenPlanr: ${describePackageDrift(drift)}.`, `Run \`${CLI_COMMAND} doctor --fix\` to restore the package from this CLI; the changed files are backed up first.`);
|
|
243
|
+
}
|
|
244
|
+
// A restore never deletes a name that could open a packaged file.
|
|
245
|
+
const reviewed = runtimePackage.files.map((file) => file.relativePath);
|
|
246
|
+
const caseVariants = drift.unexpected.filter((file) => caseVariantOf(file, reviewed));
|
|
247
|
+
if (caseVariants.length > 0) {
|
|
248
|
+
throw new RuntimeManagerError('E_RUNTIME_PACKAGE_CHANGED', `Files in the ${runtime} runtime package ${runtimePackage.version} differ from packaged files only by letter case: ${caseVariants.join(', ')}.`, `OpenPlanr does not delete them. Remove them by hand, then rerun \`${CLI_COMMAND} doctor --fix\`.`);
|
|
249
|
+
}
|
|
250
|
+
packageRestores.push({
|
|
251
|
+
runtime,
|
|
252
|
+
version: runtimePackage.version,
|
|
253
|
+
root: runtimePackage.root,
|
|
254
|
+
...drift,
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
for (const file of runtimePackage.files) {
|
|
258
|
+
actions.push({
|
|
259
|
+
runtime: 'core',
|
|
260
|
+
scope: 'user',
|
|
261
|
+
target: path.join(runtimePackage.root, file.relativePath),
|
|
262
|
+
content: file.content,
|
|
263
|
+
kind: 'file',
|
|
264
|
+
custody: 'runtime-package',
|
|
265
|
+
description: `Retain exact ${runtime} runtime package ${file.relativePath}`,
|
|
266
|
+
});
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
if (installUser) {
|
|
270
|
+
if (runtime === 'codex') {
|
|
271
|
+
const mode = skillInstallMode(runtime, options);
|
|
272
|
+
if (mode === 'direct') {
|
|
273
|
+
for (const asset of skillAssets) {
|
|
274
|
+
actions.push({
|
|
275
|
+
runtime,
|
|
276
|
+
scope: 'user',
|
|
277
|
+
target: path.join(codexSkillsRoot(), asset.targetName, asset.relativePath),
|
|
278
|
+
content: asset.content,
|
|
279
|
+
kind: 'file',
|
|
280
|
+
description: `Install Codex skill asset ${asset.targetName}/${asset.relativePath}`,
|
|
281
|
+
});
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
if (mode !== 'project-rule') {
|
|
285
|
+
actions.push({
|
|
286
|
+
runtime,
|
|
287
|
+
scope: 'user',
|
|
288
|
+
target: path.join(codexRuntimeRoot(), 'install-modes', 'codex.json'),
|
|
289
|
+
content: Buffer.from(`${JSON.stringify({ schemaVersion: '1.0.0', runtime, mode, sourceVersion: version }, null, 2)}\n`),
|
|
290
|
+
kind: 'file',
|
|
291
|
+
description: `Record Codex ${mode} skill installation mode`,
|
|
292
|
+
});
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
actions.push({
|
|
296
|
+
runtime,
|
|
297
|
+
scope: 'user',
|
|
298
|
+
target: path.join(runtime === 'codex' ? codexRuntimeRoot() : runtimeRoot(), 'adapters', `${runtime}.json`),
|
|
299
|
+
content: runtimeMarker(runtime, version),
|
|
300
|
+
kind: 'file',
|
|
301
|
+
description: `Record ${runtime} adapter installation`,
|
|
302
|
+
});
|
|
303
|
+
}
|
|
304
|
+
if (installProject) {
|
|
305
|
+
if (userDiscovery) {
|
|
306
|
+
actions.push({
|
|
307
|
+
runtime,
|
|
308
|
+
scope: 'project',
|
|
309
|
+
target: path.join(options.projectDir, PLANNING_FOLDER, 'runtime-policy', `${runtime}.json`),
|
|
310
|
+
content: Buffer.from(`${JSON.stringify({ schemaVersion: '1.0.0', runtime, discovery: 'user', mode: skillInstallMode(runtime, options), packageDigest: runtimePackage.digest, packageVersion: runtimePackage.version }, null, 2)}\n`),
|
|
311
|
+
kind: 'file',
|
|
312
|
+
custody: 'professional-skill',
|
|
313
|
+
description: `Bind project policy to the existing ${runtime} user discovery`,
|
|
314
|
+
});
|
|
315
|
+
continue;
|
|
316
|
+
}
|
|
317
|
+
if (runtime === 'codex') {
|
|
318
|
+
for (const asset of skillAssets) {
|
|
319
|
+
actions.push({
|
|
320
|
+
runtime,
|
|
321
|
+
scope: 'project',
|
|
322
|
+
target: path.join(options.projectDir, '.agents', 'skills', asset.targetName, asset.relativePath),
|
|
323
|
+
content: asset.content,
|
|
324
|
+
kind: 'file',
|
|
325
|
+
custody: 'professional-skill',
|
|
326
|
+
description: `Install project Codex skill asset ${asset.targetName}/${asset.relativePath}`,
|
|
327
|
+
});
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
else if (runtime === 'cursor') {
|
|
331
|
+
for (const asset of skillAssets) {
|
|
332
|
+
actions.push({
|
|
333
|
+
runtime,
|
|
334
|
+
scope: 'project',
|
|
335
|
+
target: path.join(options.projectDir, '.cursor', 'rules', 'openplanr', asset.relativePath),
|
|
336
|
+
content: asset.content,
|
|
337
|
+
kind: 'file',
|
|
338
|
+
custody: 'professional-skill',
|
|
339
|
+
description: `Install Cursor rule asset ${asset.relativePath}`,
|
|
340
|
+
});
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
else {
|
|
344
|
+
for (const asset of skillAssets) {
|
|
345
|
+
actions.push({
|
|
346
|
+
runtime,
|
|
347
|
+
scope: 'project',
|
|
348
|
+
target: path.join(options.projectDir, '.claude', 'skills', asset.targetName, asset.relativePath),
|
|
349
|
+
content: asset.content,
|
|
350
|
+
kind: 'file',
|
|
351
|
+
custody: 'professional-skill',
|
|
352
|
+
description: `Install project Claude skill asset ${asset.targetName}/${asset.relativePath}`,
|
|
353
|
+
});
|
|
354
|
+
}
|
|
355
|
+
const agentsRoot = path.join(bundledHostRoot('claude'), 'openplanr', 'agents');
|
|
356
|
+
for (const absolutePath of inventoryRegularFiles(agentsRoot)) {
|
|
357
|
+
const relativePath = path.relative(agentsRoot, absolutePath);
|
|
358
|
+
actions.push({
|
|
359
|
+
runtime,
|
|
360
|
+
scope: 'project',
|
|
361
|
+
target: path.join(options.projectDir, '.claude', 'agents', relativePath),
|
|
362
|
+
content: Buffer.from(readFileSync(absolutePath, 'utf8').replaceAll('${CLAUDE_PLUGIN_ROOT}', runtimePackage.root)),
|
|
363
|
+
kind: 'file',
|
|
364
|
+
custody: 'professional-skill',
|
|
365
|
+
description: `Install project Claude role agent ${relativePath}`,
|
|
366
|
+
});
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
const lockRuntimes = [...new Set([...(retainedProject?.runtimes ?? []), ...runtimes])];
|
|
372
|
+
const lockScopes = { ...retainedProject?.runtimeScopes, ...runtimeScopes };
|
|
373
|
+
if (lockRuntimes.some((runtime) => {
|
|
374
|
+
const scope = lockScopes[runtime] ?? options.scope ?? 'user';
|
|
375
|
+
return scope === 'project' || scope === 'both';
|
|
376
|
+
})) {
|
|
377
|
+
actions.push({
|
|
378
|
+
runtime: 'core',
|
|
379
|
+
scope: 'project',
|
|
380
|
+
target: path.join(options.projectDir, PLANNING_FOLDER, 'runtime-lock.json'),
|
|
381
|
+
content: buildRuntimeLock({
|
|
382
|
+
...options,
|
|
383
|
+
projectSkillMode: options.projectSkillMode ?? retainedProject?.skillModes?.codex,
|
|
384
|
+
}, lockRuntimes, lockScopes, registry, version),
|
|
385
|
+
kind: 'file',
|
|
386
|
+
description: 'Write exact runtime compatibility lock',
|
|
387
|
+
});
|
|
388
|
+
}
|
|
389
|
+
return actions;
|
|
390
|
+
}
|
|
391
|
+
export function inventoryRegularFiles(root) {
|
|
392
|
+
return inventoryManagedSkillFiles(root, (message, recovery) => {
|
|
393
|
+
throw new RuntimeManagerError('E_MIGRATION_CONFLICT', message, recovery);
|
|
394
|
+
});
|
|
395
|
+
}
|
|
91
396
|
//# sourceMappingURL=install-plan.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-plan.js","sourceRoot":"","sources":["../../../src/services/runtime-manager/install-plan.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"install-plan.js","sourceRoot":"","sources":["../../../src/services/runtime-manager/install-plan.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,4 +27,10 @@ export declare function detectInstalledRuntimes(): Array<{
|
|
|
27
27
|
}>;
|
|
28
28
|
/** Reads the self-contained host-package inventory shipped with the utility CLI. */
|
|
29
29
|
export declare function listInstalledRuntimeAdapters(): AdapterRegistryEntry[];
|
|
30
|
+
export declare function readRegistry(): {
|
|
31
|
+
root: string;
|
|
32
|
+
version: string;
|
|
33
|
+
pluginVersion: string;
|
|
34
|
+
registry: AdapterRegistry;
|
|
35
|
+
};
|
|
30
36
|
//# sourceMappingURL=inventory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inventory.d.ts","sourceRoot":"","sources":["../../../src/services/runtime-manager/inventory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"inventory.d.ts","sourceRoot":"","sources":["../../../src/services/runtime-manager/inventory.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAE1E,MAAM,MAAM,SAAS,GAAG,aAAa,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE3D,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,SAAS,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;IACrD,aAAa,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC,YAAY,CAAC,EAAE;QACb,oBAAoB,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;KAChE,CAAC;CACH;AAED,MAAM,WAAW,eAAe;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;CAClC;AAED,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC;IAC3C,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;CAClC,CAAC,CAAC;AA8DH,iFAAiF;AACjF,wBAAgB,4BAA4B,CAAC,UAAU,EAAE,MAAM,GAAG,qBAAqB,CActF;AAED,wBAAgB,uBAAuB,IAAI,KAAK,CAAC;IAC/C,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC,CAMD;AAED,oFAAoF;AACpF,wBAAgB,4BAA4B,IAAI,oBAAoB,EAAE,CAMrE;AAED,wBAAgB,YAAY,IAAI;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,eAAe,CAAC;CAC3B,CAoBA"}
|