openplanr 3.1.0 → 3.2.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 +56 -0
- package/README.md +1 -1
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +24 -1
- package/dist/cli/commands/doctor.js.map +1 -1
- 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/dashboard/.vite/manifest.json +1 -1
- package/dist/dashboard/assets/{index-G7ygVDGg.js → index-L8qtwqv6.js} +2 -2
- package/dist/dashboard/assets/{index-G7ygVDGg.js.map → index-L8qtwqv6.js.map} +1 -1
- package/dist/dashboard/dashboard-manifest.json +8 -8
- 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/global-install-service.d.ts +24 -0
- package/dist/services/global-install-service.d.ts.map +1 -0
- package/dist/services/global-install-service.js +68 -0
- package/dist/services/global-install-service.js.map +1 -0
- 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/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 +81 -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/discover.d.ts +10 -0
- package/dist/services/ship-checks/discover.d.ts.map +1 -0
- package/dist/services/ship-checks/discover.js +250 -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/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/services/upgrade-service.d.ts +15 -1
- package/dist/services/upgrade-service.d.ts.map +1 -1
- package/dist/services/upgrade-service.js +102 -13
- package/dist/services/upgrade-service.js.map +1 -1
- 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 +48 -1
- 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 +1 -1
- 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 +126 -90
- 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/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 +385 -79
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-handoff.mjs +1 -1
- 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-6774fd3d5d02.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 +40 -7
- 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} +284 -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 +215 -55
- 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 +246 -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 +163 -274
- 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 +115 -240
- 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 +215 -0
- package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-design-review-experience.js +2766 -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 +2170 -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 +1583 -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 +5 -1
- 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.20.0}/design-document.schema.json +78 -5
- package/lib/host-packages/claude/openplanr/runtime/plan/scripts/design-protocol-contracts.mjs +247 -45
- package/lib/host-packages/claude/openplanr/runtime/plan/scripts/design.mjs +45 -12
- package/lib/host-packages/claude/openplanr/runtime/plan/scripts/runtime/packages/protocol/package.json +5 -1
- 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 +33 -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 +74 -1
- 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 +6 -0
- package/lib/host-packages/claude/openplanr/skills/design/schemas/design-document.schema.json +78 -5
- 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 +33 -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 +74 -1
- 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 +6 -0
- package/lib/host-packages/claude/openplanr/skills/design-loop/schemas/design-document.schema.json +78 -5
- 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 +33 -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 +74 -1
- 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 +6 -0
- package/lib/host-packages/claude/openplanr/skills/design-review/schemas/design-document.schema.json +78 -5
- package/lib/host-packages/claude/openplanr/skills/investigate/SKILL.md +10 -1
- 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 +3 -0
- package/lib/host-packages/claude/openplanr/skills/plan/schemas/design-document.schema.json +78 -5
- package/lib/host-packages/claude/openplanr/skills/share/references/connectors.md +4 -6
- package/lib/host-packages/claude/openplanr/skills/ship/SKILL.md +15 -4
- 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/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 +125 -89
- 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 +33 -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 +74 -1
- 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 +6 -0
- package/lib/host-packages/cursor/openplanr/rules/planr-design/schemas/design-document.schema.json +78 -5
- 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 +33 -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 +74 -1
- 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 +6 -0
- package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/schemas/design-document.schema.json +78 -5
- 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 +33 -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 +74 -1
- 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 +6 -0
- package/lib/host-packages/cursor/openplanr/rules/planr-design-review/schemas/design-document.schema.json +78 -5
- 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 +10 -1
- package/lib/host-packages/cursor/openplanr/rules/planr-plan/schemas/design-document.schema.json +78 -5
- package/lib/host-packages/cursor/openplanr/rules/planr-plan.mdc +3 -0
- 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 +15 -4
- 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 +385 -79
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-handoff.mjs +1 -1
- 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-6774fd3d5d02.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 +40 -7
- 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} +284 -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 +215 -55
- 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 +246 -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 +163 -274
- 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 +115 -240
- 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 +215 -0
- package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-design-review-experience.js +2766 -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 +2170 -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 +1583 -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 +5 -1
- 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.20.0}/design-document.schema.json +78 -5
- package/lib/host-packages/cursor/openplanr/runtime/plan/scripts/design-protocol-contracts.mjs +247 -45
- package/lib/host-packages/cursor/openplanr/runtime/plan/scripts/design.mjs +45 -12
- package/lib/host-packages/cursor/openplanr/runtime/plan/scripts/runtime/packages/protocol/package.json +5 -1
- 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 +128 -92
- 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 +385 -79
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-handoff.mjs +1 -1
- 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-6774fd3d5d02.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 +40 -7
- 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} +284 -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 +215 -55
- 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 +246 -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 +163 -274
- 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 +115 -240
- 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 +215 -0
- package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-design-review-experience.js +2766 -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 +2170 -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 +1583 -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 +5 -1
- 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.20.0}/design-document.schema.json +78 -5
- package/lib/host-packages/openai/openplanr/runtime/plan/scripts/design-protocol-contracts.mjs +247 -45
- package/lib/host-packages/openai/openplanr/runtime/plan/scripts/design.mjs +45 -12
- package/lib/host-packages/openai/openplanr/runtime/plan/scripts/runtime/packages/protocol/package.json +5 -1
- 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 +33 -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 +74 -1
- 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 +6 -0
- package/lib/host-packages/openai/openplanr/skills/design/schemas/design-document.schema.json +78 -5
- 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 +33 -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 +74 -1
- 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 +6 -0
- package/lib/host-packages/openai/openplanr/skills/design-loop/schemas/design-document.schema.json +78 -5
- 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 +33 -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 +74 -1
- 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 +6 -0
- package/lib/host-packages/openai/openplanr/skills/design-review/schemas/design-document.schema.json +78 -5
- package/lib/host-packages/openai/openplanr/skills/investigate/SKILL.md +10 -1
- package/lib/host-packages/openai/openplanr/skills/investigate/openplanr.skill.json +22 -0
- 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 +3 -0
- package/lib/host-packages/openai/openplanr/skills/plan/schemas/design-document.schema.json +78 -5
- package/lib/host-packages/openai/openplanr/skills/share/references/connectors.md +4 -6
- package/lib/host-packages/openai/openplanr/skills/ship/SKILL.md +15 -4
- package/lib/host-packages/openai/openplanr/skills/ship/openplanr.skill.json +22 -0
- 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/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/package.json +3 -3
- 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
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,61 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 3.2.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 085c665: Support content-sized design frames with `height: "auto"`. Size studio boards from rendered content while keeping grid rows stable, preserve numeric feedback coordinates and exports, and audit vertical overflow, positioned content outside frames and root box sizing.
|
|
8
|
+
|
|
9
|
+
The v1.20.0 design document schema retains `schemaVersion: "1.0.0"`, including auto-height frames. Use `height: "auto"` for pages that scroll. Treat vertical overflow, positioned content outside frames and root box sizing as errors throughout a document with any auto-height frame; all other documents receive warnings that do not block verification or handoff readiness. Layout and schema version never affect severity; migration and dragging preserve fixed-frame warnings.
|
|
10
|
+
|
|
11
|
+
Ignore legacy personal canvas positions when detecting share updates. Accept existing position-based fingerprints while those positions still match; an older share whose personal positions have since changed can report one update until explicitly republished.
|
|
12
|
+
- 085c665: Use the shared canvas engine for design studio navigation, fitting and chrome safe areas while retaining saved board layouts and artifact preview state.
|
|
13
|
+
- 99b195c: The design skills now push for a deliberate look instead of generic defaults. A design names its direction and the one thing a viewer should remember. New products without a brand start from two to four quick direction sketches for you to pick from, unless you leave the choice to the skill. Type and color stay within a small system, common generic choices are named and avoided, and landing pages follow a clear order, with realistic sample prices and quotes marked as samples for you to replace.
|
|
14
|
+
|
|
15
|
+
Designs can also carry real typefaces. Openly licensed font files saved in a design are embedded when it renders, so it still opens offline and fetches nothing; without them, the design uses a named system font stack and says which one.
|
|
16
|
+
- 085c665: Store canvas board positions, optional board titles and section headings in the authored design document. The local studio saves dragged positions to the document and supports undo and redo; portable studios retain moves for the session. Existing documents keep their computed grid unless legacy studio-state or browser positions can fill missing exact board keys. The studio migrates those positions in one layout revision that is not undoable in the session, then removes them from personal state after saving; without a server, they apply for the session only.
|
|
17
|
+
|
|
18
|
+
The `DESIGN_DOCUMENT_SCHEMA` export now points to the v1.20.0 design document schema. Review bundles retain authored layout and omit legacy personal positions; layout-bearing bundles use the additive v1.20.0 review bundle schema.
|
|
19
|
+
|
|
20
|
+
The v1.20.0 design contract retains authored `schemaVersion: "1.0.0"` for fixed and auto-height frames, and the frozen Protocol 1.9 schema remains unchanged. Vertical overflow, positioned content outside frames and root box sizing are errors throughout a document with any auto-height frame, and warnings otherwise. Layout and schema version never affect severity.
|
|
21
|
+
|
|
22
|
+
Use a plain studio canvas ground from the theme's stage surface token, preserving board edges and shadows and the diagram editor's dot grid.
|
|
23
|
+
|
|
24
|
+
Keep unsaved board moves in the browser draft across reloads and replay their absolute positions against the current layout revision when authored content is unchanged. Report and discard stale moves when authored content changes. Preserve layout save failures and their Retry action over view-context notices; after a studio restart, keep pending moves and offer Reload. Keep the header unsaved until layout recovery completes, and report preview readiness with the revision adopted after legacy layout migration.
|
|
25
|
+
- e49d598: `/planr:design` now designs on the host's own design canvas when the host can publish one. It says so in one line, notes that the canvas is published to the host's service and private until shared, builds one board per screen with the primary journey interactive, and keeps the board sources in the project. It still writes the ten-section `design-spec.md`, now with the canvas link, so `/planr:plan` works as before. Say "use the local studio instead" to keep the local studio, for example for an encrypted company review. Hosts without a design canvas keep the local studio unchanged.
|
|
26
|
+
- 085c665: Publish live local Studio selection, visible boards, view and unsaved state to a validated view context file. Add a design utility reader and skill guidance for resolving viewer-relative edit requests against the current revision.
|
|
27
|
+
- 9bdcd2e: New `openplanr ship checks` lists the checks a change needs, read from your GitHub Actions workflows, husky and pre-commit hooks, package scripts and the task's Test Requirements. It never runs them. Pick a tier with `--tier task|story|push|planning`; without it you get `task`, or `planning` when only `.planr/` files changed. `--json` returns a versioned result.
|
|
28
|
+
|
|
29
|
+
CI `run` steps come back verbatim, multi-line ones included, with the working directory CI uses and a pointer to the workflow line. A step that only calls a package script is listed once. The build comes first when CI runs it. Static matrix values are expanded, and anything else with an expression is marked for review. Checks that only see tracked or staged files, such as lint-staged, are marked `tracked-only`. Prose Test Requirements and acceptance IDs are returned as entries, and existing tests that mention a name your change exports are listed. A workflow that fails to parse is reported as an error and the result says `complete: false`, so a broken workflow never looks like no checks.
|
|
30
|
+
|
|
31
|
+
Ship now uses this command to find its checks, and falls back to its packaged helper when the CLI isn't installed.
|
|
32
|
+
- d391097: Ship and Investigate now keep what they notice outside your task. Each finding is listed with its evidence and severity, apart from anything that blocks the task, and offered as a backlog item: one question files all, some or none of them, and anything already in your backlog is shown as tracked instead of filed again. Runs nobody can answer report findings without filing them, unless `.planr/config.json` sets `"findings": { "unattended": "file" }`. Filing works without the CLI installed and writes the same file `openplanr backlog add` does.
|
|
33
|
+
|
|
34
|
+
`openplanr backlog list` and the other list commands now show each item's title, `Created` prints the path relative to your project, acceptance criteria passed as a list are written one per line, and top-level settings you add to `.planr/config.json` are kept when OpenPlanr saves it.
|
|
35
|
+
|
|
36
|
+
### Patch Changes
|
|
37
|
+
|
|
38
|
+
- 05c76ed: `openplanr backlog add` and the backlog helper in Ship and Investigate now reject a priority other than critical, high, medium or low, from `--priority` or from `--data`, and name the value they rejected. Existing backlog items with other priorities still load and list. The CLI reports a rejected priority as `E_BACKLOG_INVALID` and a create command without a title as `E_PLANNING_INPUT_REQUIRED`, instead of as an unexpected failure.
|
|
39
|
+
- 1a4e6b1: Commands that save `.planr/config.json` now keep settings you add inside its sections, such as `outputPaths` or `findings`, instead of dropping them.
|
|
40
|
+
- a966062: The connectors page now describes only the Linear sync token: where it is stored and that it is sent only to Linear.
|
|
41
|
+
- 085c665: Handle board wheel and Safari pinch gestures through the artifact bridge while preserving direct interaction with every board in Interact mode. Keep board titles clear of chrome when fitting or centring boards.
|
|
42
|
+
|
|
43
|
+
Apply the current canvas gesture state when board bridges become ready, reload, or mount within the frame budget so late previews also prevent browser page zoom.
|
|
44
|
+
- 085c665: Keep canvas section headings readable, fit boards around the measured toolbar, and show accurate review status and board dimensions. Inspect every board during full browser audits within the live frame budget.
|
|
45
|
+
- ef83613: When you leave the canvas with commenting on and open a screen in Prototype or Walkthrough, the studio reloads that screen once, which makes clicks into it less likely to stop reaching it. Other view switches keep the screen as it was, including what you typed and where you scrolled.
|
|
46
|
+
- 085c665: Audit every board within the live frame budget, keep section headings and board titles readable at Fit, and show frame dimensions once.
|
|
47
|
+
- 085c665: Wait for browser frame attachment before auditing mounted design boards and report frame loading and panel visibility restoration failures.
|
|
48
|
+
|
|
49
|
+
Hold design frames during rendered audits so competing viewport demand cannot evict or cancel them. Queue demand while held frames fill the budget, resuming after release.
|
|
50
|
+
|
|
51
|
+
## 3.1.1
|
|
52
|
+
|
|
53
|
+
### Patch Changes
|
|
54
|
+
|
|
55
|
+
- 4a45357: `openplanr upgrade apply` now updates the copy of OpenPlanr you ran, even when `npm` on your PATH belongs to another Node install. Before, it could install the new version somewhere else, then undo it and say the registry didn't have the release yet. If it can't write to that install, it stops before changing anything and prints the command to run. When an upgrade still fails, the message names the folder it checked, the version it found and every `openplanr` on your PATH, and it only mentions the registry when the release really isn't published.
|
|
56
|
+
|
|
57
|
+
`openplanr doctor` now warns when more than one `openplanr` is on your PATH, and lists each one with its version.
|
|
58
|
+
|
|
3
59
|
## 3.1.0
|
|
4
60
|
|
|
5
61
|
### Minor Changes
|
package/README.md
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
<p align="center">
|
|
13
13
|
<a href="https://www.npmjs.com/package/openplanr"><img alt="npm version" src="https://img.shields.io/npm/v/openplanr?style=flat-square&labelColor=08080C&color=237A72&label=openplanr"></a>
|
|
14
14
|
<a href="https://www.npmjs.com/package/openplanr"><img alt="npm downloads" src="https://img.shields.io/npm/dm/openplanr?style=flat-square&labelColor=08080C&color=237A72"></a>
|
|
15
|
-
<a href="https://github.com/openplanr/OpenPlanr/actions/workflows/ci.yml"><img alt="Workspace CI" src="https://img.shields.io/github/actions/workflow/status/openplanr/OpenPlanr/ci.yml?
|
|
15
|
+
<a href="https://github.com/openplanr/OpenPlanr/actions/workflows/ci.yml"><img alt="Workspace CI" src="https://img.shields.io/github/actions/workflow/status/openplanr/OpenPlanr/ci.yml?event=merge_group&style=flat-square&labelColor=08080C&color=237A72&label=CI"></a>
|
|
16
16
|
<a href="https://nodejs.org"><img alt="Supported Node.js versions" src="https://img.shields.io/node/v/openplanr?style=flat-square&labelColor=08080C&color=237A72"></a>
|
|
17
17
|
<a href="https://github.com/openplanr/OpenPlanr/blob/main/LICENSE"><img alt="MIT license" src="https://img.shields.io/badge/license-MIT-237A72?style=flat-square&labelColor=08080C"></a>
|
|
18
18
|
</p>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2MzC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,QA8DzE"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { openPlanrOnPath } from '../../services/global-install-service.js';
|
|
1
2
|
import { isNonInteractive } from '../../services/interactive-state.js';
|
|
2
3
|
import { promptConfirm } from '../../services/prompt-service.js';
|
|
3
4
|
import { summarizeRuntimeChanges } from '../../services/runtime-change-summary.js';
|
|
@@ -128,6 +129,28 @@ async function repairInstallation(projectDir, cliVersion, diagnosis, { json, yes
|
|
|
128
129
|
...(packageBackupDir ? { packageBackupDir } : {}),
|
|
129
130
|
};
|
|
130
131
|
}
|
|
132
|
+
/** Warns when PATH holds more than one OpenPlanr, since upgrades and runs may then use different copies. */
|
|
133
|
+
function globalInstallsDiagnostic() {
|
|
134
|
+
const installs = openPlanrOnPath();
|
|
135
|
+
const listed = installs
|
|
136
|
+
.map((entry) => `${entry.command} (${entry.version ?? 'unknown version'})`)
|
|
137
|
+
.join(', ');
|
|
138
|
+
if (installs.length <= 1) {
|
|
139
|
+
return {
|
|
140
|
+
code: 'openplanr-global-installs',
|
|
141
|
+
status: 'pass',
|
|
142
|
+
message: installs.length
|
|
143
|
+
? `One openplanr on PATH: ${listed}.`
|
|
144
|
+
: 'No openplanr found on PATH.',
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
return {
|
|
148
|
+
code: 'openplanr-global-installs',
|
|
149
|
+
status: 'warn',
|
|
150
|
+
message: `${installs.length} openplanr installs are on PATH; the first one runs: ${listed}.`,
|
|
151
|
+
fix: `Keep one: remove the others with their own npm (\`npm uninstall -g openplanr\`), or put the one you upgrade first on PATH.`,
|
|
152
|
+
};
|
|
153
|
+
}
|
|
131
154
|
function printDiagnosis(result) {
|
|
132
155
|
logger.heading('OpenPlanr doctor');
|
|
133
156
|
result.diagnostics.forEach((diagnostic) => {
|
|
@@ -185,7 +208,7 @@ export function registerDoctorCommand(program, cliVersion) {
|
|
|
185
208
|
const result = {
|
|
186
209
|
...repaired,
|
|
187
210
|
servers,
|
|
188
|
-
diagnostics: [...repaired.diagnostics, serverDiagnostic],
|
|
211
|
+
diagnostics: [...repaired.diagnostics, serverDiagnostic, globalInstallsDiagnostic()],
|
|
189
212
|
};
|
|
190
213
|
if (opts.json)
|
|
191
214
|
display.line(JSON.stringify(result));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/groups/delivery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/groups/delivery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQzC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAOhF"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
import { registerShipCommand } from '../ship.js';
|
|
1
2
|
import { registerSprintCommand } from '../sprint.js';
|
|
2
3
|
import { registerSyncCommand } from '../sync.js';
|
|
3
4
|
import { registerTemplateCommand } from '../template.js';
|
|
4
5
|
import { registerUpdateCommand } from '../update.js';
|
|
5
6
|
import { registerUpgradeCommand } from '../upgrade.js';
|
|
6
7
|
export function registerDeliveryCommands(program, version) {
|
|
8
|
+
registerShipCommand(program);
|
|
7
9
|
registerSprintCommand(program);
|
|
8
10
|
registerSyncCommand(program);
|
|
9
11
|
registerTemplateCommand(program);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delivery.js","sourceRoot":"","sources":["../../../../src/cli/commands/groups/delivery.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAEvD,MAAM,UAAU,wBAAwB,CAAC,OAAgB,EAAE,OAAe;IACxE,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/B,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACjC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/B,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAC3C,CAAC"}
|
|
1
|
+
{"version":3,"file":"delivery.js","sourceRoot":"","sources":["../../../../src/cli/commands/groups/delivery.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAEvD,MAAM,UAAU,wBAAwB,CAAC,OAAgB,EAAE,OAAe;IACxE,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/B,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACjC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/B,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAC3C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"planning-artifacts.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/planning-artifacts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"planning-artifacts.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/planning-artifacts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkdzC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,QAEnD;AACD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,QAItD;AACD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,QAIpD;AACD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,QAInD;AACD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,QAEpD;AACD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,QAOtD;AACD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,QAKrD;AAED,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACf,MAAM,CASR"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { readFile } from 'node:fs/promises';
|
|
2
2
|
import path from 'node:path';
|
|
3
|
+
import { backlogFields, writeBacklogItem } from '../../../lib/backlog-item.mjs';
|
|
3
4
|
import { addChildReference, createArtifact, getArtifactDir, listArtifacts, readArtifact, readArtifactRaw, resolveArtifactFilename, updateArtifactFields, } from '../../services/artifact-service.js';
|
|
4
5
|
import { loadConfig } from '../../services/config-service.js';
|
|
5
6
|
import { prepareSprintCreation } from '../../services/sprint-refinement-service.js';
|
|
6
|
-
import { renderTemplate } from '../../services/template-service.js';
|
|
7
|
+
import { hasTemplateOverride, renderTemplate } from '../../services/template-service.js';
|
|
7
8
|
import { CLI_COMMAND } from '../../utils/constants.js';
|
|
8
9
|
import { writeFile } from '../../utils/fs.js';
|
|
9
10
|
import { display, logger } from '../../utils/logger.js';
|
|
@@ -112,7 +113,7 @@ async function creationData(type, projectDir, config, options) {
|
|
|
112
113
|
const input = await readInputData(type, inputSource);
|
|
113
114
|
const title = String(options.title ?? options.description ?? input.title ?? input.name ?? '').trim();
|
|
114
115
|
if (!title)
|
|
115
|
-
throw
|
|
116
|
+
throw planningInputError(type, 'REQUIRED', `${CLI_COMMAND} ${type} create requires --title or JSON input with a title.`, 'Pass a title, or a title field in --data.');
|
|
116
117
|
const base = { ...input, title };
|
|
117
118
|
if (type === 'epic')
|
|
118
119
|
return {
|
|
@@ -189,10 +190,12 @@ async function creationData(type, projectDir, config, options) {
|
|
|
189
190
|
if (type === 'backlog')
|
|
190
191
|
return {
|
|
191
192
|
...base,
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
193
|
+
...backlogFields({
|
|
194
|
+
...base,
|
|
195
|
+
priority: options.priority ?? input.priority,
|
|
196
|
+
tags: options.tag ?? input.tags,
|
|
197
|
+
epicId: options.epic ?? input.epicId,
|
|
198
|
+
}),
|
|
196
199
|
};
|
|
197
200
|
return prepareSprintCreation(projectDir, config, { ...base, goals: strings(input.goals), taskIds: strings(input.taskIds) }, options.duration);
|
|
198
201
|
}
|
|
@@ -200,7 +203,10 @@ async function create(type, program, options) {
|
|
|
200
203
|
const projectDir = program.opts().projectDir;
|
|
201
204
|
const config = await loadConfig(projectDir);
|
|
202
205
|
const data = await creationData(type, projectDir, config, options);
|
|
203
|
-
const result =
|
|
206
|
+
const result = type === 'backlog' && !(await hasTemplateOverride(templates.backlog, config.templateOverrides))
|
|
207
|
+
? await writeBacklogItem(path.join(projectDir, getArtifactDir(config, 'backlog')), config.idPrefix.backlog, backlogFields(data), new Date().toISOString().split('T')[0])
|
|
208
|
+
: await createArtifact(projectDir, config, type, templates[type], data);
|
|
209
|
+
const artifactPath = path.relative(projectDir, result.filePath).split(path.sep).join('/');
|
|
204
210
|
if (type === 'feature')
|
|
205
211
|
await addChildReference(projectDir, config, 'epic', String(data.epicId), 'feature', result.id, String(data.title));
|
|
206
212
|
if (type === 'story') {
|
|
@@ -227,12 +233,12 @@ async function create(type, program, options) {
|
|
|
227
233
|
action: `${type}.created`,
|
|
228
234
|
id: result.id,
|
|
229
235
|
title: String(data.title),
|
|
230
|
-
artifactPath
|
|
236
|
+
artifactPath,
|
|
231
237
|
}));
|
|
232
238
|
return;
|
|
233
239
|
}
|
|
234
240
|
logger.success(`Created ${result.id}: ${String(data.title)}`);
|
|
235
|
-
logger.dim(` ${
|
|
241
|
+
logger.dim(` ${artifactPath}`);
|
|
236
242
|
}
|
|
237
243
|
function registerCommon(program, type, configureCreate) {
|
|
238
244
|
const root = program.command(type).description(`Manage ${type} artifacts deterministically`);
|
|
@@ -276,9 +282,13 @@ function registerCommon(program, type, configureCreate) {
|
|
|
276
282
|
.description(`List ${type} artifacts`)
|
|
277
283
|
.action(async () => {
|
|
278
284
|
const projectDir = program.opts().projectDir;
|
|
279
|
-
const
|
|
280
|
-
|
|
281
|
-
|
|
285
|
+
const config = await loadConfig(projectDir);
|
|
286
|
+
const rows = await listArtifacts(projectDir, config, type);
|
|
287
|
+
for (const row of rows) {
|
|
288
|
+
const artifact = await readArtifact(projectDir, config, type, row.id);
|
|
289
|
+
const title = typeof artifact?.data.title === 'string' ? artifact.data.title : row.title;
|
|
290
|
+
display.line(`${row.id}\t${title}`);
|
|
291
|
+
}
|
|
282
292
|
if (rows.length === 0)
|
|
283
293
|
logger.info(`No ${type} artifacts found.`);
|
|
284
294
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"planning-artifacts.js","sourceRoot":"","sources":["../../../src/cli/commands/planning-artifacts.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"planning-artifacts.js","sourceRoot":"","sources":["../../../src/cli/commands/planning-artifacts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ship.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/ship.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmCzC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwC1D"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import { SHIP_TIERS } from '../../services/ship-checks/contract.js';
|
|
3
|
+
import { discoverShipChecks } from '../../services/ship-checks/discover.js';
|
|
4
|
+
import { display } from '../../utils/logger.js';
|
|
5
|
+
import { CliBoundaryError, toCliFailureEnvelope } from '../error-boundary.js';
|
|
6
|
+
function parseTier(value) {
|
|
7
|
+
if (value === undefined)
|
|
8
|
+
return undefined;
|
|
9
|
+
if (SHIP_TIERS.includes(value))
|
|
10
|
+
return value;
|
|
11
|
+
throw new CliBoundaryError('E_SHIP_CHECKS_TIER_INVALID', `Unknown tier "${value}".`, {
|
|
12
|
+
recovery: `Use one of: ${SHIP_TIERS.join(', ')}.`,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
function render(result) {
|
|
16
|
+
display.heading(`Ship checks: ${result.tier} tier (${result.tierSource})`);
|
|
17
|
+
for (const check of result.checks) {
|
|
18
|
+
const [first, ...rest] = check.command.split('\n');
|
|
19
|
+
const more = rest.length > 0 ? chalk.dim(` (+${rest.length} lines)`) : '';
|
|
20
|
+
const where = check.cwd === '.' ? '' : chalk.dim(` [${check.cwd}]`);
|
|
21
|
+
display.line(` ${first}${more}${where} ${chalk.dim(check.tags.join(', '))}`);
|
|
22
|
+
}
|
|
23
|
+
for (const requirement of result.requirements)
|
|
24
|
+
display.line(` ${chalk.dim('requirement:')} ${requirement.text}`);
|
|
25
|
+
for (const entry of result.diagnostics)
|
|
26
|
+
display.line(` ${chalk.dim(entry.severity)} ${entry.code}: ${entry.message}`);
|
|
27
|
+
if (!result.complete)
|
|
28
|
+
display.line(chalk.yellow(' Incomplete: an error diagnostic means the check set may miss CI steps.'));
|
|
29
|
+
}
|
|
30
|
+
export function registerShipCommand(program) {
|
|
31
|
+
const ship = program
|
|
32
|
+
.command('ship')
|
|
33
|
+
.description('Deterministic helpers for implementing and shipping work');
|
|
34
|
+
ship
|
|
35
|
+
.command('checks')
|
|
36
|
+
.description('List the checks a change needs for a tier, read from CI, hooks and the task, without running them')
|
|
37
|
+
.option('--task <path>', 'task file whose Test Requirements to include')
|
|
38
|
+
.option('--tier <tier>', `check tier: ${SHIP_TIERS.join(', ')} (default: planning for a .planr-only change, else task)`)
|
|
39
|
+
.option('--base <ref>', 'compare against the merge base with this ref (default: origin/HEAD, then main)')
|
|
40
|
+
.option('--json', 'machine-readable output', false)
|
|
41
|
+
.action(async (options) => {
|
|
42
|
+
const json = Boolean(options.json);
|
|
43
|
+
try {
|
|
44
|
+
const result = await discoverShipChecks({
|
|
45
|
+
projectDir: program.opts().projectDir,
|
|
46
|
+
task: options.task,
|
|
47
|
+
tier: parseTier(options.tier),
|
|
48
|
+
base: options.base,
|
|
49
|
+
});
|
|
50
|
+
if (json)
|
|
51
|
+
display.line(JSON.stringify(result, null, 2));
|
|
52
|
+
else
|
|
53
|
+
render(result);
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
const failure = toCliFailureEnvelope(error, { code: 'E_SHIP_CHECKS_FAILED' });
|
|
57
|
+
if (json)
|
|
58
|
+
display.line(JSON.stringify(failure, null, 2));
|
|
59
|
+
else
|
|
60
|
+
display.line(`${failure.code}: ${failure.problem}${failure.recovery ? `\n${failure.recovery}` : ''}`);
|
|
61
|
+
process.exitCode = 1;
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=ship.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ship.js","sourceRoot":"","sources":["../../../src/cli/commands/ship.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"src": "../../../node_modules/@fontsource-variable/geist/files/geist-vietnamese-wght-normal.woff2"
|
|
45
45
|
},
|
|
46
46
|
"index.html": {
|
|
47
|
-
"file": "assets/index-
|
|
47
|
+
"file": "assets/index-L8qtwqv6.js",
|
|
48
48
|
"name": "index",
|
|
49
49
|
"src": "index.html",
|
|
50
50
|
"isEntry": true,
|
|
@@ -568,5 +568,5 @@ Error generating stack: `+l.message+`
|
|
|
568
568
|
`),C=(b=Q.find(O=>O.startsWith("event:")))==null?void 0:b.slice(6).trim(),S=Q.filter(O=>O.startsWith("data:")).map(O=>O.slice(5).trimStart()).join(`
|
|
569
569
|
`);S&&e.reconciler.ingestSseFrame(S,C),j=A.indexOf(`
|
|
570
570
|
|
|
571
|
-
`)}if(w.done){if(A.trim())return me("$","Planning live response ended mid-frame");break}}}finally{m.releaseLock()}})().catch(g=>{if(!t.signal.aborted)throw g instanceof ee?g:new ee("$","Planning live response failed safely")}).finally(()=>{var g;return(g=e.signal)==null?void 0:g.removeEventListener("abort",i)});return Object.freeze({completion:d,close:()=>{var g;t.abort(),e.reconciler.dispose(),(g=e.signal)==null||g.removeEventListener("abort",i)}})}const LF=Object.freeze({connectSse:$F,createSseReconciler:GF,encodeCheckpoint:UF,fetchGraph:HF,parseGraphEnvelope:wf}),PF=Object.freeze(Object.defineProperty({__proto__:null,planningRuntime:LF},Symbol.toStringTag,{value:"Module"})),FF=Object.freeze({create:Ze}),VF=Object.freeze({ValidationError:ee,isValidatedState:Ke,parseSafeError:Mj,parseState:Ho,statePolicy:zo}),qF=Object.freeze({parse:si}),KF=Object.freeze({connectSse:DS,createSseReconciler:RS}),JF=Object.freeze({identity:FF,projection:VF,routing:qF,transport:KF}),ZF=Object.freeze(Object.defineProperty({__proto__:null,dashboardRuntime:JF},Symbol.toStringTag,{value:"Module"})),{operateRuntime:tt}=vF,{planningRuntime:El}=PF,{dashboardRuntime:Te}=ZF,CO=new Set(["ready","read-only","stale","partial","blocked","offline"]),Es=Te.projection.parseState({kind:"booting",binding:null,data:null,reasonCodes:[],error:null,mutationEnabled:!1,policy:Te.projection.statePolicy("booting")}),SO=Te.routing.parse("#/overview");function OO(e){return`DASHBOARD_${e.toUpperCase().replace("-","_")}`}function Rr(e){return Te.projection.parseState({kind:"loading",binding:e,data:null,reasonCodes:[],error:null,mutationEnabled:!1,policy:Te.projection.statePolicy("loading")},{currentBinding:e})}function _O(e,t=null){return Te.projection.parseState({kind:"unavailable",binding:e,data:null,reasonCodes:["DASHBOARD_UNAVAILABLE"],error:t,mutationEnabled:!1,policy:Te.projection.statePolicy("unavailable")},{currentBinding:e})}function Gr(e,t=!1){const s=(e!==null&&typeof e=="object"&&!Array.isArray(e)?e:{}).code==="DASHBOARD_RESPONSE_INVALID"||e instanceof Te.projection.ValidationError;return Te.projection.parseSafeError({code:t||!s?"DASHBOARD_READ_FAILED":"DASHBOARD_RESPONSE_INVALID",retryable:!1,context:{operation:"dashboard.projection.read"}})}function ri(e,t){const i=t??Gr(void 0);if(i.code!=="DASHBOARD_RESPONSE_INVALID")return _O(e,i);const s=Te.projection.parseSafeError({code:"DASHBOARD_RESPONSE_INVALID",retryable:!1,context:{}});return Te.projection.parseState({kind:"corrupt",binding:null,data:null,reasonCodes:["DASHBOARD_CORRUPT"],error:s,mutationEnabled:!1,policy:Te.projection.statePolicy("corrupt")})}function XF(e,t,i,s,c=!1,d=null){if(!CO.has(e))throw new Error("Unsupported owner presentation state.");return Te.projection.parseState({kind:e,binding:t,data:i,reasonCodes:e==="ready"?[]:[OO(e)],error:d,mutationEnabled:e==="ready"&&c,policy:Te.projection.statePolicy(e)},{currentBinding:t,validateData:s})}function WF(e,t){return!Te.projection.isValidatedState(e)||e.binding===null||e.data===null?e:Te.projection.parseState({kind:"stale",binding:e.binding,data:e.data,reasonCodes:["DASHBOARD_STALE"],error:t,mutationEnabled:!1,policy:Te.projection.statePolicy("stale")},{currentBinding:e.binding,validateData:i=>i!==null})}function e8(e,t){return Te.projection.parseState({kind:e,binding:t,data:null,reasonCodes:[OO(e)],error:null,mutationEnabled:!1,policy:Te.projection.statePolicy(e)},{currentBinding:t})}function vs(e,t){const i=B.useRef(t);i.current=t;const s=B.useRef(e);s.current=e;const c=B.useRef(null),d=B.useRef(null),[u,h]=B.useState(0),[g,m]=B.useState(()=>Object.freeze({key:null,revision:0,phase:"idle",data:null,error:null})),y=B.useCallback(()=>h(I=>I+1),[]),A=B.useCallback(()=>{var S;if(c.current!==null)return c.current;const I=s.current;if(I===null)return Promise.reject(new Error("Owner read is unavailable."));const Q=new AbortController;(S=d.current)==null||S.abort(),d.current=Q,m(O=>Object.freeze({key:I,revision:O.revision,phase:"loading",data:O.key===I?O.data:null,error:null}));const C=i.current(Q.signal).then(O=>{if(Q.signal.aborted||s.current!==I)throw new DOMException("Cancelled","AbortError");return m(_=>Object.freeze({key:I,revision:_.revision,phase:"ready",data:O,error:null})),O}).catch(O=>{throw!Q.signal.aborted&&s.current===I&&m(_=>Object.freeze({key:I,revision:_.revision,phase:"failed",data:_.key===I?_.data:null,error:Gr(O,_.key===I&&_.data!==null)})),O}).finally(()=>{c.current===C&&(c.current=null),d.current===Q&&(d.current=null)});return c.current=C,C},[]);B.useEffect(()=>{var Q;if((Q=d.current)==null||Q.abort(),d.current=null,c.current=null,e===null){m(Object.freeze({key:null,revision:u,phase:"idle",data:null,error:null}));return}const I=new AbortController;return m(C=>Object.freeze({key:e,revision:u,phase:"loading",data:C.key===e?C.data:null,error:null})),i.current(I.signal).then(C=>{I.signal.aborted||m(Object.freeze({key:e,revision:u,phase:"ready",data:C,error:null}))}).catch(C=>{I.signal.aborted||m(S=>Object.freeze({key:e,revision:u,phase:"failed",data:S.key===e?S.data:null,error:Gr(C,S.key===e&&S.data!==null)}))}),()=>I.abort()},[e,u]);const E=g.key===e&&g.revision===u,b=E?g.phase:e===null?"idle":"loading",w=E?g.data:null,j=E?g.error:null;return B.useMemo(()=>Object.freeze({phase:b,data:w,error:j,refetch:y,reconcile:A}),[w,j,b,A,y])}function t8(e){return e===null?null:JSON.stringify(e)}function n8(e){return e.product==="planning"?e:SO}function a8(e){return e.kind==="operate.evidence"||e.kind==="operate.evidence-item"?"evidence":e.kind==="operate.outcomes"?"outcomes":e.kind==="operate.outcome"?"outcome":e.kind==="operate.history"?"history":null}function Fu(e){return e.kind==="operate.actions"||e.kind==="operate.action"||e.kind==="operate.action-planning"||e.kind==="operate.inbox"||e.kind==="operate.inbox-item"||e.kind==="operate.recovery"}function i8(e){return e.kind==="operate.action-planning"?{kind:"operate.action",product:"operate",subjectId:e.subjectId}:e}function Bs(e){return Object.freeze({eventHead:e.payload.eventHead,viewHash:e.payload.viewHash})}function sc(e){const t=e.payload.status;if(!CO.has(t))throw new Te.projection.ValidationError("$.payload.status","contains an unsupported display status");return t}function r8(e){return e.payload.status==="terminal"?"read-only":sc(e)}function pj(e,t){if(e.data===null)return e.phase==="loading"||e.phase==="idle"?Rr(t):ri(t,e.error);const i=Te.identity.create({...t,eventHead:e.data.payload.sourceEventHead,viewHash:e.data.payload.sourceViewHash});return ki(e,i,e.data,tt.review.createValidator(i),r8(e.data),e.data.payload.mutationEnabled)}function ki(e,t,i,s,c,d=!1){const u=e.phase==="failed"?"stale":e.phase==="loading"||e.phase==="idle"?"refreshing":c;try{return XF(u,t,i,s,d,u==="stale"?e.error??Gr(void 0,!0):null)}catch(h){return ri(t,Gr(h))}}function hj(e,t){if(e.data===null)return e.phase==="loading"||e.phase==="idle"?Rr(t):ri(t,e.error);const i=Te.identity.create({...t,eventHead:e.data.cursor.eventHead,viewHash:e.data.cursor.viewHash});return ki(e,i,e.data,s=>{try{return El.parseGraphEnvelope(s,t),!0}catch{return!1}},"ready")}function gj(e,t,i,s){var u;if(e.data===null)return e.phase==="loading"||e.phase==="idle"?Rr(t):ri(t,e.error);const c=Te.identity.create({...t,...Bs(e.data)}),d=i==="today"?tt.today.createValidator(c):tt.cycles.createListValidator(c);return e.phase!=="ready"?ki(e,c,e.data,d,sc(e.data),e.data.payload.mutationEnabled):i==="today"&&e.data.payload.surface==="today"&&e.data.payload.status==="ready"&&e.data.payload.data.activeCycle===null?d(e.data)?s?s.phase==="loading"||s.phase==="idle"?ki(Object.freeze({...e,phase:"loading",error:null}),c,e.data,d,"ready"):s.phase==="failed"?ki(Object.freeze({...e,phase:"failed",error:s.error}),c,e.data,d,"ready"):((u=s.data)==null?void 0:u.payload.surface)!=="cycles"?ri(c,Gr(new Te.projection.ValidationError("$.payload.surface","does not contain the required cycles display"))):e8(s.data.payload.data.cycles.length===0?"first-use":"empty",c):Rr(c):ri(c,Gr(new Te.projection.ValidationError("$.data","failed its owner-boundary contract"))):ki(e,c,e.data,d,sc(e.data),e.data.payload.mutationEnabled)}function s8(e){if(e.subjectId===null)throw new Error("Action display identity requires a subject.");return Te.identity.create({...e,route:`#/operate/actions/${encodeURIComponent(e.subjectId)}`})}function Aj(e,t,i){if(e.data===null)return e.phase==="loading"||e.phase==="idle"?Rr(t):ri(t,e.error);const s=Te.identity.create({...t,...Bs(e.data)});let c;if(i.kind==="operate.actions")c=tt.actions.createListValidator(s);else if(i.kind==="operate.action"||i.kind==="operate.action-planning"){const d=i.kind==="operate.action-planning"?s8(s):s;c=tt.actions.createDetailValidator(d)}else if(i.kind==="operate.inbox"||i.kind==="operate.inbox-item")c=tt.actions.createInboxValidator(s);else if(i.kind==="operate.recovery")c=tt.actions.createRecoveryValidator(s);else return _O(s);return ki(e,s,e.data,c,sc(e.data),i.kind==="operate.action-planning"?!1:e.data.payload.mutationEnabled)}function o8(e,t){var ae,Ae;const i=(e==null?void 0:e.origin)??null,s=JSON.stringify(t),[c,d]=B.useState(null),u=(e==null?void 0:e.queryRoots.planning)??null,h=(e==null?void 0:e.queryRoots.operate)??null,g=B.useMemo(()=>n8(t),[t]),m=B.useMemo(()=>u?tt.transport.identityFromRoot(u,SO):null,[u]),y=B.useMemo(()=>u?tt.transport.identityFromRoot(u,g):null,[u,g]),A=vs(m?JSON.stringify(m):null,R=>{if(!i||!m)throw new Error("Planning query root is unavailable.");return El.fetchGraph({origin:i,identity:m,signal:R})}),E=t8(h),b=vs(E,R=>{if(!i||!h)throw new Error("Operate query root is unavailable.");return tt.transport.fetchRootDisplay({origin:i,root:h,surface:"today",signal:R})}),w=vs(E,R=>{if(!i||!h)throw new Error("Operate query root is unavailable.");return tt.transport.fetchRootDisplay({origin:i,root:h,surface:"cycles",signal:R})}),j=((ae=b.data)==null?void 0:ae.payload.surface)==="today"?b.data:null,I=(j==null?void 0:j.payload.surface)==="today"?((Ae=j.payload.data.activeCycle)==null?void 0:Ae.cycleId)??null:null,Q=t.kind==="operate.cycle"?t.subjectId:t.kind==="operate.review"?t.cycleId:I,C=j?Bs(j):null,S=B.useMemo(()=>h&&t.product==="operate"&&Q&&C?tt.transport.identityFromRoot(h,t,{cycleId:Q,eventHead:C.eventHead,viewHash:C.viewHash}):null,[C,h,t,Q]),O=i&&h&&S?JSON.stringify({root:h,binding:S}):null,_=B.useMemo(()=>h&&t.kind==="operate.review"?tt.transport.identityFromRoot(h,t,{cycleId:t.cycleId}):null,[h,t]),T=i&&_?JSON.stringify({root:h,route:_.route}):null,N=vs(T,R=>{if(!i||!h||t.kind!=="operate.review")throw new Error("Operate Review query custody is incomplete.");return tt.review.fetch({origin:i,root:h,cycleId:t.cycleId,reviewId:t.subjectId,signal:R})}),$=B.useMemo(()=>i8(t),[t]),G=B.useMemo(()=>h&&Fu(t)&&Q&&C?tt.transport.identityFromRoot(h,$,{cycleId:Q,eventHead:C.eventHead,viewHash:C.viewHash}):null,[$,C,h,t,Q]),U=i&&h&&G?JSON.stringify({root:h,binding:G}):null,K=a8(t),q=vs(K?O:null,R=>{if(!i||!h||!Q||!K)throw new Error("Operate audit query custody is incomplete.");return tt.transport.fetchAuditDisplay({origin:i,root:h,route:t,surface:K,cycleId:Q,signal:R})}),de=vs(t.kind==="operate.cycle"?O:null,R=>{if(!i||!h||t.kind!=="operate.cycle")throw new Error("Operate Cycle query custody is incomplete.");return tt.transport.fetchCycleDisplay({origin:i,root:h,cycleId:t.subjectId,signal:R})}),re=vs(Fu(t)?U:null,R=>{if(!i||!G)throw new Error("Operate route display custody is incomplete.");if(t.kind==="operate.actions")return tt.actions.fetchList({origin:i,identity:G,signal:R});if(t.kind==="operate.action"||t.kind==="operate.action-planning")return tt.actions.fetchDetail({origin:i,identity:G,signal:R});if(t.kind==="operate.inbox"||t.kind==="operate.inbox-item")return tt.actions.fetchInbox({origin:i,identity:G,signal:R});if(t.kind==="operate.recovery")return tt.actions.fetchRecovery({origin:i,identity:G,signal:R});throw new Error("Operate route does not own a bound display read.")}),pe=B.useMemo(()=>y?hj(A,y):Es,[y,A]),Z=B.useMemo(()=>{if(!h)return null;const R=Te.routing.parse("#/operate/today");return tt.transport.identityFromRoot(h,R,{cycleId:I})},[I,h]),ie=B.useMemo(()=>Z?gj(b,Z,"today",w):Es,[w,Z,b]),W=B.useMemo(()=>{if(!ie.binding||!Q)return null;const R=tt.today.resolveModel({current:ie},ie.binding);return(R==null?void 0:R.kind)==="surface"?tt.review.uniqueNavigationForCycle(R,Q):null},[Q,ie]),le=B.useMemo(()=>h?tt.transport.identityFromRoot(h,Te.routing.parse("#/operate/cycles")):null,[h]),oe=B.useMemo(()=>le?gj(w,le,"cycles"):Es,[le,w]),xe=B.useMemo(()=>{var X;if(!h||((X=w.data)==null?void 0:X.payload.surface)!=="cycles")return Object.freeze([]);const R=Bs(w.data),F=Te.routing.parse("#/operate/cycles");return Object.freeze(w.data.payload.data.cycles.map(fe=>tt.transport.identityFromRoot(h,F,{cycleId:fe.cycleId,eventHead:R.eventHead,viewHash:R.viewHash})))},[w,h]),Me=B.useMemo(()=>{if(t.product==="planning")return Object.freeze({binding:pe.binding,projection:pe});if(t.product!=="operate"||!h)return Object.freeze({binding:null,projection:Es});if(t.kind==="operate.today")return Object.freeze({binding:ie.binding,projection:ie});if(t.kind==="operate.cycles")return Object.freeze({binding:oe.binding,projection:oe});if(t.kind==="operate.review"){if(!_)return Object.freeze({binding:null,projection:Es});const F=pj(N,_);return Object.freeze({binding:F.binding,projection:F})}if(!C||!Q)return Object.freeze({binding:null,projection:Es});const R=S;if(!R)return Object.freeze({binding:null,projection:Es});if(t.kind==="operate.cycle"){if(de.data===null){const X=de.phase==="loading"||de.phase==="idle"?Rr(R):ri(R,de.error);return Object.freeze({binding:X.binding,projection:X})}const F=Te.identity.create({...R,...Bs(de.data)});return Object.freeze({binding:F,projection:ki(de,F,de.data,tt.cycles.createDetailValidator(F),sc(de.data),de.data.payload.mutationEnabled)})}if(K){if(q.data===null){const fe=q.phase==="loading"||q.phase==="idle"?Rr(R):ri(R,q.error);return Object.freeze({binding:fe.binding,projection:fe})}const F=Te.identity.create({...R,...Bs(q.data)}),X=K==="evidence"?tt.audit.createEvidenceValidator(F):K==="outcomes"||K==="outcome"?tt.audit.createOutcomeValidator(F):tt.audit.createHistoryValidator(F);return Object.freeze({binding:F,projection:ki(q,F,q.data,X,sc(q.data),!1)})}return Fu(t)?Object.freeze({binding:R,projection:Aj(re,R,t)}):Object.freeze({binding:R,projection:Rr(R)})},[q,K,re,S,de,C,oe,h,pe,N,_,t,Q,ie]);B.useEffect(()=>{d(R=>R!==null&&R.routeKey!==s?null:R)},[s]);const _e=B.useMemo(()=>c!==null&&c.routeKey===s&&(!Te.projection.isValidatedState(Me.projection)||Me.projection.data===null)?Object.freeze({binding:c.binding,projection:c.projection}):Me,[c,Me,s]);B.useEffect(()=>{if(!i||!A.data||A.phase!=="ready"||!m)return;const R=Te.identity.create({...m,eventHead:A.data.cursor.eventHead,viewHash:A.data.cursor.viewHash});let F=!0;const X=El.createSseReconciler({identity:R,initial:A.data,isCurrent:()=>F,onSnapshot:()=>{},onPatch:()=>A.refetch(),onRefetch:()=>A.refetch(),onStale:()=>A.refetch()}),fe=El.connectSse({origin:i,identity:R,reconciler:X,lastEventId:El.encodeCheckpoint(A.data.cursor)});return fe.completion.catch(()=>{}),()=>{F=!1,fe.close()}},[i,m,A]),B.useEffect(()=>{if(!i||!h||!j||!Z)return;const R=Bs(j),F=Te.identity.create({...Z,...R});let X=!0;const fe=Te.transport.createSseReconciler({identity:F,isCurrent:()=>X,onSnapshot:(ce,Ge)=>{var Ne,ue;(Ge.eventHead.sequence!==((Ne=R.eventHead)==null?void 0:Ne.sequence)||Ge.eventHead.hash!==((ue=R.eventHead)==null?void 0:ue.hash)||Ge.viewHash!==R.viewHash)&&(b.refetch(),w.refetch())},onPatch:()=>{b.refetch(),w.refetch()},onRefetch:()=>{b.refetch(),w.refetch()},onStale:()=>{b.refetch(),w.refetch()}}),se=Te.transport.connectSse({origin:i,identity:F,reconciler:fe});return se.completion.catch(()=>{}),()=>{X=!1,se.close()}},[w,i,h,j,Z,b]);const k=B.useCallback(async()=>{const R=_e;R.binding!==null&&Te.projection.isValidatedState(R.projection)&&R.projection.data!==null&&d(Object.freeze({routeKey:s,binding:R.binding,projection:R.projection}));try{let F;if(t.kind==="operate.review"&&_){const X=await N.reconcile();F=pj(Object.freeze({phase:"ready",data:X,error:null,refetch:N.refetch,reconcile:N.reconcile}),_)}else if(Fu(t)&&S){const X=await re.reconcile();F=Aj(Object.freeze({phase:"ready",data:X,error:null,refetch:re.refetch,reconcile:re.reconcile}),S,t)}else if(t.product==="planning"&&y){const X=await A.reconcile();F=hj(Object.freeze({phase:"ready",data:X,error:null,refetch:A.refetch,reconcile:A.reconcile}),y)}else throw new Te.projection.ValidationError("$.route","does not own an exact reconciliation read");if(!Te.projection.isValidatedState(F)||F.data===null)throw new Te.projection.ValidationError("$.projection","did not return a verified projection");return d(null),F}catch(F){const X=R.binding!==null&&Te.projection.isValidatedState(R.projection)&&R.projection.data!==null,fe=Gr(F,X),se=X?WF(R.projection,fe):R.binding===null?R.projection:ri(R.binding,fe);return X&&R.binding!==null&&d(Object.freeze({routeKey:s,binding:R.binding,projection:se})),se}},[re,S,_e,y,A,N,_,t,s]);return Object.freeze({binding:_e.binding,projection:_e.projection,planningProjection:pe,operateCyclesProjection:oe,operateSearchBindings:xe,operateReviewNavigation:W,refetchCurrent:k})}function mj(e){return e!==void 0?e:typeof window>"u"?"":window.location.hash}function c8(e,t){return e!==void 0||typeof window>"u"?()=>{}:(window.addEventListener("hashchange",t),()=>window.removeEventListener("hashchange",t))}function l8({buildId:e,initialHash:t,identity:i,connection:s,bootstrap:c,bootPhase:d,bootDetail:u}){const h=B.useSyncExternalStore(O=>c8(t,O),()=>mj(t),()=>mj(t)),g=c===void 0&&s===void 0,[m,y]=B.useState(c??null),[A,E]=B.useState(d??(g?"checking":"compatible")),[b,w]=B.useState(u??null);B.useEffect(()=>{if(!g)return;const O=new AbortController;return E("checking"),w("Waiting for OpenPlanr to return a validated bootstrap envelope."),F3(e,{signal:O.signal}).then(_=>{y(_.bootstrap),E(_.phase==="compatible"?"compatible":_.phase),w(_.detail)}).catch(()=>{}),()=>O.abort()},[e,g]);const j=B.useMemo(()=>s??NR(m,e,b),[m,b,e,s]),I=B.useMemo(()=>i??RR(m),[m,i]),Q=B.useMemo(()=>si(h),[h]),C=Q.kind==="system.diagnostics"||A==="incompatible"||j.state==="incompatible",S=o8(A==="compatible"&&j.state!=="incompatible"&&Q.product!==null?m:null,Q);return r.jsxs(IR,{buildId:e,initialHash:C?ui(_j):t,identity:I,connection:j,bootstrap:m,bootPhase:A,bootDetail:b,binding:S.binding,projection:S.projection,planningProjection:S.planningProjection,operateCyclesProjection:S.operateCyclesProjection,operateSearchBindings:S.operateSearchBindings,operateReviewNavigation:S.operateReviewNavigation,refetchCurrent:S.refetchCurrent,children:[r.jsx(CR,{}),r.jsx(Y3,{})]})}const NO=document.querySelector("#root");if(!NO)throw new Error("OpenPlanr dashboard root element is missing.");UN.createRoot(NO).render(r.jsx(B.StrictMode,{children:r.jsx(l8,{buildId:"dashboard-0.1.20-f9627a3f9c7c4d2d"})}));
|
|
572
|
-
//# sourceMappingURL=index-
|
|
571
|
+
`)}if(w.done){if(A.trim())return me("$","Planning live response ended mid-frame");break}}}finally{m.releaseLock()}})().catch(g=>{if(!t.signal.aborted)throw g instanceof ee?g:new ee("$","Planning live response failed safely")}).finally(()=>{var g;return(g=e.signal)==null?void 0:g.removeEventListener("abort",i)});return Object.freeze({completion:d,close:()=>{var g;t.abort(),e.reconciler.dispose(),(g=e.signal)==null||g.removeEventListener("abort",i)}})}const LF=Object.freeze({connectSse:$F,createSseReconciler:GF,encodeCheckpoint:UF,fetchGraph:HF,parseGraphEnvelope:wf}),PF=Object.freeze(Object.defineProperty({__proto__:null,planningRuntime:LF},Symbol.toStringTag,{value:"Module"})),FF=Object.freeze({create:Ze}),VF=Object.freeze({ValidationError:ee,isValidatedState:Ke,parseSafeError:Mj,parseState:Ho,statePolicy:zo}),qF=Object.freeze({parse:si}),KF=Object.freeze({connectSse:DS,createSseReconciler:RS}),JF=Object.freeze({identity:FF,projection:VF,routing:qF,transport:KF}),ZF=Object.freeze(Object.defineProperty({__proto__:null,dashboardRuntime:JF},Symbol.toStringTag,{value:"Module"})),{operateRuntime:tt}=vF,{planningRuntime:El}=PF,{dashboardRuntime:Te}=ZF,CO=new Set(["ready","read-only","stale","partial","blocked","offline"]),Es=Te.projection.parseState({kind:"booting",binding:null,data:null,reasonCodes:[],error:null,mutationEnabled:!1,policy:Te.projection.statePolicy("booting")}),SO=Te.routing.parse("#/overview");function OO(e){return`DASHBOARD_${e.toUpperCase().replace("-","_")}`}function Rr(e){return Te.projection.parseState({kind:"loading",binding:e,data:null,reasonCodes:[],error:null,mutationEnabled:!1,policy:Te.projection.statePolicy("loading")},{currentBinding:e})}function _O(e,t=null){return Te.projection.parseState({kind:"unavailable",binding:e,data:null,reasonCodes:["DASHBOARD_UNAVAILABLE"],error:t,mutationEnabled:!1,policy:Te.projection.statePolicy("unavailable")},{currentBinding:e})}function Gr(e,t=!1){const s=(e!==null&&typeof e=="object"&&!Array.isArray(e)?e:{}).code==="DASHBOARD_RESPONSE_INVALID"||e instanceof Te.projection.ValidationError;return Te.projection.parseSafeError({code:t||!s?"DASHBOARD_READ_FAILED":"DASHBOARD_RESPONSE_INVALID",retryable:!1,context:{operation:"dashboard.projection.read"}})}function ri(e,t){const i=t??Gr(void 0);if(i.code!=="DASHBOARD_RESPONSE_INVALID")return _O(e,i);const s=Te.projection.parseSafeError({code:"DASHBOARD_RESPONSE_INVALID",retryable:!1,context:{}});return Te.projection.parseState({kind:"corrupt",binding:null,data:null,reasonCodes:["DASHBOARD_CORRUPT"],error:s,mutationEnabled:!1,policy:Te.projection.statePolicy("corrupt")})}function XF(e,t,i,s,c=!1,d=null){if(!CO.has(e))throw new Error("Unsupported owner presentation state.");return Te.projection.parseState({kind:e,binding:t,data:i,reasonCodes:e==="ready"?[]:[OO(e)],error:d,mutationEnabled:e==="ready"&&c,policy:Te.projection.statePolicy(e)},{currentBinding:t,validateData:s})}function WF(e,t){return!Te.projection.isValidatedState(e)||e.binding===null||e.data===null?e:Te.projection.parseState({kind:"stale",binding:e.binding,data:e.data,reasonCodes:["DASHBOARD_STALE"],error:t,mutationEnabled:!1,policy:Te.projection.statePolicy("stale")},{currentBinding:e.binding,validateData:i=>i!==null})}function e8(e,t){return Te.projection.parseState({kind:e,binding:t,data:null,reasonCodes:[OO(e)],error:null,mutationEnabled:!1,policy:Te.projection.statePolicy(e)},{currentBinding:t})}function vs(e,t){const i=B.useRef(t);i.current=t;const s=B.useRef(e);s.current=e;const c=B.useRef(null),d=B.useRef(null),[u,h]=B.useState(0),[g,m]=B.useState(()=>Object.freeze({key:null,revision:0,phase:"idle",data:null,error:null})),y=B.useCallback(()=>h(I=>I+1),[]),A=B.useCallback(()=>{var S;if(c.current!==null)return c.current;const I=s.current;if(I===null)return Promise.reject(new Error("Owner read is unavailable."));const Q=new AbortController;(S=d.current)==null||S.abort(),d.current=Q,m(O=>Object.freeze({key:I,revision:O.revision,phase:"loading",data:O.key===I?O.data:null,error:null}));const C=i.current(Q.signal).then(O=>{if(Q.signal.aborted||s.current!==I)throw new DOMException("Cancelled","AbortError");return m(_=>Object.freeze({key:I,revision:_.revision,phase:"ready",data:O,error:null})),O}).catch(O=>{throw!Q.signal.aborted&&s.current===I&&m(_=>Object.freeze({key:I,revision:_.revision,phase:"failed",data:_.key===I?_.data:null,error:Gr(O,_.key===I&&_.data!==null)})),O}).finally(()=>{c.current===C&&(c.current=null),d.current===Q&&(d.current=null)});return c.current=C,C},[]);B.useEffect(()=>{var Q;if((Q=d.current)==null||Q.abort(),d.current=null,c.current=null,e===null){m(Object.freeze({key:null,revision:u,phase:"idle",data:null,error:null}));return}const I=new AbortController;return m(C=>Object.freeze({key:e,revision:u,phase:"loading",data:C.key===e?C.data:null,error:null})),i.current(I.signal).then(C=>{I.signal.aborted||m(Object.freeze({key:e,revision:u,phase:"ready",data:C,error:null}))}).catch(C=>{I.signal.aborted||m(S=>Object.freeze({key:e,revision:u,phase:"failed",data:S.key===e?S.data:null,error:Gr(C,S.key===e&&S.data!==null)}))}),()=>I.abort()},[e,u]);const E=g.key===e&&g.revision===u,b=E?g.phase:e===null?"idle":"loading",w=E?g.data:null,j=E?g.error:null;return B.useMemo(()=>Object.freeze({phase:b,data:w,error:j,refetch:y,reconcile:A}),[w,j,b,A,y])}function t8(e){return e===null?null:JSON.stringify(e)}function n8(e){return e.product==="planning"?e:SO}function a8(e){return e.kind==="operate.evidence"||e.kind==="operate.evidence-item"?"evidence":e.kind==="operate.outcomes"?"outcomes":e.kind==="operate.outcome"?"outcome":e.kind==="operate.history"?"history":null}function Fu(e){return e.kind==="operate.actions"||e.kind==="operate.action"||e.kind==="operate.action-planning"||e.kind==="operate.inbox"||e.kind==="operate.inbox-item"||e.kind==="operate.recovery"}function i8(e){return e.kind==="operate.action-planning"?{kind:"operate.action",product:"operate",subjectId:e.subjectId}:e}function Bs(e){return Object.freeze({eventHead:e.payload.eventHead,viewHash:e.payload.viewHash})}function sc(e){const t=e.payload.status;if(!CO.has(t))throw new Te.projection.ValidationError("$.payload.status","contains an unsupported display status");return t}function r8(e){return e.payload.status==="terminal"?"read-only":sc(e)}function pj(e,t){if(e.data===null)return e.phase==="loading"||e.phase==="idle"?Rr(t):ri(t,e.error);const i=Te.identity.create({...t,eventHead:e.data.payload.sourceEventHead,viewHash:e.data.payload.sourceViewHash});return ki(e,i,e.data,tt.review.createValidator(i),r8(e.data),e.data.payload.mutationEnabled)}function ki(e,t,i,s,c,d=!1){const u=e.phase==="failed"?"stale":e.phase==="loading"||e.phase==="idle"?"refreshing":c;try{return XF(u,t,i,s,d,u==="stale"?e.error??Gr(void 0,!0):null)}catch(h){return ri(t,Gr(h))}}function hj(e,t){if(e.data===null)return e.phase==="loading"||e.phase==="idle"?Rr(t):ri(t,e.error);const i=Te.identity.create({...t,eventHead:e.data.cursor.eventHead,viewHash:e.data.cursor.viewHash});return ki(e,i,e.data,s=>{try{return El.parseGraphEnvelope(s,t),!0}catch{return!1}},"ready")}function gj(e,t,i,s){var u;if(e.data===null)return e.phase==="loading"||e.phase==="idle"?Rr(t):ri(t,e.error);const c=Te.identity.create({...t,...Bs(e.data)}),d=i==="today"?tt.today.createValidator(c):tt.cycles.createListValidator(c);return e.phase!=="ready"?ki(e,c,e.data,d,sc(e.data),e.data.payload.mutationEnabled):i==="today"&&e.data.payload.surface==="today"&&e.data.payload.status==="ready"&&e.data.payload.data.activeCycle===null?d(e.data)?s?s.phase==="loading"||s.phase==="idle"?ki(Object.freeze({...e,phase:"loading",error:null}),c,e.data,d,"ready"):s.phase==="failed"?ki(Object.freeze({...e,phase:"failed",error:s.error}),c,e.data,d,"ready"):((u=s.data)==null?void 0:u.payload.surface)!=="cycles"?ri(c,Gr(new Te.projection.ValidationError("$.payload.surface","does not contain the required cycles display"))):e8(s.data.payload.data.cycles.length===0?"first-use":"empty",c):Rr(c):ri(c,Gr(new Te.projection.ValidationError("$.data","failed its owner-boundary contract"))):ki(e,c,e.data,d,sc(e.data),e.data.payload.mutationEnabled)}function s8(e){if(e.subjectId===null)throw new Error("Action display identity requires a subject.");return Te.identity.create({...e,route:`#/operate/actions/${encodeURIComponent(e.subjectId)}`})}function Aj(e,t,i){if(e.data===null)return e.phase==="loading"||e.phase==="idle"?Rr(t):ri(t,e.error);const s=Te.identity.create({...t,...Bs(e.data)});let c;if(i.kind==="operate.actions")c=tt.actions.createListValidator(s);else if(i.kind==="operate.action"||i.kind==="operate.action-planning"){const d=i.kind==="operate.action-planning"?s8(s):s;c=tt.actions.createDetailValidator(d)}else if(i.kind==="operate.inbox"||i.kind==="operate.inbox-item")c=tt.actions.createInboxValidator(s);else if(i.kind==="operate.recovery")c=tt.actions.createRecoveryValidator(s);else return _O(s);return ki(e,s,e.data,c,sc(e.data),i.kind==="operate.action-planning"?!1:e.data.payload.mutationEnabled)}function o8(e,t){var ae,Ae;const i=(e==null?void 0:e.origin)??null,s=JSON.stringify(t),[c,d]=B.useState(null),u=(e==null?void 0:e.queryRoots.planning)??null,h=(e==null?void 0:e.queryRoots.operate)??null,g=B.useMemo(()=>n8(t),[t]),m=B.useMemo(()=>u?tt.transport.identityFromRoot(u,SO):null,[u]),y=B.useMemo(()=>u?tt.transport.identityFromRoot(u,g):null,[u,g]),A=vs(m?JSON.stringify(m):null,R=>{if(!i||!m)throw new Error("Planning query root is unavailable.");return El.fetchGraph({origin:i,identity:m,signal:R})}),E=t8(h),b=vs(E,R=>{if(!i||!h)throw new Error("Operate query root is unavailable.");return tt.transport.fetchRootDisplay({origin:i,root:h,surface:"today",signal:R})}),w=vs(E,R=>{if(!i||!h)throw new Error("Operate query root is unavailable.");return tt.transport.fetchRootDisplay({origin:i,root:h,surface:"cycles",signal:R})}),j=((ae=b.data)==null?void 0:ae.payload.surface)==="today"?b.data:null,I=(j==null?void 0:j.payload.surface)==="today"?((Ae=j.payload.data.activeCycle)==null?void 0:Ae.cycleId)??null:null,Q=t.kind==="operate.cycle"?t.subjectId:t.kind==="operate.review"?t.cycleId:I,C=j?Bs(j):null,S=B.useMemo(()=>h&&t.product==="operate"&&Q&&C?tt.transport.identityFromRoot(h,t,{cycleId:Q,eventHead:C.eventHead,viewHash:C.viewHash}):null,[C,h,t,Q]),O=i&&h&&S?JSON.stringify({root:h,binding:S}):null,_=B.useMemo(()=>h&&t.kind==="operate.review"?tt.transport.identityFromRoot(h,t,{cycleId:t.cycleId}):null,[h,t]),T=i&&_?JSON.stringify({root:h,route:_.route}):null,N=vs(T,R=>{if(!i||!h||t.kind!=="operate.review")throw new Error("Operate Review query custody is incomplete.");return tt.review.fetch({origin:i,root:h,cycleId:t.cycleId,reviewId:t.subjectId,signal:R})}),$=B.useMemo(()=>i8(t),[t]),G=B.useMemo(()=>h&&Fu(t)&&Q&&C?tt.transport.identityFromRoot(h,$,{cycleId:Q,eventHead:C.eventHead,viewHash:C.viewHash}):null,[$,C,h,t,Q]),U=i&&h&&G?JSON.stringify({root:h,binding:G}):null,K=a8(t),q=vs(K?O:null,R=>{if(!i||!h||!Q||!K)throw new Error("Operate audit query custody is incomplete.");return tt.transport.fetchAuditDisplay({origin:i,root:h,route:t,surface:K,cycleId:Q,signal:R})}),de=vs(t.kind==="operate.cycle"?O:null,R=>{if(!i||!h||t.kind!=="operate.cycle")throw new Error("Operate Cycle query custody is incomplete.");return tt.transport.fetchCycleDisplay({origin:i,root:h,cycleId:t.subjectId,signal:R})}),re=vs(Fu(t)?U:null,R=>{if(!i||!G)throw new Error("Operate route display custody is incomplete.");if(t.kind==="operate.actions")return tt.actions.fetchList({origin:i,identity:G,signal:R});if(t.kind==="operate.action"||t.kind==="operate.action-planning")return tt.actions.fetchDetail({origin:i,identity:G,signal:R});if(t.kind==="operate.inbox"||t.kind==="operate.inbox-item")return tt.actions.fetchInbox({origin:i,identity:G,signal:R});if(t.kind==="operate.recovery")return tt.actions.fetchRecovery({origin:i,identity:G,signal:R});throw new Error("Operate route does not own a bound display read.")}),pe=B.useMemo(()=>y?hj(A,y):Es,[y,A]),Z=B.useMemo(()=>{if(!h)return null;const R=Te.routing.parse("#/operate/today");return tt.transport.identityFromRoot(h,R,{cycleId:I})},[I,h]),ie=B.useMemo(()=>Z?gj(b,Z,"today",w):Es,[w,Z,b]),W=B.useMemo(()=>{if(!ie.binding||!Q)return null;const R=tt.today.resolveModel({current:ie},ie.binding);return(R==null?void 0:R.kind)==="surface"?tt.review.uniqueNavigationForCycle(R,Q):null},[Q,ie]),le=B.useMemo(()=>h?tt.transport.identityFromRoot(h,Te.routing.parse("#/operate/cycles")):null,[h]),oe=B.useMemo(()=>le?gj(w,le,"cycles"):Es,[le,w]),xe=B.useMemo(()=>{var X;if(!h||((X=w.data)==null?void 0:X.payload.surface)!=="cycles")return Object.freeze([]);const R=Bs(w.data),F=Te.routing.parse("#/operate/cycles");return Object.freeze(w.data.payload.data.cycles.map(fe=>tt.transport.identityFromRoot(h,F,{cycleId:fe.cycleId,eventHead:R.eventHead,viewHash:R.viewHash})))},[w,h]),Me=B.useMemo(()=>{if(t.product==="planning")return Object.freeze({binding:pe.binding,projection:pe});if(t.product!=="operate"||!h)return Object.freeze({binding:null,projection:Es});if(t.kind==="operate.today")return Object.freeze({binding:ie.binding,projection:ie});if(t.kind==="operate.cycles")return Object.freeze({binding:oe.binding,projection:oe});if(t.kind==="operate.review"){if(!_)return Object.freeze({binding:null,projection:Es});const F=pj(N,_);return Object.freeze({binding:F.binding,projection:F})}if(!C||!Q)return Object.freeze({binding:null,projection:Es});const R=S;if(!R)return Object.freeze({binding:null,projection:Es});if(t.kind==="operate.cycle"){if(de.data===null){const X=de.phase==="loading"||de.phase==="idle"?Rr(R):ri(R,de.error);return Object.freeze({binding:X.binding,projection:X})}const F=Te.identity.create({...R,...Bs(de.data)});return Object.freeze({binding:F,projection:ki(de,F,de.data,tt.cycles.createDetailValidator(F),sc(de.data),de.data.payload.mutationEnabled)})}if(K){if(q.data===null){const fe=q.phase==="loading"||q.phase==="idle"?Rr(R):ri(R,q.error);return Object.freeze({binding:fe.binding,projection:fe})}const F=Te.identity.create({...R,...Bs(q.data)}),X=K==="evidence"?tt.audit.createEvidenceValidator(F):K==="outcomes"||K==="outcome"?tt.audit.createOutcomeValidator(F):tt.audit.createHistoryValidator(F);return Object.freeze({binding:F,projection:ki(q,F,q.data,X,sc(q.data),!1)})}return Fu(t)?Object.freeze({binding:R,projection:Aj(re,R,t)}):Object.freeze({binding:R,projection:Rr(R)})},[q,K,re,S,de,C,oe,h,pe,N,_,t,Q,ie]);B.useEffect(()=>{d(R=>R!==null&&R.routeKey!==s?null:R)},[s]);const _e=B.useMemo(()=>c!==null&&c.routeKey===s&&(!Te.projection.isValidatedState(Me.projection)||Me.projection.data===null)?Object.freeze({binding:c.binding,projection:c.projection}):Me,[c,Me,s]);B.useEffect(()=>{if(!i||!A.data||A.phase!=="ready"||!m)return;const R=Te.identity.create({...m,eventHead:A.data.cursor.eventHead,viewHash:A.data.cursor.viewHash});let F=!0;const X=El.createSseReconciler({identity:R,initial:A.data,isCurrent:()=>F,onSnapshot:()=>{},onPatch:()=>A.refetch(),onRefetch:()=>A.refetch(),onStale:()=>A.refetch()}),fe=El.connectSse({origin:i,identity:R,reconciler:X,lastEventId:El.encodeCheckpoint(A.data.cursor)});return fe.completion.catch(()=>{}),()=>{F=!1,fe.close()}},[i,m,A]),B.useEffect(()=>{if(!i||!h||!j||!Z)return;const R=Bs(j),F=Te.identity.create({...Z,...R});let X=!0;const fe=Te.transport.createSseReconciler({identity:F,isCurrent:()=>X,onSnapshot:(ce,Ge)=>{var Ne,ue;(Ge.eventHead.sequence!==((Ne=R.eventHead)==null?void 0:Ne.sequence)||Ge.eventHead.hash!==((ue=R.eventHead)==null?void 0:ue.hash)||Ge.viewHash!==R.viewHash)&&(b.refetch(),w.refetch())},onPatch:()=>{b.refetch(),w.refetch()},onRefetch:()=>{b.refetch(),w.refetch()},onStale:()=>{b.refetch(),w.refetch()}}),se=Te.transport.connectSse({origin:i,identity:F,reconciler:fe});return se.completion.catch(()=>{}),()=>{X=!1,se.close()}},[w,i,h,j,Z,b]);const k=B.useCallback(async()=>{const R=_e;R.binding!==null&&Te.projection.isValidatedState(R.projection)&&R.projection.data!==null&&d(Object.freeze({routeKey:s,binding:R.binding,projection:R.projection}));try{let F;if(t.kind==="operate.review"&&_){const X=await N.reconcile();F=pj(Object.freeze({phase:"ready",data:X,error:null,refetch:N.refetch,reconcile:N.reconcile}),_)}else if(Fu(t)&&S){const X=await re.reconcile();F=Aj(Object.freeze({phase:"ready",data:X,error:null,refetch:re.refetch,reconcile:re.reconcile}),S,t)}else if(t.product==="planning"&&y){const X=await A.reconcile();F=hj(Object.freeze({phase:"ready",data:X,error:null,refetch:A.refetch,reconcile:A.reconcile}),y)}else throw new Te.projection.ValidationError("$.route","does not own an exact reconciliation read");if(!Te.projection.isValidatedState(F)||F.data===null)throw new Te.projection.ValidationError("$.projection","did not return a verified projection");return d(null),F}catch(F){const X=R.binding!==null&&Te.projection.isValidatedState(R.projection)&&R.projection.data!==null,fe=Gr(F,X),se=X?WF(R.projection,fe):R.binding===null?R.projection:ri(R.binding,fe);return X&&R.binding!==null&&d(Object.freeze({routeKey:s,binding:R.binding,projection:se})),se}},[re,S,_e,y,A,N,_,t,s]);return Object.freeze({binding:_e.binding,projection:_e.projection,planningProjection:pe,operateCyclesProjection:oe,operateSearchBindings:xe,operateReviewNavigation:W,refetchCurrent:k})}function mj(e){return e!==void 0?e:typeof window>"u"?"":window.location.hash}function c8(e,t){return e!==void 0||typeof window>"u"?()=>{}:(window.addEventListener("hashchange",t),()=>window.removeEventListener("hashchange",t))}function l8({buildId:e,initialHash:t,identity:i,connection:s,bootstrap:c,bootPhase:d,bootDetail:u}){const h=B.useSyncExternalStore(O=>c8(t,O),()=>mj(t),()=>mj(t)),g=c===void 0&&s===void 0,[m,y]=B.useState(c??null),[A,E]=B.useState(d??(g?"checking":"compatible")),[b,w]=B.useState(u??null);B.useEffect(()=>{if(!g)return;const O=new AbortController;return E("checking"),w("Waiting for OpenPlanr to return a validated bootstrap envelope."),F3(e,{signal:O.signal}).then(_=>{y(_.bootstrap),E(_.phase==="compatible"?"compatible":_.phase),w(_.detail)}).catch(()=>{}),()=>O.abort()},[e,g]);const j=B.useMemo(()=>s??NR(m,e,b),[m,b,e,s]),I=B.useMemo(()=>i??RR(m),[m,i]),Q=B.useMemo(()=>si(h),[h]),C=Q.kind==="system.diagnostics"||A==="incompatible"||j.state==="incompatible",S=o8(A==="compatible"&&j.state!=="incompatible"&&Q.product!==null?m:null,Q);return r.jsxs(IR,{buildId:e,initialHash:C?ui(_j):t,identity:I,connection:j,bootstrap:m,bootPhase:A,bootDetail:b,binding:S.binding,projection:S.projection,planningProjection:S.planningProjection,operateCyclesProjection:S.operateCyclesProjection,operateSearchBindings:S.operateSearchBindings,operateReviewNavigation:S.operateReviewNavigation,refetchCurrent:S.refetchCurrent,children:[r.jsx(CR,{}),r.jsx(Y3,{})]})}const NO=document.querySelector("#root");if(!NO)throw new Error("OpenPlanr dashboard root element is missing.");UN.createRoot(NO).render(r.jsx(B.StrictMode,{children:r.jsx(l8,{buildId:"dashboard-0.1.21-ff75a0929e356f12"})}));
|
|
572
|
+
//# sourceMappingURL=index-L8qtwqv6.js.map
|