@openrig/cli 0.5.12 → 0.5.14
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/daemon/assets/plugins/openrig-core/skills/messaging-the-human/SKILL.md +40 -5
- package/daemon/context-packs/onboarding-width/manifest.yaml +1 -1
- package/daemon/context-packs/onboarding-width/public-what-you-can-do.md +89 -10
- package/daemon/context-packs/skills/agent-operated-software/manifest.yaml +1 -1
- package/daemon/context-packs/skills/agent-operated-workflows/manifest.yaml +1 -1
- package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +1 -1
- package/daemon/context-packs/skills/claude-compaction-restore/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/messaging-the-human/SKILL.md +40 -5
- package/daemon/context-packs/skills/core/messaging-the-human/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
- package/daemon/context-packs/skills/delegating-work/manifest.yaml +1 -1
- package/daemon/context-packs/skills/forming-an-openrig-mental-model/manifest.yaml +1 -1
- package/daemon/context-packs/skills/loading-addressable-markdown/manifest.yaml +1 -1
- package/daemon/context-packs/skills/mission-slice-sop/manifest.yaml +1 -1
- package/daemon/context-packs/skills/openrig-operating-model/manifest.yaml +1 -1
- package/daemon/context-packs/skills/openrig-user/manifest.yaml +1 -1
- package/daemon/context-packs/skills/orienting-to-an-inherited-seat/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/development-team/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/orchestration-team/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/oversight-team/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/review-team/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
- package/daemon/context-packs/skills/queue-handoff/manifest.yaml +1 -1
- package/daemon/context-packs/skills/refocusing/manifest.yaml +1 -1
- package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/manifest.yaml +1 -1
- package/daemon/context-packs/skills/seat-continuity-and-handover/manifest.yaml +1 -1
- package/daemon/context-packs/skills/session-compaction-and-restore/manifest.yaml +1 -1
- package/daemon/context-packs/skills/software-for-agents/manifest.yaml +1 -1
- package/daemon/context-packs/world-example/manifest.yaml +1 -1
- package/daemon/context-packs/world-public/manifest.yaml +1 -1
- package/daemon/dist/attention-surface.d.ts +38 -0
- package/daemon/dist/attention-surface.d.ts.map +1 -0
- package/daemon/dist/attention-surface.js +3 -0
- package/daemon/dist/attention-surface.js.map +1 -0
- package/daemon/dist/build-info.js +3 -3
- package/daemon/dist/db/all-migrations.d.ts +1 -1
- package/daemon/dist/db/all-migrations.d.ts.map +1 -1
- package/daemon/dist/db/all-migrations.js +12 -2
- package/daemon/dist/db/all-migrations.js.map +1 -1
- package/daemon/dist/db/migrations/080_scoped_operating_posture.d.ts +4 -0
- package/daemon/dist/db/migrations/080_scoped_operating_posture.d.ts.map +1 -0
- package/daemon/dist/db/migrations/080_scoped_operating_posture.js +21 -0
- package/daemon/dist/db/migrations/080_scoped_operating_posture.js.map +1 -0
- package/daemon/dist/db/migrations/081_human_notification_intent.d.ts +3 -0
- package/daemon/dist/db/migrations/081_human_notification_intent.d.ts.map +1 -0
- package/daemon/dist/db/migrations/081_human_notification_intent.js +9 -0
- package/daemon/dist/db/migrations/081_human_notification_intent.js.map +1 -0
- package/daemon/dist/db/migrations/082_archive_identity_provenance.d.ts +5 -0
- package/daemon/dist/db/migrations/082_archive_identity_provenance.d.ts.map +1 -0
- package/daemon/dist/db/migrations/082_archive_identity_provenance.js +7 -0
- package/daemon/dist/db/migrations/082_archive_identity_provenance.js.map +1 -0
- package/daemon/dist/db/migrations/083_review_read_indexes.d.ts +4 -0
- package/daemon/dist/db/migrations/083_review_read_indexes.d.ts.map +1 -0
- package/daemon/dist/db/migrations/083_review_read_indexes.js +12 -0
- package/daemon/dist/db/migrations/083_review_read_indexes.js.map +1 -0
- package/daemon/dist/db/migrations/084_inventory_event_indexes.d.ts +5 -0
- package/daemon/dist/db/migrations/084_inventory_event_indexes.d.ts.map +1 -0
- package/daemon/dist/db/migrations/084_inventory_event_indexes.js +14 -0
- package/daemon/dist/db/migrations/084_inventory_event_indexes.js.map +1 -0
- package/daemon/dist/domain/execution-view.d.ts +1 -0
- package/daemon/dist/domain/execution-view.d.ts.map +1 -1
- package/daemon/dist/domain/execution-view.js +38 -19
- package/daemon/dist/domain/execution-view.js.map +1 -1
- package/daemon/dist/domain/files/file-read.d.ts +17 -0
- package/daemon/dist/domain/files/file-read.d.ts.map +1 -0
- package/daemon/dist/domain/files/file-read.js +24 -0
- package/daemon/dist/domain/files/file-read.js.map +1 -0
- package/daemon/dist/domain/gateway/connections-projection.d.ts +4 -4
- package/daemon/dist/domain/gateway/slack/message.d.ts +13 -12
- package/daemon/dist/domain/gateway/slack/message.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/message.js +40 -77
- package/daemon/dist/domain/gateway/slack/message.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/outbound-driver.d.ts +2 -0
- package/daemon/dist/domain/gateway/slack/outbound-driver.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/outbound-driver.js +2 -0
- package/daemon/dist/domain/gateway/slack/outbound-driver.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/queue-access.d.ts +2 -0
- package/daemon/dist/domain/gateway/slack/queue-access.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/queue-access.js +2 -0
- package/daemon/dist/domain/gateway/slack/queue-access.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +4 -1
- package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/slack-delivery.js +85 -3
- package/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/slack-subsystem.js +8 -1
- package/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -1
- package/daemon/dist/domain/health-context.d.ts +3 -0
- package/daemon/dist/domain/health-context.d.ts.map +1 -1
- package/daemon/dist/domain/health-context.js +78 -6
- package/daemon/dist/domain/health-context.js.map +1 -1
- package/daemon/dist/domain/health-detectors.d.ts +2 -1
- package/daemon/dist/domain/health-detectors.d.ts.map +1 -1
- package/daemon/dist/domain/health-detectors.js +8 -2
- package/daemon/dist/domain/health-detectors.js.map +1 -1
- package/daemon/dist/domain/health-diagnosis.d.ts +51 -1
- package/daemon/dist/domain/health-diagnosis.d.ts.map +1 -1
- package/daemon/dist/domain/health-diagnosis.js +60 -9
- package/daemon/dist/domain/health-diagnosis.js.map +1 -1
- package/daemon/dist/domain/health-passive-ceremony.d.ts +7 -1
- package/daemon/dist/domain/health-passive-ceremony.d.ts.map +1 -1
- package/daemon/dist/domain/health-passive-ceremony.js +59 -26
- package/daemon/dist/domain/health-passive-ceremony.js.map +1 -1
- package/daemon/dist/domain/health-projection.d.ts +2 -0
- package/daemon/dist/domain/health-projection.d.ts.map +1 -1
- package/daemon/dist/domain/health-projection.js.map +1 -1
- package/daemon/dist/domain/policies/delivery-digest-flush.d.ts.map +1 -1
- package/daemon/dist/domain/policies/delivery-digest-flush.js +23 -3
- package/daemon/dist/domain/policies/delivery-digest-flush.js.map +1 -1
- package/daemon/dist/domain/proof/judgments.d.ts +10 -3
- package/daemon/dist/domain/proof/judgments.d.ts.map +1 -1
- package/daemon/dist/domain/proof/judgments.js +26 -8
- package/daemon/dist/domain/proof/judgments.js.map +1 -1
- package/daemon/dist/domain/queue-repository.d.ts +19 -6
- package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
- package/daemon/dist/domain/queue-repository.js +61 -11
- package/daemon/dist/domain/queue-repository.js.map +1 -1
- package/daemon/dist/domain/queue-retention.d.ts.map +1 -1
- package/daemon/dist/domain/queue-retention.js +6 -2
- package/daemon/dist/domain/queue-retention.js.map +1 -1
- package/daemon/dist/domain/queue-transition-log.d.ts +1 -0
- package/daemon/dist/domain/queue-transition-log.d.ts.map +1 -1
- package/daemon/dist/domain/queue-transition-log.js +19 -7
- package/daemon/dist/domain/queue-transition-log.js.map +1 -1
- package/daemon/dist/domain/review/fleet-compose.d.ts +7 -6
- package/daemon/dist/domain/review/fleet-compose.d.ts.map +1 -1
- package/daemon/dist/domain/review/fleet-compose.js +25 -11
- package/daemon/dist/domain/review/fleet-compose.js.map +1 -1
- package/daemon/dist/domain/rig-mode/operating-posture.d.ts +49 -0
- package/daemon/dist/domain/rig-mode/operating-posture.d.ts.map +1 -0
- package/daemon/dist/domain/rig-mode/operating-posture.js +255 -0
- package/daemon/dist/domain/rig-mode/operating-posture.js.map +1 -0
- package/daemon/dist/domain/rig-mode/rig-mode-defaults.d.ts.map +1 -1
- package/daemon/dist/domain/rig-mode/rig-mode-defaults.js +20 -0
- package/daemon/dist/domain/rig-mode/rig-mode-defaults.js.map +1 -1
- package/daemon/dist/domain/rig-mode/rig-mode-store.d.ts +2 -2
- package/daemon/dist/domain/rig-mode/rig-mode-store.d.ts.map +1 -1
- package/daemon/dist/domain/rig-mode/rig-mode-store.js +19 -3
- package/daemon/dist/domain/rig-mode/rig-mode-store.js.map +1 -1
- package/daemon/dist/domain/rig-mode/rig-mode-types.d.ts +12 -7
- package/daemon/dist/domain/rig-mode/rig-mode-types.d.ts.map +1 -1
- package/daemon/dist/domain/rig-mode/rig-mode-types.js +14 -3
- package/daemon/dist/domain/rig-mode/rig-mode-types.js.map +1 -1
- package/daemon/dist/domain/scope/scope-view-projection.d.ts +2 -2
- package/daemon/dist/domain/scope/scope-view-projection.d.ts.map +1 -1
- package/daemon/dist/domain/scope/scope-view-projection.js +2 -2
- package/daemon/dist/domain/scope/scope-view-projection.js.map +1 -1
- package/daemon/dist/domain/slices/slice-detail-projector.d.ts +1 -0
- package/daemon/dist/domain/slices/slice-detail-projector.d.ts.map +1 -1
- package/daemon/dist/domain/slices/slice-detail-projector.js +3 -0
- package/daemon/dist/domain/slices/slice-detail-projector.js.map +1 -1
- package/daemon/dist/domain/slices/slice-indexer.d.ts +4 -0
- package/daemon/dist/domain/slices/slice-indexer.d.ts.map +1 -1
- package/daemon/dist/domain/slices/slice-indexer.js +10 -1
- package/daemon/dist/domain/slices/slice-indexer.js.map +1 -1
- package/daemon/dist/domain/terminal/herdr-adapter.d.ts +2 -0
- package/daemon/dist/domain/terminal/herdr-adapter.d.ts.map +1 -1
- package/daemon/dist/domain/terminal/herdr-adapter.js +1 -1
- package/daemon/dist/domain/terminal/herdr-adapter.js.map +1 -1
- package/daemon/dist/domain/terminal/terminal-service.d.ts +30 -2
- package/daemon/dist/domain/terminal/terminal-service.d.ts.map +1 -1
- package/daemon/dist/domain/terminal/terminal-service.js +53 -13
- package/daemon/dist/domain/terminal/terminal-service.js.map +1 -1
- package/daemon/dist/domain/view-projector.d.ts +2 -0
- package/daemon/dist/domain/view-projector.d.ts.map +1 -1
- package/daemon/dist/domain/view-projector.js +1 -1
- package/daemon/dist/domain/view-projector.js.map +1 -1
- package/daemon/dist/domain/workspace/project-catalog.d.ts +18 -0
- package/daemon/dist/domain/workspace/project-catalog.d.ts.map +1 -0
- package/daemon/dist/domain/workspace/project-catalog.js +66 -0
- package/daemon/dist/domain/workspace/project-catalog.js.map +1 -0
- package/daemon/dist/domain/workspace/project-read.d.ts +29 -0
- package/daemon/dist/domain/workspace/project-read.d.ts.map +1 -0
- package/daemon/dist/domain/workspace/project-read.js +125 -0
- package/daemon/dist/domain/workspace/project-read.js.map +1 -0
- package/daemon/dist/health-projection-surface.d.ts +1 -0
- package/daemon/dist/health-projection-surface.d.ts.map +1 -1
- package/daemon/dist/local-reading-surface.d.ts +3 -0
- package/daemon/dist/local-reading-surface.d.ts.map +1 -0
- package/daemon/dist/local-reading-surface.js +3 -0
- package/daemon/dist/local-reading-surface.js.map +1 -0
- package/daemon/dist/project-catalog-surface.d.ts +2 -0
- package/daemon/dist/project-catalog-surface.d.ts.map +1 -0
- package/daemon/dist/project-catalog-surface.js +2 -0
- package/daemon/dist/project-catalog-surface.js.map +1 -0
- package/daemon/dist/routes/attention.d.ts +3 -0
- package/daemon/dist/routes/attention.d.ts.map +1 -0
- package/daemon/dist/routes/attention.js +155 -0
- package/daemon/dist/routes/attention.js.map +1 -0
- package/daemon/dist/routes/files.d.ts +1 -1
- package/daemon/dist/routes/files.d.ts.map +1 -1
- package/daemon/dist/routes/files.js +4 -24
- package/daemon/dist/routes/files.js.map +1 -1
- package/daemon/dist/routes/queue.d.ts +4 -18
- package/daemon/dist/routes/queue.d.ts.map +1 -1
- package/daemon/dist/routes/queue.js +23 -33
- package/daemon/dist/routes/queue.js.map +1 -1
- package/daemon/dist/routes/review.js +1 -1
- package/daemon/dist/routes/rig-mode.d.ts.map +1 -1
- package/daemon/dist/routes/rig-mode.js +67 -14
- package/daemon/dist/routes/rig-mode.js.map +1 -1
- package/daemon/dist/routes/rigs.js +5 -1
- package/daemon/dist/routes/rigs.js.map +1 -1
- package/daemon/dist/routes/scopes.d.ts.map +1 -1
- package/daemon/dist/routes/scopes.js +74 -20
- package/daemon/dist/routes/scopes.js.map +1 -1
- package/daemon/dist/routes/slices.d.ts +2 -2
- package/daemon/dist/routes/slices.d.ts.map +1 -1
- package/daemon/dist/routes/slices.js +18 -1
- package/daemon/dist/routes/slices.js.map +1 -1
- package/daemon/dist/routes/spec-library.d.ts.map +1 -1
- package/daemon/dist/routes/spec-library.js +11 -2
- package/daemon/dist/routes/spec-library.js.map +1 -1
- package/daemon/dist/routes/terminal.d.ts.map +1 -1
- package/daemon/dist/routes/terminal.js +14 -4
- package/daemon/dist/routes/terminal.js.map +1 -1
- package/daemon/dist/routes/views.d.ts.map +1 -1
- package/daemon/dist/routes/views.js +11 -1
- package/daemon/dist/routes/views.js.map +1 -1
- package/daemon/dist/server.d.ts +1 -0
- package/daemon/dist/server.d.ts.map +1 -1
- package/daemon/dist/server.js +3 -0
- package/daemon/dist/server.js.map +1 -1
- package/daemon/dist/startup.d.ts.map +1 -1
- package/daemon/dist/startup.js +19 -5
- package/daemon/dist/startup.js.map +1 -1
- package/daemon/docs/reference/getting-started.md +13 -1
- package/daemon/docs/reference/health-diagnosis.md +83 -6
- package/daemon/docs/reference/project-workspace.md +23 -0
- package/daemon/docs/reference/scoped-operating-posture.md +95 -0
- package/daemon/specs/agents/shared/skills/core/messaging-the-human/SKILL.md +40 -5
- package/dist/build-info.js +3 -3
- package/dist/commands/context.d.ts.map +1 -1
- package/dist/commands/context.js +66 -124
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/health.d.ts.map +1 -1
- package/dist/commands/health.js +17 -2
- package/dist/commands/health.js.map +1 -1
- package/dist/commands/queue.d.ts.map +1 -1
- package/dist/commands/queue.js +5 -1
- package/dist/commands/queue.js.map +1 -1
- package/dist/commands/rig-mode.d.ts +2 -2
- package/dist/commands/rig-mode.d.ts.map +1 -1
- package/dist/commands/rig-mode.js +36 -11
- package/dist/commands/rig-mode.js.map +1 -1
- package/dist/lib/context-git.d.ts +141 -0
- package/dist/lib/context-git.d.ts.map +1 -0
- package/dist/lib/context-git.js +256 -0
- package/dist/lib/context-git.js.map +1 -0
- package/dist/lib/context-install.d.ts +5 -0
- package/dist/lib/context-install.d.ts.map +1 -0
- package/dist/lib/context-install.js +125 -0
- package/dist/lib/context-install.js.map +1 -0
- package/dist/lib/work-install.d.ts.map +1 -1
- package/dist/lib/work-install.js +11 -36
- package/dist/lib/work-install.js.map +1 -1
- package/dist/local-reading.d.ts +31 -0
- package/dist/local-reading.d.ts.map +1 -0
- package/dist/local-reading.js +62 -0
- package/dist/local-reading.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/attention-surface.d.ts +38 -0
- package/node_modules/@openrig/daemon/dist/attention-surface.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/attention-surface.js +3 -0
- package/node_modules/@openrig/daemon/dist/attention-surface.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/build-info.js +3 -3
- package/node_modules/@openrig/daemon/dist/db/all-migrations.d.ts +1 -1
- package/node_modules/@openrig/daemon/dist/db/all-migrations.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/db/all-migrations.js +12 -2
- package/node_modules/@openrig/daemon/dist/db/all-migrations.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/db/migrations/080_scoped_operating_posture.d.ts +4 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/080_scoped_operating_posture.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/080_scoped_operating_posture.js +21 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/080_scoped_operating_posture.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/081_human_notification_intent.d.ts +3 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/081_human_notification_intent.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/081_human_notification_intent.js +9 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/081_human_notification_intent.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/082_archive_identity_provenance.d.ts +5 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/082_archive_identity_provenance.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/082_archive_identity_provenance.js +7 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/082_archive_identity_provenance.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/083_review_read_indexes.d.ts +4 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/083_review_read_indexes.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/083_review_read_indexes.js +12 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/083_review_read_indexes.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/084_inventory_event_indexes.d.ts +5 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/084_inventory_event_indexes.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/084_inventory_event_indexes.js +14 -0
- package/node_modules/@openrig/daemon/dist/db/migrations/084_inventory_event_indexes.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/execution-view.d.ts +1 -0
- package/node_modules/@openrig/daemon/dist/domain/execution-view.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/execution-view.js +38 -19
- package/node_modules/@openrig/daemon/dist/domain/execution-view.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/files/file-read.d.ts +17 -0
- package/node_modules/@openrig/daemon/dist/domain/files/file-read.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/files/file-read.js +24 -0
- package/node_modules/@openrig/daemon/dist/domain/files/file-read.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/connections-projection.d.ts +4 -4
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.d.ts +13 -12
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.js +40 -77
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.d.ts +2 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.js +2 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.d.ts +2 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.js +2 -0
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +4 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.js +85 -3
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.js +8 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/health-context.d.ts +3 -0
- package/node_modules/@openrig/daemon/dist/domain/health-context.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/health-context.js +78 -6
- package/node_modules/@openrig/daemon/dist/domain/health-context.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/health-detectors.d.ts +2 -1
- package/node_modules/@openrig/daemon/dist/domain/health-detectors.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/health-detectors.js +8 -2
- package/node_modules/@openrig/daemon/dist/domain/health-detectors.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/health-diagnosis.d.ts +51 -1
- package/node_modules/@openrig/daemon/dist/domain/health-diagnosis.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/health-diagnosis.js +60 -9
- package/node_modules/@openrig/daemon/dist/domain/health-diagnosis.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/health-passive-ceremony.d.ts +7 -1
- package/node_modules/@openrig/daemon/dist/domain/health-passive-ceremony.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/health-passive-ceremony.js +59 -26
- package/node_modules/@openrig/daemon/dist/domain/health-passive-ceremony.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/health-projection.d.ts +2 -0
- package/node_modules/@openrig/daemon/dist/domain/health-projection.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/health-projection.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/policies/delivery-digest-flush.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/policies/delivery-digest-flush.js +23 -3
- package/node_modules/@openrig/daemon/dist/domain/policies/delivery-digest-flush.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/proof/judgments.d.ts +10 -3
- package/node_modules/@openrig/daemon/dist/domain/proof/judgments.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/proof/judgments.js +26 -8
- package/node_modules/@openrig/daemon/dist/domain/proof/judgments.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-repository.d.ts +19 -6
- package/node_modules/@openrig/daemon/dist/domain/queue-repository.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-repository.js +61 -11
- package/node_modules/@openrig/daemon/dist/domain/queue-repository.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-retention.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-retention.js +6 -2
- package/node_modules/@openrig/daemon/dist/domain/queue-retention.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-transition-log.d.ts +1 -0
- package/node_modules/@openrig/daemon/dist/domain/queue-transition-log.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/queue-transition-log.js +19 -7
- package/node_modules/@openrig/daemon/dist/domain/queue-transition-log.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/review/fleet-compose.d.ts +7 -6
- package/node_modules/@openrig/daemon/dist/domain/review/fleet-compose.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/review/fleet-compose.js +25 -11
- package/node_modules/@openrig/daemon/dist/domain/review/fleet-compose.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/operating-posture.d.ts +49 -0
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/operating-posture.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/operating-posture.js +255 -0
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/operating-posture.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/rig-mode-defaults.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/rig-mode-defaults.js +20 -0
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/rig-mode-defaults.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/rig-mode-store.d.ts +2 -2
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/rig-mode-store.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/rig-mode-store.js +19 -3
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/rig-mode-store.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/rig-mode-types.d.ts +12 -7
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/rig-mode-types.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/rig-mode-types.js +14 -3
- package/node_modules/@openrig/daemon/dist/domain/rig-mode/rig-mode-types.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-view-projection.d.ts +2 -2
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-view-projection.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-view-projection.js +2 -2
- package/node_modules/@openrig/daemon/dist/domain/scope/scope-view-projection.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/slices/slice-detail-projector.d.ts +1 -0
- package/node_modules/@openrig/daemon/dist/domain/slices/slice-detail-projector.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/slices/slice-detail-projector.js +3 -0
- package/node_modules/@openrig/daemon/dist/domain/slices/slice-detail-projector.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/slices/slice-indexer.d.ts +4 -0
- package/node_modules/@openrig/daemon/dist/domain/slices/slice-indexer.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/slices/slice-indexer.js +10 -1
- package/node_modules/@openrig/daemon/dist/domain/slices/slice-indexer.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/terminal/herdr-adapter.d.ts +2 -0
- package/node_modules/@openrig/daemon/dist/domain/terminal/herdr-adapter.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/terminal/herdr-adapter.js +1 -1
- package/node_modules/@openrig/daemon/dist/domain/terminal/herdr-adapter.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/terminal/terminal-service.d.ts +30 -2
- package/node_modules/@openrig/daemon/dist/domain/terminal/terminal-service.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/terminal/terminal-service.js +53 -13
- package/node_modules/@openrig/daemon/dist/domain/terminal/terminal-service.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/view-projector.d.ts +2 -0
- package/node_modules/@openrig/daemon/dist/domain/view-projector.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/view-projector.js +1 -1
- package/node_modules/@openrig/daemon/dist/domain/view-projector.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workspace/project-catalog.d.ts +18 -0
- package/node_modules/@openrig/daemon/dist/domain/workspace/project-catalog.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/workspace/project-catalog.js +66 -0
- package/node_modules/@openrig/daemon/dist/domain/workspace/project-catalog.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/workspace/project-read.d.ts +29 -0
- package/node_modules/@openrig/daemon/dist/domain/workspace/project-read.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/domain/workspace/project-read.js +125 -0
- package/node_modules/@openrig/daemon/dist/domain/workspace/project-read.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/health-projection-surface.d.ts +1 -0
- package/node_modules/@openrig/daemon/dist/health-projection-surface.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/local-reading-surface.d.ts +3 -0
- package/node_modules/@openrig/daemon/dist/local-reading-surface.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/local-reading-surface.js +3 -0
- package/node_modules/@openrig/daemon/dist/local-reading-surface.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/project-catalog-surface.d.ts +2 -0
- package/node_modules/@openrig/daemon/dist/project-catalog-surface.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/project-catalog-surface.js +2 -0
- package/node_modules/@openrig/daemon/dist/project-catalog-surface.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/routes/attention.d.ts +3 -0
- package/node_modules/@openrig/daemon/dist/routes/attention.d.ts.map +1 -0
- package/node_modules/@openrig/daemon/dist/routes/attention.js +155 -0
- package/node_modules/@openrig/daemon/dist/routes/attention.js.map +1 -0
- package/node_modules/@openrig/daemon/dist/routes/files.d.ts +1 -1
- package/node_modules/@openrig/daemon/dist/routes/files.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/files.js +4 -24
- package/node_modules/@openrig/daemon/dist/routes/files.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/queue.d.ts +4 -18
- package/node_modules/@openrig/daemon/dist/routes/queue.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/queue.js +23 -33
- package/node_modules/@openrig/daemon/dist/routes/queue.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/review.js +1 -1
- package/node_modules/@openrig/daemon/dist/routes/rig-mode.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/rig-mode.js +67 -14
- package/node_modules/@openrig/daemon/dist/routes/rig-mode.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/rigs.js +5 -1
- package/node_modules/@openrig/daemon/dist/routes/rigs.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/scopes.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/scopes.js +74 -20
- package/node_modules/@openrig/daemon/dist/routes/scopes.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/slices.d.ts +2 -2
- package/node_modules/@openrig/daemon/dist/routes/slices.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/slices.js +18 -1
- package/node_modules/@openrig/daemon/dist/routes/slices.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/spec-library.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/spec-library.js +11 -2
- package/node_modules/@openrig/daemon/dist/routes/spec-library.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/terminal.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/terminal.js +14 -4
- package/node_modules/@openrig/daemon/dist/routes/terminal.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/views.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/views.js +11 -1
- package/node_modules/@openrig/daemon/dist/routes/views.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/server.d.ts +1 -0
- package/node_modules/@openrig/daemon/dist/server.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/server.js +3 -0
- package/node_modules/@openrig/daemon/dist/server.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/startup.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/startup.js +19 -5
- package/node_modules/@openrig/daemon/dist/startup.js.map +1 -1
- package/node_modules/@openrig/daemon/package.json +13 -1
- package/package.json +1 -1
- package/tui/dist/attention/attention-model.d.ts +23 -0
- package/tui/dist/attention/attention-model.d.ts.map +1 -0
- package/tui/dist/attention/attention-model.js +85 -0
- package/tui/dist/attention/attention-model.js.map +1 -0
- package/tui/dist/attention/source-continuity.d.ts +9 -0
- package/tui/dist/attention/source-continuity.d.ts.map +1 -0
- package/tui/dist/attention/source-continuity.js +38 -0
- package/tui/dist/attention/source-continuity.js.map +1 -0
- package/tui/dist/commands/help.d.ts +4 -0
- package/tui/dist/commands/help.d.ts.map +1 -0
- package/tui/dist/commands/help.js +43 -0
- package/tui/dist/commands/help.js.map +1 -0
- package/tui/dist/commands/registry.d.ts.map +1 -1
- package/tui/dist/commands/registry.js +15 -1
- package/tui/dist/commands/registry.js.map +1 -1
- package/tui/dist/config/config-model.d.ts.map +1 -1
- package/tui/dist/config/config-model.js +33 -9
- package/tui/dist/config/config-model.js.map +1 -1
- package/tui/dist/connections/connections-model.js +1 -1
- package/tui/dist/connections/connections-model.js.map +1 -1
- package/tui/dist/daemon-client.d.ts +39 -7
- package/tui/dist/daemon-client.d.ts.map +1 -1
- package/tui/dist/daemon-client.js +74 -15
- package/tui/dist/daemon-client.js.map +1 -1
- package/tui/dist/demo-data.d.ts.map +1 -1
- package/tui/dist/demo-data.js +1 -0
- package/tui/dist/demo-data.js.map +1 -1
- package/tui/dist/detail.d.ts.map +1 -1
- package/tui/dist/detail.js +20 -7
- package/tui/dist/detail.js.map +1 -1
- package/tui/dist/execution/execution-model.d.ts +1 -0
- package/tui/dist/execution/execution-model.d.ts.map +1 -1
- package/tui/dist/execution/execution-model.js +88 -119
- package/tui/dist/execution/execution-model.js.map +1 -1
- package/tui/dist/health/health-model.d.ts.map +1 -1
- package/tui/dist/health/health-model.js +26 -34
- package/tui/dist/health/health-model.js.map +1 -1
- package/tui/dist/hydrate.d.ts +1 -1
- package/tui/dist/hydrate.d.ts.map +1 -1
- package/tui/dist/hydrate.js +89 -23
- package/tui/dist/hydrate.js.map +1 -1
- package/tui/dist/input.d.ts.map +1 -1
- package/tui/dist/input.js +20 -3
- package/tui/dist/input.js.map +1 -1
- package/tui/dist/live.d.ts +3 -1
- package/tui/dist/live.d.ts.map +1 -1
- package/tui/dist/live.js +66 -7
- package/tui/dist/live.js.map +1 -1
- package/tui/dist/local-reading.d.ts +54 -0
- package/tui/dist/local-reading.d.ts.map +1 -0
- package/tui/dist/local-reading.js +122 -0
- package/tui/dist/local-reading.js.map +1 -0
- package/tui/dist/main.js +121 -34
- package/tui/dist/main.js.map +1 -1
- package/tui/dist/motion.d.ts +2 -0
- package/tui/dist/motion.d.ts.map +1 -1
- package/tui/dist/motion.js +4 -0
- package/tui/dist/motion.js.map +1 -1
- package/tui/dist/navigator.d.ts.map +1 -1
- package/tui/dist/navigator.js +14 -3
- package/tui/dist/navigator.js.map +1 -1
- package/tui/dist/page-read.d.ts +19 -0
- package/tui/dist/page-read.d.ts.map +1 -0
- package/tui/dist/page-read.js +84 -0
- package/tui/dist/page-read.js.map +1 -0
- package/tui/dist/pulse/pulse-model.d.ts.map +1 -1
- package/tui/dist/pulse/pulse-model.js +3 -4
- package/tui/dist/pulse/pulse-model.js.map +1 -1
- package/tui/dist/reading.d.ts +36 -0
- package/tui/dist/reading.d.ts.map +1 -0
- package/tui/dist/reading.js +89 -0
- package/tui/dist/reading.js.map +1 -0
- package/tui/dist/render.d.ts +5 -0
- package/tui/dist/render.d.ts.map +1 -1
- package/tui/dist/render.js +190 -174
- package/tui/dist/render.js.map +1 -1
- package/tui/dist/scopes/scopes-model.d.ts +3 -0
- package/tui/dist/scopes/scopes-model.d.ts.map +1 -1
- package/tui/dist/scopes/scopes-model.js +8 -2
- package/tui/dist/scopes/scopes-model.js.map +1 -1
- package/tui/dist/sections.d.ts +2 -0
- package/tui/dist/sections.d.ts.map +1 -1
- package/tui/dist/sections.js +9 -5
- package/tui/dist/sections.js.map +1 -1
- package/tui/dist/startup.d.ts +10 -1
- package/tui/dist/startup.d.ts.map +1 -1
- package/tui/dist/startup.js +99 -27
- package/tui/dist/startup.js.map +1 -1
- package/tui/dist/state.d.ts.map +1 -1
- package/tui/dist/state.js +121 -22
- package/tui/dist/state.js.map +1 -1
- package/tui/dist/stylize.js +28 -28
- package/tui/dist/stylize.js.map +1 -1
- package/tui/dist/terminals/terminal-model.d.ts +57 -0
- package/tui/dist/terminals/terminal-model.d.ts.map +1 -0
- package/tui/dist/terminals/terminal-model.js +113 -0
- package/tui/dist/terminals/terminal-model.js.map +1 -0
- package/tui/dist/types.d.ts +84 -1
- package/tui/dist/types.d.ts.map +1 -1
|
@@ -30,6 +30,8 @@
|
|
|
30
30
|
// not found), so the route JSON and the CLI JSON carry ONE contract for every
|
|
31
31
|
// outcome.
|
|
32
32
|
import { composeView } from "./view-composer.js";
|
|
33
|
+
import { createHash } from "node:crypto";
|
|
34
|
+
import { buildGridRoot } from "./herdr-adapter.js";
|
|
33
35
|
// deriveViewMembers is a VALUE exported by the views store (not the composer).
|
|
34
36
|
import { deriveViewMembers } from "./terminal-views-store.js";
|
|
35
37
|
export const DEFAULT_PROVIDER = "herdr";
|
|
@@ -65,26 +67,60 @@ export class TerminalService {
|
|
|
65
67
|
if (!provider) {
|
|
66
68
|
return errorResult(providerName, "unknown_provider", `unknown provider '${providerName}' — expected herdr or cmux`);
|
|
67
69
|
}
|
|
68
|
-
const
|
|
69
|
-
if (
|
|
70
|
-
return errorResult(providerName,
|
|
70
|
+
const composed = await this.resolveComposed(req.view);
|
|
71
|
+
if ("code" in composed)
|
|
72
|
+
return errorResult(providerName, composed.code, composed.error);
|
|
73
|
+
if (req.expectedPlan !== undefined && req.expectedPlan !== this.planId(providerName, composed)) {
|
|
74
|
+
return errorResult(providerName, "preview_changed", "View membership or layout changed. Refresh the preview before Open; nothing was launched.");
|
|
71
75
|
}
|
|
72
|
-
const resolved = await this.resolveView(view);
|
|
73
|
-
if ("code" in resolved) {
|
|
74
|
-
return errorResult(providerName, resolved.code, resolved.error);
|
|
75
|
-
}
|
|
76
|
-
const refined = await this.refineLiveness(resolved.members);
|
|
77
|
-
const composed = composeView(resolved.id, refined, {
|
|
78
|
-
resolveHost: (id) => this.deps.resolveHost(id),
|
|
79
|
-
});
|
|
80
76
|
return provider.openView(composed);
|
|
81
77
|
}
|
|
78
|
+
async resolveComposed(viewArg) {
|
|
79
|
+
const view = (viewArg ?? "").trim();
|
|
80
|
+
if (!view)
|
|
81
|
+
return { code: "view_required", error: "a view argument is required" };
|
|
82
|
+
const resolved = await this.resolveView(view);
|
|
83
|
+
if ("code" in resolved)
|
|
84
|
+
return resolved;
|
|
85
|
+
return composeView(resolved.id, await this.refineLiveness(resolved.members), { resolveHost: (id) => this.deps.resolveHost(id) });
|
|
86
|
+
}
|
|
87
|
+
planId(provider, composed) {
|
|
88
|
+
return createHash("sha256").update(JSON.stringify({ provider, composed, grids: composed.pages.map(buildGridRoot) })).digest("hex");
|
|
89
|
+
}
|
|
90
|
+
/** Passive: inventory, local has-session and provider probe only. Never openView. */
|
|
91
|
+
async previewView(req) {
|
|
92
|
+
const providerName = (req.provider ?? DEFAULT_PROVIDER).trim() || DEFAULT_PROVIDER;
|
|
93
|
+
const provider = this.deps.resolveProvider(providerName);
|
|
94
|
+
if (!provider)
|
|
95
|
+
return errorResult(providerName, "unknown_provider", `unknown provider '${providerName}'`);
|
|
96
|
+
const composed = await this.resolveComposed(req.view);
|
|
97
|
+
if ("code" in composed)
|
|
98
|
+
return errorResult(providerName, composed.code, composed.error);
|
|
99
|
+
return { provider: providerName, view: req.view, composed, grids: composed.pages.map(buildGridRoot), planId: this.planId(providerName, composed), status: await provider.status() };
|
|
100
|
+
}
|
|
82
101
|
/** List saved views + the rig names openable as derived views. */
|
|
83
|
-
async listViews() {
|
|
84
|
-
|
|
102
|
+
async listViews(detail = false) {
|
|
103
|
+
const result = {
|
|
85
104
|
saved: this.deps.viewsStore.list(),
|
|
86
105
|
rigs: await this.deps.listRigNames(),
|
|
87
106
|
};
|
|
107
|
+
if (detail) {
|
|
108
|
+
result.catalog = [];
|
|
109
|
+
const entries = [
|
|
110
|
+
...result.saved.map((s) => ({ view: `saved:${s.id}`, name: s.name, kind: "saved" })),
|
|
111
|
+
...result.rigs.map((name) => ({ view: `rig:${name}`, name, kind: "derived" })),
|
|
112
|
+
];
|
|
113
|
+
const inventory = await this.deps.listRigSeatsBatch?.(result.rigs);
|
|
114
|
+
for (const entry of entries) {
|
|
115
|
+
const rows = entry.kind === "derived" ? inventory?.get(entry.name) : undefined;
|
|
116
|
+
const plan = rows ? composeView(entry.view, await this.refineLiveness(deriveViewMembers(rows, { readOnly: false })), { resolveHost: id => this.deps.resolveHost(id) })
|
|
117
|
+
: await this.resolveComposed(entry.view);
|
|
118
|
+
if ("code" in plan)
|
|
119
|
+
continue;
|
|
120
|
+
result.catalog.push({ ...entry, members: [...plan.opened, ...plan.absent, ...plan.degraded].map((m) => m.seat), ready: plan.opened.length, absent: plan.absent.length, degraded: plan.degraded.length, pages: plan.pages.length });
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
return result;
|
|
88
124
|
}
|
|
89
125
|
/** Provider availability + liveness (doctor). Unknown named provider → empty report for it. */
|
|
90
126
|
async status(providerName) {
|
|
@@ -106,6 +142,10 @@ export class TerminalService {
|
|
|
106
142
|
}
|
|
107
143
|
/** Resolve a view argument into composer-ready members (precedence in the file header). */
|
|
108
144
|
async resolveView(view) {
|
|
145
|
+
if (view.startsWith("saved:")) {
|
|
146
|
+
const saved = this.deps.viewsStore.get(view.slice(6));
|
|
147
|
+
return saved ? { id: saved.id, members: saved.members.map(savedMemberToInput) } : { code: "view_not_found", error: `unknown saved view '${view.slice(6)}'` };
|
|
148
|
+
}
|
|
109
149
|
// 1. derived scope prefixes → live, read-only, never persisted.
|
|
110
150
|
if (view.startsWith("mission:") || view.startsWith("slice:")) {
|
|
111
151
|
const rows = await this.deps.listScopeSeats(view);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal-service.js","sourceRoot":"","sources":["../../../src/domain/terminal/terminal-service.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,EAAE;AACF,yEAAyE;AACzE,yEAAyE;AACzE,6EAA6E;AAC7E,+EAA+E;AAC/E,4EAA4E;AAC5E,6EAA6E;AAC7E,8EAA8E;AAC9E,qBAAqB;AACrB,EAAE;AACF,yCAAyC;AACzC,6EAA6E;AAC7E,6EAA6E;AAC7E,yEAAyE;AACzE,6EAA6E;AAC7E,8EAA8E;AAC9E,gFAAgF;AAChF,2CAA2C;AAC3C,0EAA0E;AAC1E,EAAE;AACF,2EAA2E;AAC3E,+EAA+E;AAC/E,6EAA6E;AAC7E,8EAA8E;AAC9E,gBAAgB;AAChB,EAAE;AACF,+EAA+E;AAC/E,gFAAgF;AAChF,8EAA8E;AAC9E,WAAW;AAEX,OAAO,EAAE,WAAW,EAAwB,MAAM,oBAAoB,CAAC;AACvE,+EAA+E;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"terminal-service.js","sourceRoot":"","sources":["../../../src/domain/terminal/terminal-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ProjectRead } from "./workspace/project-read.js";
|
|
1
2
|
import type Database from "better-sqlite3";
|
|
2
3
|
import type { EventBus } from "./event-bus.js";
|
|
3
4
|
import { type ExecutionViewDeps } from "./execution-view.js";
|
|
@@ -56,6 +57,7 @@ export declare class ViewProjector {
|
|
|
56
57
|
rig?: string;
|
|
57
58
|
limit?: number;
|
|
58
59
|
mission?: string;
|
|
60
|
+
project?: ProjectRead | null;
|
|
59
61
|
}): ViewQueryResult;
|
|
60
62
|
list(): {
|
|
61
63
|
builtIn: BuiltInViewName[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-projector.d.ts","sourceRoot":"","sources":["../../src/domain/view-projector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAI3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAsB,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAEjF;;;;;;;;;;;;;;;;;GAiBG;AAEH,eAAO,MAAM,mBAAmB,+GAYtB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAWD,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBACV,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAI1C;AAmBD,qBAAa,aAAa;IACxB,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;gBAG/B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,QAAQ,EAAE,QAAQ,EAClB,IAAI,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE;IAS7B,OAAO,CAAC,aAAa,CAAkC;IACvD,gBAAgB,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI;IAI/C;;;OAGG;IACH,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,eAAe;
|
|
1
|
+
{"version":3,"file":"view-projector.d.ts","sourceRoot":"","sources":["../../src/domain/view-projector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAI3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAsB,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAEjF;;;;;;;;;;;;;;;;;GAiBG;AAEH,eAAO,MAAM,mBAAmB,+GAYtB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAWD,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBACV,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAI1C;AAmBD,qBAAa,aAAa;IACxB,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;gBAG/B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,QAAQ,EAAE,QAAQ,EAClB,IAAI,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE;IAS7B,OAAO,CAAC,aAAa,CAAkC;IACvD,gBAAgB,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI;IAI/C;;;OAGG;IACH,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;KAAE,GAAG,eAAe;IAyBhI,IAAI,IAAI;QAAE,OAAO,EAAE,eAAe,EAAE,CAAC;QAAC,MAAM,EAAE,UAAU,EAAE,CAAA;KAAE;IAI5D,OAAO,CAAC,UAAU;IAuKlB,OAAO,CAAC,SAAS;IA4BjB;;;;OAIG;IACH,kBAAkB,CAAC,KAAK,EAAE;QACxB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,GAAG,UAAU;IAgCd,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAOlD,eAAe,IAAI,UAAU,EAAE;IAO/B;;;;OAIG;IACH,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAQxD,OAAO,CAAC,wBAAwB;IAUhC,OAAO,CAAC,eAAe;CAUxB"}
|
|
@@ -85,7 +85,7 @@ export class ViewProjector {
|
|
|
85
85
|
if (!this.executionDeps) {
|
|
86
86
|
throw new ViewProjectorError("view_query_failed", "execution view deps are not wired on this daemon (setExecutionDeps was never called)");
|
|
87
87
|
}
|
|
88
|
-
const doc = buildExecutionView(this.executionDeps, { mission: opts?.mission, rig: opts?.rig });
|
|
88
|
+
const doc = buildExecutionView(opts?.project ? { ...this.executionDeps, slicesRoot: () => opts.project.missionsRoot } : this.executionDeps, { mission: opts?.mission, rig: opts?.rig, project: opts?.project?.id });
|
|
89
89
|
return { viewName: "execution", generatedAt: this.now().toISOString(), rows: [doc], rowCount: 1 };
|
|
90
90
|
}
|
|
91
91
|
if (BUILT_IN_VIEW_NAMES.includes(viewName)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-projector.js","sourceRoot":"","sources":["../../src/domain/view-projector.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"view-projector.js","sourceRoot":"","sources":["../../src/domain/view-projector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,kBAAkB,EAA0B,MAAM,qBAAqB,CAAC;AAEjF;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,iBAAiB;IACjB,SAAS;IACT,UAAU;IACV,aAAa;IACb,MAAM;IACN,UAAU;IACV,8EAA8E;IAC9E,QAAQ;IACR,qEAAqE;IACrE,wEAAwE;IACxE,WAAW;CACH,CAAC;AA6BX,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAClC,IAAI,CAAS;IACtB,YAAY,IAAY,EAAE,OAAe;QACvC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAED;;;;GAIG;AACH,SAAS,sBAAsB;IAC7B,IAAI,OAAO,CAAC,GAAG,CAAC,6BAA6B,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IACpE,uEAAuE;IACvE,wCAAwC;IACxC,OAAO;;;;;IAKL,CAAC;AACL,CAAC;AAED,MAAM,OAAO,aAAa;IACf,EAAE,CAAoB;IACd,QAAQ,CAAW;IACnB,GAAG,CAAa;IAEjC,YACE,EAAqB,EACrB,QAAkB,EAClB,IAA2B;QAE3B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,GAAG,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,uEAAuE;IACvE,4DAA4D;IACpD,aAAa,GAA6B,IAAI,CAAC;IACvD,gBAAgB,CAAC,IAAuB;QACtC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,IAAI,CAAC,QAAgB,EAAE,IAAuF;QAC5G,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;QAC9D,2EAA2E;QAC3E,yEAAyE;QACzE,uDAAuD;QACvD,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBACxB,MAAM,IAAI,kBAAkB,CAC1B,mBAAmB,EACnB,sFAAsF,CACvF,CAAC;YACJ,CAAC;YACD,MAAM,GAAG,GAAG,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;YACrN,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACpG,CAAC;QACD,IAAK,mBAAyC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClE,OAAO,IAAI,CAAC,UAAU,CAAC,QAA2B,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,SAAS,QAAQ,0CAA0C,CAAC,CAAC;QAC9G,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,IAAI;QACF,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,mBAAmB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;IAC/E,CAAC;IAEO,UAAU,CAAC,IAAqB,EAAE,GAAuB,EAAE,KAAa;QAC9E,MAAM,aAAa,GAAG,sBAAsB,EAAE,CAAC;QAC/C,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,2DAA2D,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,MAAM,SAAS,GAAc,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAEjE,8EAA8E;QAC9E,wFAAwF;QACxF,2EAA2E;QAC3E,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE;iBACjB,OAAO,CACN;;;;;;;;oBAQU,aAAa;gBACjB,SAAS;;oBAEL,CACX;iBACA,GAAG,CAAC,GAAG,SAAS,EAAE,KAAK,CAA8B,CAAC;YACzD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,YAAY,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC;gBACxG,MAAM,OAAO,GAAG,YAAY,CAAC;oBAC3B,gBAAgB,EAAE,wBAAwB,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE;oBAC3E,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAC,KAAK;oBACpE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;oBACtB,SAAS,EAAG,CAAC,CAAC,UAA4B,IAAI,IAAI;oBAClD,aAAa,EAAG,CAAC,CAAC,cAAgC,IAAI,IAAI;oBAC1D,oBAAoB,EAAE,MAAM,CAAC,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC;iBACvD,CAAC,CAAC;gBACH,OAAO;oBACL,GAAG,CAAC;oBACJ,YAAY,EAAE,OAAO,CAAC,KAAK;oBAC3B,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAC;YACJ,CAAC,CAAC,CAAC;YACH,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC;QAChH,CAAC;QAED,IAAI,GAAW,CAAC;QAChB,IAAI,MAAM,GAAc,EAAE,CAAC;QAC3B,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,iBAAiB;gBACpB,wEAAwE;gBACxE,GAAG,GAAG;;;;kBAII,aAAa;cACjB,SAAS;;;SAGd,CAAC;gBACF,MAAM,GAAG,CAAC,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC;gBAC/B,MAAM;YACR,KAAK,SAAS;gBACZ,yDAAyD;gBACzD,GAAG,GAAG;;;;;kBAKI,aAAa;cACjB,SAAS;;;SAGd,CAAC;gBACF,MAAM,GAAG,CAAC,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC;gBAC/B,MAAM;YACR,KAAK,UAAU;gBACb,mEAAmE;gBACnE,gEAAgE;gBAChE,gEAAgE;gBAChE,iEAAiE;gBACjE,+DAA+D;gBAC/D,2DAA2D;gBAC3D,mEAAmE;gBACnE,+DAA+D;gBAC/D,qCAAqC;gBACrC,GAAG,GAAG;;;;kBAII,aAAa;cACjB,SAAS;;;;SAId,CAAC;gBACF,MAAM,GAAG,CAAC,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC;gBAC/B,MAAM;YACR,KAAK,aAAa;gBAChB,+EAA+E;gBAC/E,8EAA8E;gBAC9E,6EAA6E;gBAC7E,GAAG,GAAG;;;;;kBAKI,aAAa;cACjB,SAAS;;;SAGd,CAAC;gBACF,MAAM,GAAG,CAAC,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC;gBAC/B,MAAM;YACR,KAAK,MAAM;gBACT,+CAA+C;gBAC/C,GAAG,GAAG;;;;kBAII,aAAa;cACjB,SAAS;;;SAGd,CAAC;gBACF,MAAM,GAAG,CAAC,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC;gBAC/B,MAAM;YACR,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,kEAAkE;gBAClE,6DAA6D;gBAC7D,MAAM,eAAe,GAAG,aAAa,KAAK,KAAK;oBAC7C,CAAC,CAAC,KAAK;oBACP,CAAC,CAAC;;;;;cAKE,CAAC;gBACP,MAAM,WAAW,GAAG,GAAG;oBACrB,CAAC,CAAC,+DAA+D;oBACjE,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,GAAG;;;;;kBAKI,eAAe;cACnB,WAAW;;;SAGhB,CAAC;gBACF,MAAM,GAAG,CAAC,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC;gBAC/B,MAAM;YACR,CAAC;YACD;gBACE,sEAAsE;gBACtE,qEAAqE;gBACrE,MAAM,IAAI,kBAAkB,CAAC,mBAAmB,EAAE,kBAAkB,IAAI,4BAA4B,CAAC,CAAC;QAC1G,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAA8B,CAAC;QAC9E,OAAO;YACL,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;YACrC,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,MAAM;SACtB,CAAC;IACJ,CAAC;IAEO,SAAS,CAAC,IAAgB,EAAE,KAAa;QAC/C,qEAAqE;QACrE,wEAAwE;QACxE,8DAA8D;QAC9D,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;YACzD,CAAC,CAAC,IAAI,CAAC,UAAU;YACjB,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,KAAK,EAAE,CAAC;QACjE,IAAI,IAA+B,CAAC;QACpC,IAAI,CAAC;YACH,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAA+B,CAAC;QACjE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,kBAAkB,CAC1B,mBAAmB,EACnB,gBAAgB,IAAI,CAAC,QAAQ,mBAAoB,GAAa,CAAC,OAAO,EAAE,CACzE,CAAC;QACJ,CAAC;QACD,4DAA4D;QAC5D,IAAI,CAAC,EAAE;aACJ,OAAO,CAAC,iEAAiE,CAAC;aAC1E,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;YACrC,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,MAAM;SACtB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,kBAAkB,CAAC,KAIlB;QACC,IAAK,mBAAyC,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxE,MAAM,IAAI,kBAAkB,CAC1B,oBAAoB,EACpB,cAAc,KAAK,CAAC,QAAQ,wDAAwD,CACrF,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE;aACrB,OAAO,CAAC,gDAAgD,CAAC;aACzD,GAAG,CAAC,KAAK,CAAC,QAAQ,CAA8B,CAAC;QACpD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;QAC9C,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,EAAE;iBACJ,OAAO,CACN;;6BAEmB,CACpB;iBACA,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,mBAAmB,EAAE,YAAY,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YACpF,OAAO,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,EAAE,CAAC;QACtB,IAAI,CAAC,EAAE;aACJ,OAAO,CACN;;iCAEyB,CAC1B;aACA,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;QAC1F,OAAO,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,aAAa,CAAC,QAAgB;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE;aAChB,OAAO,CAAC,gDAAgD,CAAC;aACzD,GAAG,CAAC,QAAQ,CAA8B,CAAC;QAC9C,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChD,CAAC;IAED,eAAe;QACb,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE;aACjB,OAAO,CAAC,mDAAmD,CAAC;aAC5D,GAAG,EAAqB,CAAC;QAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,QAAgB,EAAE,KAAa;QAC/C,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC;YACrC,IAAI,EAAE,cAAc;YACpB,QAAQ;YACR,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAEO,wBAAwB,CAAC,MAAc;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE;aAChB,OAAO,CAAC,8CAA8C,CAAC;aACvD,GAAG,CAAC,MAAM,CAA8B,CAAC;QAC5C,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,eAAe,MAAM,wBAAwB,CAAC,CAAC;QAChG,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAEO,eAAe,CAAC,GAAkB;QACxC,OAAO;YACL,MAAM,EAAE,GAAG,CAAC,OAAO;YACnB,QAAQ,EAAE,GAAG,CAAC,SAAS;YACvB,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,mBAAmB,EAAE,GAAG,CAAC,qBAAqB;YAC9C,YAAY,EAAE,GAAG,CAAC,aAAa;YAC/B,eAAe,EAAE,GAAG,CAAC,iBAAiB;SACvC,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare class ProjectReadError extends Error {
|
|
2
|
+
readonly code: string;
|
|
3
|
+
readonly candidates?: string[] | undefined;
|
|
4
|
+
constructor(code: string, message: string, candidates?: string[] | undefined);
|
|
5
|
+
}
|
|
6
|
+
export declare function yamlObject(file: string): Record<string, any>;
|
|
7
|
+
/** The existing workspace.yaml catalog, shared by work-install and project reads. */
|
|
8
|
+
export declare function readProjectCatalog(catalogPath: string): Array<{
|
|
9
|
+
id: string;
|
|
10
|
+
root: string;
|
|
11
|
+
}> | null;
|
|
12
|
+
export declare function selectCatalogProject(catalogPath: string, selectedId?: string): {
|
|
13
|
+
id: string;
|
|
14
|
+
root: string;
|
|
15
|
+
} | null;
|
|
16
|
+
/** Exact project membership; unscoped historical rows are not assigned to a selected project. */
|
|
17
|
+
export declare function belongsToProject(raw: string | null | undefined, id: string): boolean;
|
|
18
|
+
//# sourceMappingURL=project-catalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-catalog.d.ts","sourceRoot":"","sources":["../../../src/domain/workspace/project-catalog.ts"],"names":[],"mappings":"AAIA,qBAAa,gBAAiB,SAAQ,KAAK;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM;IAAmB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE;gBAA7D,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAW,UAAU,CAAC,EAAE,MAAM,EAAE,YAAA;CACnF;AACD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAM5D;AACD,qFAAqF;AACrF,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,IAAI,CASlG;AACD,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAWlH;AACD,iGAAiG;AACjG,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAKpF"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import * as fs from "node:fs";
|
|
2
|
+
import * as path from "node:path";
|
|
3
|
+
import { parse } from "yaml";
|
|
4
|
+
export class ProjectReadError extends Error {
|
|
5
|
+
code;
|
|
6
|
+
candidates;
|
|
7
|
+
constructor(code, message, candidates) {
|
|
8
|
+
super(message);
|
|
9
|
+
this.code = code;
|
|
10
|
+
this.candidates = candidates;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export function yamlObject(file) {
|
|
14
|
+
try {
|
|
15
|
+
const value = parse(fs.readFileSync(file, "utf8"));
|
|
16
|
+
if (!value || typeof value !== "object" || Array.isArray(value))
|
|
17
|
+
throw new Error("expected a YAML object");
|
|
18
|
+
return value;
|
|
19
|
+
}
|
|
20
|
+
catch (err) {
|
|
21
|
+
throw new ProjectReadError("workspace_catalog_invalid", `${file}: ${err.message}`);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
/** The existing workspace.yaml catalog, shared by work-install and project reads. */
|
|
25
|
+
export function readProjectCatalog(catalogPath) {
|
|
26
|
+
if (!fs.existsSync(catalogPath))
|
|
27
|
+
return null;
|
|
28
|
+
const entries = yamlObject(catalogPath).projects;
|
|
29
|
+
if (!Array.isArray(entries) || entries.some(e => !e || typeof e.id !== "string" || typeof e.root !== "string"))
|
|
30
|
+
throw new ProjectReadError("workspace_catalog_invalid", `${catalogPath} projects must each declare string id and root values`);
|
|
31
|
+
const ids = entries.map(e => e.id);
|
|
32
|
+
const duplicate = ids.find((id, i) => ids.indexOf(id) !== i);
|
|
33
|
+
if (duplicate)
|
|
34
|
+
throw new ProjectReadError("project_identity_ambiguous", `project id '${duplicate}' names multiple roots in ${catalogPath}`);
|
|
35
|
+
return entries.map(e => ({ id: e.id, root: e.root }));
|
|
36
|
+
}
|
|
37
|
+
export function selectCatalogProject(catalogPath, selectedId) {
|
|
38
|
+
const projects = readProjectCatalog(catalogPath);
|
|
39
|
+
if (!projects)
|
|
40
|
+
return null;
|
|
41
|
+
const candidates = projects.map(p => p.id);
|
|
42
|
+
const id = selectedId ?? (projects.length === 1 ? projects[0].id : undefined);
|
|
43
|
+
if (!id)
|
|
44
|
+
throw new ProjectReadError("project_required", "multiple projects are declared; select one with --project", candidates);
|
|
45
|
+
const selected = projects.find(p => p.id === id);
|
|
46
|
+
if (!selected)
|
|
47
|
+
throw new ProjectReadError("project_not_found", `project '${id}' is not declared in ${catalogPath}`, candidates);
|
|
48
|
+
const nominal = path.resolve(path.dirname(catalogPath), selected.root);
|
|
49
|
+
try {
|
|
50
|
+
return { id, root: fs.realpathSync(nominal) };
|
|
51
|
+
}
|
|
52
|
+
catch {
|
|
53
|
+
throw new ProjectReadError("project_root_missing", `project '${id}' root does not exist: ${nominal}`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/** Exact project membership; unscoped historical rows are not assigned to a selected project. */
|
|
57
|
+
export function belongsToProject(raw, id) {
|
|
58
|
+
try {
|
|
59
|
+
const tags = JSON.parse(raw ?? "null");
|
|
60
|
+
return Array.isArray(tags) && tags.flatMap(t => typeof t === "string" ? t.split(",").map(s => s.trim()) : []).includes(`project:${id}`);
|
|
61
|
+
}
|
|
62
|
+
catch {
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=project-catalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-catalog.js","sourceRoot":"","sources":["../../../src/domain/workspace/project-catalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAE7B,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACpB;IAAwC;IAA7D,YAAqB,IAAY,EAAE,OAAe,EAAW,UAAqB;QAAI,KAAK,CAAC,OAAO,CAAC,CAAC;QAAhF,SAAI,GAAJ,IAAI,CAAQ;QAA4B,eAAU,GAAV,UAAU,CAAW;IAAoB,CAAC;CACxG;AACD,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC3G,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QAAC,MAAM,IAAI,gBAAgB,CAAC,2BAA2B,EAAE,GAAG,IAAI,KAAM,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;IAAC,CAAC;AAClH,CAAC;AACD,qFAAqF;AACrF,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7C,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC;IACjD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC;QAC5G,MAAM,IAAI,gBAAgB,CAAC,2BAA2B,EAAE,GAAG,WAAW,uDAAuD,CAAC,CAAC;IACjI,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACnC,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7D,IAAI,SAAS;QAAE,MAAM,IAAI,gBAAgB,CAAC,4BAA4B,EAAE,eAAe,SAAS,6BAA6B,WAAW,EAAE,CAAC,CAAC;IAC5I,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;AACxD,CAAC;AACD,MAAM,UAAU,oBAAoB,CAAC,WAAmB,EAAE,UAAmB;IAC3E,MAAM,QAAQ,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IACjD,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC3C,MAAM,EAAE,GAAG,UAAU,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC/E,IAAI,CAAC,EAAE;QAAE,MAAM,IAAI,gBAAgB,CAAC,kBAAkB,EAAE,2DAA2D,EAAE,UAAU,CAAC,CAAC;IACjI,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACjD,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,gBAAgB,CAAC,mBAAmB,EAAE,YAAY,EAAE,wBAAwB,WAAW,EAAE,EAAE,UAAU,CAAC,CAAC;IAChI,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IACvE,IAAI,CAAC;QAAC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;IAAC,CAAC;IACtD,MAAM,CAAC;QAAC,MAAM,IAAI,gBAAgB,CAAC,sBAAsB,EAAE,YAAY,EAAE,0BAA0B,OAAO,EAAE,CAAC,CAAC;IAAC,CAAC;AAClH,CAAC;AACD,iGAAiG;AACjG,MAAM,UAAU,gBAAgB,CAAC,GAA8B,EAAE,EAAU;IACzE,IAAI,CAAC;QACH,MAAM,IAAI,GAAY,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC;QAChD,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC1I,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,KAAK,CAAC;IAAC,CAAC;AAC3B,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export interface ProjectRead {
|
|
2
|
+
id: string;
|
|
3
|
+
root: string;
|
|
4
|
+
name: string;
|
|
5
|
+
sourcePath: string | null;
|
|
6
|
+
missionsRoot: string;
|
|
7
|
+
error?: string;
|
|
8
|
+
}
|
|
9
|
+
type ReadContext = {
|
|
10
|
+
get: (key: never) => unknown;
|
|
11
|
+
req: {
|
|
12
|
+
query: (key: string) => string | undefined;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
export declare function projectCatalogPaths(c: Pick<ReadContext, "get">): {
|
|
16
|
+
workspace: string;
|
|
17
|
+
catalog: string;
|
|
18
|
+
};
|
|
19
|
+
export declare function insideProject(root: string, target: string): string;
|
|
20
|
+
export declare function workSource(root: string, dir: string, validate?: boolean): string;
|
|
21
|
+
export declare function listProjects(c: Pick<ReadContext, "get">): {
|
|
22
|
+
catalogPath: string;
|
|
23
|
+
projects: ProjectRead[];
|
|
24
|
+
};
|
|
25
|
+
export declare function selectedProject(c: ReadContext): ProjectRead | null;
|
|
26
|
+
export declare function projectReadResponse(err: unknown): Response;
|
|
27
|
+
export declare function projectMission(p: ProjectRead, mission: string): string;
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=project-read.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-read.d.ts","sourceRoot":"","sources":["../../../src/domain/workspace/project-read.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,WAAW;IAAG,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE;AACxI,KAAK,WAAW,GAAG;IAAE,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,OAAO,CAAC;IAAC,GAAG,EAAE;QAAE,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAA;KAAE,CAAA;CAAE,CAAC;AACzG,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC;;;EAM9D;AACD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAKlE;AACD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,UAAO,GAAG,MAAM,CAoB7E;AAkBD,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,WAAW,EAAE,CAAA;CAAE,CAQ1G;AACD,wBAAgB,eAAe,CAAC,CAAC,EAAE,WAAW,GAAG,WAAW,GAAG,IAAI,CAYlE;AACD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,QAAQ,CAE1D;AACD,wBAAgB,cAAc,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAkBtE"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import * as fs from "node:fs";
|
|
2
|
+
import * as path from "node:path";
|
|
3
|
+
import { parse, YAMLParseError } from "yaml";
|
|
4
|
+
import { NODE_FILE_PRECEDENCE } from "../scope/node-file.js";
|
|
5
|
+
import { readProjectCatalog, selectCatalogProject, yamlObject, ProjectReadError } from "./project-catalog.js";
|
|
6
|
+
export function projectCatalogPaths(c) {
|
|
7
|
+
const store = c.get("settingsStore");
|
|
8
|
+
const workspace = store?.resolveOne("workspace.root").value;
|
|
9
|
+
if (typeof workspace !== "string" || !workspace)
|
|
10
|
+
throw new ProjectReadError("workspace_root_missing", "Workspace root is not configured");
|
|
11
|
+
const configured = store?.resolveOne("workspace.catalog_path").value;
|
|
12
|
+
return { workspace, catalog: typeof configured === "string" && configured ? configured : path.join(workspace, "workspace.yaml") };
|
|
13
|
+
}
|
|
14
|
+
export function insideProject(root, target) {
|
|
15
|
+
const actual = fs.realpathSync(target);
|
|
16
|
+
const rel = path.relative(root, actual);
|
|
17
|
+
if (path.isAbsolute(rel) || rel === ".." || rel.startsWith(`..${path.sep}`))
|
|
18
|
+
throw new ProjectReadError("project_path_escape", `Source is outside selected project: ${target}`);
|
|
19
|
+
return actual;
|
|
20
|
+
}
|
|
21
|
+
export function workSource(root, dir, validate = true) {
|
|
22
|
+
insideProject(root, dir);
|
|
23
|
+
const source = NODE_FILE_PRECEDENCE.map(name => path.join(dir, name)).find(file => fs.existsSync(file));
|
|
24
|
+
if (!source)
|
|
25
|
+
throw new ProjectReadError("source_unavailable", `No work source at ${dir}`);
|
|
26
|
+
insideProject(root, source);
|
|
27
|
+
if (!validate)
|
|
28
|
+
return source;
|
|
29
|
+
const text = fs.readFileSync(source, "utf8");
|
|
30
|
+
if (text.startsWith("---")) {
|
|
31
|
+
const end = text.indexOf("\n---", 3);
|
|
32
|
+
if (end < 0)
|
|
33
|
+
throw new ProjectReadError("source_invalid", `Unterminated frontmatter: ${source}`);
|
|
34
|
+
let value;
|
|
35
|
+
try {
|
|
36
|
+
value = parse(text.slice(3, end));
|
|
37
|
+
}
|
|
38
|
+
catch (err) {
|
|
39
|
+
if (!(err instanceof YAMLParseError))
|
|
40
|
+
throw err;
|
|
41
|
+
const at = err.linePos?.[0];
|
|
42
|
+
throw new ProjectReadError("source_invalid", `Invalid frontmatter: ${source} (${err.code}${at ? `, line ${at.line}, column ${at.col}` : ""}). Read the source to correct it.`);
|
|
43
|
+
}
|
|
44
|
+
if (value !== null && (typeof value !== "object" || Array.isArray(value)))
|
|
45
|
+
throw new ProjectReadError("source_invalid", `Invalid frontmatter: ${source}`);
|
|
46
|
+
}
|
|
47
|
+
return source;
|
|
48
|
+
}
|
|
49
|
+
function projectEntry(id, root) {
|
|
50
|
+
let p = { id, root, name: id, sourcePath: null, missionsRoot: path.join(root, "missions") };
|
|
51
|
+
try {
|
|
52
|
+
p.root = fs.realpathSync(root);
|
|
53
|
+
const manifest = path.join(p.root, "project.yaml");
|
|
54
|
+
const value = fs.existsSync(manifest) ? yamlObject(insideProject(p.root, manifest)) : {};
|
|
55
|
+
const declared = value.id ?? value.metadata?.id;
|
|
56
|
+
if (declared && declared !== id)
|
|
57
|
+
throw new ProjectReadError("project_identity_conflict", `Catalog ${id} conflicts with project identity ${declared}`);
|
|
58
|
+
p.name = typeof value.metadata?.name === "string" ? value.metadata.name : id;
|
|
59
|
+
const missions = value.missions?.root ?? "missions";
|
|
60
|
+
if (typeof missions !== "string" || path.isAbsolute(missions) || missions.split(/[\\/]/).includes(".."))
|
|
61
|
+
throw new ProjectReadError("missions_root_escape", "Invalid project missions.root");
|
|
62
|
+
p.missionsRoot = path.resolve(p.root, missions);
|
|
63
|
+
p.sourcePath = workSource(p.root, p.root);
|
|
64
|
+
if (fs.existsSync(p.missionsRoot))
|
|
65
|
+
insideProject(p.root, p.missionsRoot);
|
|
66
|
+
}
|
|
67
|
+
catch (err) {
|
|
68
|
+
p.error = err.message;
|
|
69
|
+
}
|
|
70
|
+
return p;
|
|
71
|
+
}
|
|
72
|
+
export function listProjects(c) {
|
|
73
|
+
const { workspace, catalog } = projectCatalogPaths(c);
|
|
74
|
+
const entries = readProjectCatalog(catalog);
|
|
75
|
+
if (entries)
|
|
76
|
+
return { catalogPath: catalog, projects: entries.map(e => projectEntry(e.id, path.resolve(path.dirname(catalog), e.root))) };
|
|
77
|
+
// Uncatalogued workspaces keep their existing single-project authority.
|
|
78
|
+
const manifest = path.join(workspace, "project.yaml");
|
|
79
|
+
const value = fs.existsSync(manifest) ? yamlObject(manifest) : {};
|
|
80
|
+
return { catalogPath: catalog, projects: [projectEntry(value.id ?? value.metadata?.id ?? "workspace", workspace)] };
|
|
81
|
+
}
|
|
82
|
+
export function selectedProject(c) {
|
|
83
|
+
const id = c.req.query("project");
|
|
84
|
+
if (id === undefined)
|
|
85
|
+
return null;
|
|
86
|
+
if (!/^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$/.test(id))
|
|
87
|
+
throw new ProjectReadError("invalid_project", "Invalid project ID");
|
|
88
|
+
const { catalog } = projectCatalogPaths(c);
|
|
89
|
+
const selected = selectCatalogProject(catalog, id);
|
|
90
|
+
const p = selected ? projectEntry(selected.id, selected.root) : listProjects(c).projects.find(p => p.id === id);
|
|
91
|
+
if (!p)
|
|
92
|
+
throw new ProjectReadError("project_not_found", `Project ${id} is unavailable`);
|
|
93
|
+
if (c.req.query("projectRoot") && c.req.query("projectRoot") !== p.root)
|
|
94
|
+
throw new ProjectReadError("project_changed", `Project ${id} root changed; choose it again`);
|
|
95
|
+
if (p.error)
|
|
96
|
+
throw new ProjectReadError("project_unavailable", `${id}: ${p.error}`);
|
|
97
|
+
if (!fs.existsSync(p.missionsRoot))
|
|
98
|
+
throw new ProjectReadError("missions_unavailable", `${id}: missions root is unavailable: ${p.missionsRoot}`);
|
|
99
|
+
return p;
|
|
100
|
+
}
|
|
101
|
+
export function projectReadResponse(err) {
|
|
102
|
+
return Response.json({ error: err instanceof ProjectReadError ? err.code : "project_source_unavailable", message: err.message }, { status: 409 });
|
|
103
|
+
}
|
|
104
|
+
export function projectMission(p, mission) {
|
|
105
|
+
if (!/^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/.test(mission))
|
|
106
|
+
throw new ProjectReadError("invalid_mission", "Invalid mission directory");
|
|
107
|
+
const dir = path.join(p.missionsRoot, mission);
|
|
108
|
+
workSource(p.root, dir);
|
|
109
|
+
const slices = path.join(dir, "slices");
|
|
110
|
+
if (fs.existsSync(slices)) {
|
|
111
|
+
insideProject(p.root, slices);
|
|
112
|
+
for (const child of fs.readdirSync(slices, { withFileTypes: true })) {
|
|
113
|
+
// Keep containment checks for every source consumed by mission readers.
|
|
114
|
+
// A child's syntax belongs to that child's read, not its healthy siblings.
|
|
115
|
+
if (child.isDirectory() || child.isSymbolicLink()) {
|
|
116
|
+
const childDir = insideProject(p.root, path.join(slices, child.name));
|
|
117
|
+
const source = NODE_FILE_PRECEDENCE.map(name => path.join(childDir, name)).find(file => fs.existsSync(file));
|
|
118
|
+
if (source)
|
|
119
|
+
insideProject(p.root, source);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
return dir;
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=project-read.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-read.js","sourceRoot":"","sources":["../../../src/domain/workspace/project-read.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
export { HEALTH_CATEGORIES, HEALTH_CONFIDENCE, HEALTH_RECORD_SCHEMA, HEALTH_SEVERITIES, HEALTH_STATUSES, adaptContextUsageEvidence, adaptLifecycleReceiptEvidence, adaptOccupantModelEvidence, adaptQueueTransitionEvidence, adaptTopologyActivityEvidence, adaptWatchdogHistoryEvidence, adaptWorkGraphEvidence, boundHealthEvidence, canonicalHealthJson, deriveHealthSourceFreshness, healthEpisodeId, projectHealthRecord, type BoundedHealthEvidence, type HealthCategory, type HealthConfidence, type HealthEvidenceReference, type HealthFreshnessState, type HealthQueryBounds, type HealthRecord, type HealthRecordDraft, type HealthScope, type HealthSeverity, type HealthSourceFreshness, type HealthStatus, } from "./domain/health-projection.js";
|
|
2
|
+
export type { OperatingPosture, OperatingContext } from "./domain/rig-mode/operating-posture.js";
|
|
2
3
|
//# sourceMappingURL=health-projection-surface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"health-projection-surface.d.ts","sourceRoot":"","sources":["../src/health-projection-surface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,yBAAyB,EACzB,6BAA6B,EAC7B,0BAA0B,EAC1B,4BAA4B,EAC5B,6BAA6B,EAC7B,4BAA4B,EAC5B,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,2BAA2B,EAC3B,eAAe,EACf,mBAAmB,EACnB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,YAAY,GAClB,MAAM,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"health-projection-surface.d.ts","sourceRoot":"","sources":["../src/health-projection-surface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,yBAAyB,EACzB,6BAA6B,EAC7B,0BAA0B,EAC1B,4BAA4B,EAC5B,6BAA6B,EAC7B,4BAA4B,EAC5B,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,2BAA2B,EAC3B,eAAe,EACf,mBAAmB,EACnB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,YAAY,GAClB,MAAM,+BAA+B,CAAC;AACvC,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-reading-surface.d.ts","sourceRoot":"","sources":["../src/local-reading-surface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-reading-surface.js","sourceRoot":"","sources":["../src/local-reading-surface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-catalog-surface.d.ts","sourceRoot":"","sources":["../src/project-catalog-surface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-catalog-surface.js","sourceRoot":"","sources":["../src/project-catalog-surface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attention.d.ts","sourceRoot":"","sources":["../../src/routes/attention.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAa5B,wBAAgB,eAAe,IAAI,IAAI,CA6GtC"}
|