@openrig/cli 0.5.13 → 0.5.15
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/applying-a-permission-policy/SKILL.md +159 -108
- package/daemon/assets/plugins/openrig-core/skills/messaging-the-human/SKILL.md +40 -5
- package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +1 -0
- package/daemon/context-packs/onboarding-width/manifest.yaml +1 -1
- package/daemon/context-packs/onboarding-width/public-what-you-can-do.md +48 -14
- 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/SKILL.md +159 -108
- package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +3 -3
- 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/SKILL.md +1 -0
- package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-software-factory/SKILL.md +138 -0
- package/daemon/context-packs/skills/core/openrig-software-factory/manifest.yaml +12 -0
- package/daemon/context-packs/skills/core/openrig-software-factory/references/worked-example.md +543 -0
- 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/adapters/codex-runtime-adapter.d.ts +5 -15
- package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
- package/daemon/dist/adapters/codex-runtime-adapter.js +79 -93
- package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
- package/daemon/dist/adapters/pi-runner-protocol.d.ts.map +1 -1
- package/daemon/dist/adapters/pi-runner-protocol.js +14 -9
- package/daemon/dist/adapters/pi-runner-protocol.js.map +1 -1
- package/daemon/dist/adapters/pi-runner.d.ts +6 -15
- package/daemon/dist/adapters/pi-runner.d.ts.map +1 -1
- package/daemon/dist/adapters/pi-runner.js +151 -71
- package/daemon/dist/adapters/pi-runner.js.map +1 -1
- package/daemon/dist/attention-surface.d.ts +2 -0
- package/daemon/dist/attention-surface.d.ts.map +1 -1
- package/daemon/dist/attention-surface.js +2 -1
- package/daemon/dist/attention-surface.js.map +1 -1
- 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 +10 -2
- package/daemon/dist/db/all-migrations.js.map +1 -1
- 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/bootstrap-orchestrator.js +2 -2
- package/daemon/dist/domain/bootstrap-orchestrator.js.map +1 -1
- package/daemon/dist/domain/execution-view.d.ts.map +1 -1
- package/daemon/dist/domain/execution-view.js +18 -5
- package/daemon/dist/domain/execution-view.js.map +1 -1
- package/daemon/dist/domain/gateway/connections-projection.d.ts +3 -3
- 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/native-process-lineage.d.ts +23 -0
- package/daemon/dist/domain/native-process-lineage.d.ts.map +1 -1
- package/daemon/dist/domain/native-process-lineage.js +84 -4
- package/daemon/dist/domain/native-process-lineage.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/restore-orchestrator.d.ts.map +1 -1
- package/daemon/dist/domain/restore-orchestrator.js +20 -3
- package/daemon/dist/domain/restore-orchestrator.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/rigspec-instantiator.d.ts +18 -0
- package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-instantiator.js +109 -6
- package/daemon/dist/domain/rigspec-instantiator.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/seat-attention-reconciler.d.ts +2 -6
- package/daemon/dist/domain/seat-attention-reconciler.d.ts.map +1 -1
- package/daemon/dist/domain/seat-attention-reconciler.js +15 -6
- package/daemon/dist/domain/seat-attention-reconciler.js.map +1 -1
- package/daemon/dist/domain/seat-identity-reconciler.d.ts +5 -1
- package/daemon/dist/domain/seat-identity-reconciler.d.ts.map +1 -1
- package/daemon/dist/domain/seat-identity-reconciler.js +36 -10
- package/daemon/dist/domain/seat-identity-reconciler.js.map +1 -1
- package/daemon/dist/domain/seat-lifecycle-service.d.ts +3 -0
- package/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -1
- package/daemon/dist/domain/seat-lifecycle-service.js +3 -0
- package/daemon/dist/domain/seat-lifecycle-service.js.map +1 -1
- package/daemon/dist/domain/terminal/terminal-service.d.ts +2 -0
- package/daemon/dist/domain/terminal/terminal-service.d.ts.map +1 -1
- package/daemon/dist/domain/terminal/terminal-service.js +4 -1
- package/daemon/dist/domain/terminal/terminal-service.js.map +1 -1
- package/daemon/dist/domain/workspace/project-read.d.ts +1 -1
- package/daemon/dist/domain/workspace/project-read.d.ts.map +1 -1
- package/daemon/dist/domain/workspace/project-read.js +24 -6
- package/daemon/dist/domain/workspace/project-read.js.map +1 -1
- package/daemon/dist/routes/attention.js +2 -2
- package/daemon/dist/routes/attention.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/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 +37 -28
- package/daemon/dist/routes/scopes.js.map +1 -1
- package/daemon/dist/routes/sessions.js +12 -1
- package/daemon/dist/routes/sessions.js.map +1 -1
- package/daemon/dist/routes/up.js +4 -4
- package/daemon/dist/routes/up.js.map +1 -1
- package/daemon/dist/startup.d.ts.map +1 -1
- package/daemon/dist/startup.js +11 -1
- package/daemon/dist/startup.js.map +1 -1
- package/daemon/docs/reference/agent-startup-guide.md +11 -3
- package/daemon/docs/reference/getting-started.md +211 -14
- package/daemon/docs/reference/rig-spec.md +7 -0
- package/daemon/policies/builtin/yolo.policy.md +14 -4
- package/daemon/specs/agents/shared/skills/core/messaging-the-human/SKILL.md +40 -5
- package/daemon/specs/agents/shared/skills/core/openrig-skills/SKILL.md +1 -0
- package/daemon/specs/agents/shared/skills/core/openrig-software-factory/SKILL.md +138 -0
- package/daemon/specs/agents/shared/skills/core/openrig-software-factory/references/worked-example.md +543 -0
- package/dist/build-info.js +3 -3
- package/dist/commands/launch.d.ts.map +1 -1
- package/dist/commands/launch.js +27 -2
- package/dist/commands/launch.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/up.d.ts.map +1 -1
- package/dist/commands/up.js +13 -2
- package/dist/commands/up.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/adapters/codex-runtime-adapter.d.ts +5 -15
- package/node_modules/@openrig/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/adapters/codex-runtime-adapter.js +79 -93
- package/node_modules/@openrig/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/adapters/pi-runner-protocol.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/adapters/pi-runner-protocol.js +14 -9
- package/node_modules/@openrig/daemon/dist/adapters/pi-runner-protocol.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/adapters/pi-runner.d.ts +6 -15
- package/node_modules/@openrig/daemon/dist/adapters/pi-runner.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/adapters/pi-runner.js +151 -71
- package/node_modules/@openrig/daemon/dist/adapters/pi-runner.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/attention-surface.d.ts +2 -0
- package/node_modules/@openrig/daemon/dist/attention-surface.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/attention-surface.js +2 -1
- package/node_modules/@openrig/daemon/dist/attention-surface.js.map +1 -1
- 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 +10 -2
- package/node_modules/@openrig/daemon/dist/db/all-migrations.js.map +1 -1
- 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/bootstrap-orchestrator.js +2 -2
- package/node_modules/@openrig/daemon/dist/domain/bootstrap-orchestrator.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/execution-view.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/execution-view.js +18 -5
- package/node_modules/@openrig/daemon/dist/domain/execution-view.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/gateway/connections-projection.d.ts +3 -3
- 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/native-process-lineage.d.ts +23 -0
- package/node_modules/@openrig/daemon/dist/domain/native-process-lineage.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/native-process-lineage.js +84 -4
- package/node_modules/@openrig/daemon/dist/domain/native-process-lineage.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/restore-orchestrator.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/restore-orchestrator.js +20 -3
- package/node_modules/@openrig/daemon/dist/domain/restore-orchestrator.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/rigspec-instantiator.d.ts +18 -0
- package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.js +109 -6
- package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.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/seat-attention-reconciler.d.ts +2 -6
- package/node_modules/@openrig/daemon/dist/domain/seat-attention-reconciler.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-attention-reconciler.js +15 -6
- package/node_modules/@openrig/daemon/dist/domain/seat-attention-reconciler.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-identity-reconciler.d.ts +5 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-identity-reconciler.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-identity-reconciler.js +36 -10
- package/node_modules/@openrig/daemon/dist/domain/seat-identity-reconciler.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-lifecycle-service.d.ts +3 -0
- package/node_modules/@openrig/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/seat-lifecycle-service.js +3 -0
- package/node_modules/@openrig/daemon/dist/domain/seat-lifecycle-service.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/terminal/terminal-service.d.ts +2 -0
- 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 +4 -1
- package/node_modules/@openrig/daemon/dist/domain/terminal/terminal-service.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workspace/project-read.d.ts +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workspace/project-read.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/domain/workspace/project-read.js +24 -6
- package/node_modules/@openrig/daemon/dist/domain/workspace/project-read.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/attention.js +2 -2
- package/node_modules/@openrig/daemon/dist/routes/attention.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/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 +37 -28
- package/node_modules/@openrig/daemon/dist/routes/scopes.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/sessions.js +12 -1
- package/node_modules/@openrig/daemon/dist/routes/sessions.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/routes/up.js +4 -4
- package/node_modules/@openrig/daemon/dist/routes/up.js.map +1 -1
- package/node_modules/@openrig/daemon/dist/startup.d.ts.map +1 -1
- package/node_modules/@openrig/daemon/dist/startup.js +11 -1
- package/node_modules/@openrig/daemon/dist/startup.js.map +1 -1
- package/node_modules/@openrig/daemon/package.json +1 -1
- package/package.json +1 -1
- package/tui/dist/attention/attention-model.d.ts +19 -0
- package/tui/dist/attention/attention-model.d.ts.map +1 -1
- package/tui/dist/attention/attention-model.js +46 -5
- package/tui/dist/attention/attention-model.js.map +1 -1
- 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.map +1 -1
- package/tui/dist/commands/help.js +1 -0
- package/tui/dist/commands/help.js.map +1 -1
- package/tui/dist/commands/registry.d.ts.map +1 -1
- package/tui/dist/commands/registry.js +3 -2
- package/tui/dist/commands/registry.js.map +1 -1
- package/tui/dist/config/config-model.js +1 -1
- 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 +15 -2
- package/tui/dist/daemon-client.d.ts.map +1 -1
- package/tui/dist/daemon-client.js +14 -5
- 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/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/hydrate.d.ts.map +1 -1
- package/tui/dist/hydrate.js +40 -25
- package/tui/dist/hydrate.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/main.js +50 -7
- package/tui/dist/main.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/render.d.ts +5 -0
- package/tui/dist/render.d.ts.map +1 -1
- package/tui/dist/render.js +60 -14
- package/tui/dist/render.js.map +1 -1
- package/tui/dist/scopes/scopes-model.d.ts +2 -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 +6 -3
- package/tui/dist/sections.js.map +1 -1
- package/tui/dist/startup.d.ts +4 -1
- package/tui/dist/startup.d.ts.map +1 -1
- package/tui/dist/startup.js +41 -15
- package/tui/dist/startup.js.map +1 -1
- package/tui/dist/state.d.ts.map +1 -1
- package/tui/dist/state.js +30 -18
- package/tui/dist/state.js.map +1 -1
- package/tui/dist/stylize.d.ts.map +1 -1
- package/tui/dist/stylize.js +18 -27
- package/tui/dist/stylize.js.map +1 -1
- package/tui/dist/terminals/terminal-model.d.ts +2 -0
- package/tui/dist/terminals/terminal-model.d.ts.map +1 -1
- package/tui/dist/terminals/terminal-model.js +28 -10
- package/tui/dist/terminals/terminal-model.js.map +1 -1
- package/tui/dist/types.d.ts +12 -1
- package/tui/dist/types.d.ts.map +1 -1
package/tui/dist/hydrate.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { composeHumanUpdates } from "./attention/attention-model.js";
|
|
1
2
|
import { readTerminals } from "./terminals/terminal-model.js";
|
|
2
3
|
import { fileTargetForPath } from "./reading.js";
|
|
3
4
|
// Snapshot hydrator: maps the §4.A daemon reads (via DaemonClient, the one
|
|
@@ -197,12 +198,18 @@ export async function hydrateSnapshot(client, reviewCache, executionMission, sli
|
|
|
197
198
|
if (viewContext?.externalUrl)
|
|
198
199
|
return { ...emptySnapshot(), hydratedAt: new Date().toISOString() };
|
|
199
200
|
if (viewContext?.section === "needs") {
|
|
200
|
-
const [
|
|
201
|
-
safe("
|
|
201
|
+
const [attention, updates, roots] = await Promise.all([
|
|
202
|
+
safe("Feed", () => client.humanAttention(viewContext.attentionOpen)),
|
|
203
|
+
safe("delivered updates", () => client.humanUpdates()),
|
|
202
204
|
safe("file-roots", () => client.fileRoots()),
|
|
203
205
|
]);
|
|
206
|
+
const attentionRead = composeHumanUpdates(attention, updates, viewContext.attentionOpen);
|
|
204
207
|
return { ...emptySnapshot(), attentionRead, fileRoots: roots?.roots ?? [], readErrors, hydratedAt: new Date().toISOString() };
|
|
205
208
|
}
|
|
209
|
+
if (viewContext?.section === "system") {
|
|
210
|
+
const health = await safe("health-findings", () => client.healthFindings());
|
|
211
|
+
return { ...emptySnapshot(), ...(health ? { health: { ...health, availability: "loaded" } } : {}), readErrors, hydratedAt: new Date().toISOString() };
|
|
212
|
+
}
|
|
206
213
|
// Project reads never fall back to the daemon's default workspace or fleet queue.
|
|
207
214
|
if (viewContext?.section === "scopes") {
|
|
208
215
|
const projects = await safe("projects", () => client.projects());
|
|
@@ -211,10 +218,12 @@ export async function hydrateSnapshot(client, reviewCache, executionMission, sli
|
|
|
211
218
|
if (selected && (!project || project.error))
|
|
212
219
|
readErrors.push(`project ${selected.id}: ${project?.error ?? "selection changed or unavailable; choose the project again"}`);
|
|
213
220
|
const readable = !!project && !project.error;
|
|
214
|
-
const
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
221
|
+
const scopes = readable ? await safe("scopes", () => client.scopesDetailed(selected)) : null;
|
|
222
|
+
const mission = scopes?.missions?.find(m => m.mission === executionMission);
|
|
223
|
+
const slice = mission?.slices.find(s => s.dirName === sliceDetailName);
|
|
224
|
+
const [execution, detail, roots] = await Promise.all([
|
|
225
|
+
readable && executionMission && !mission?.error ? safe("execution", () => client.execution(executionMission, selected)) : null,
|
|
226
|
+
readable && executionMission && sliceDetailName && !mission?.error && !slice?.error ? safe("slice-detail", () => client.sliceDetail(sliceDetailName, executionMission, selected)) : null,
|
|
218
227
|
safe("file-roots", () => client.fileRoots()),
|
|
219
228
|
]);
|
|
220
229
|
readErrors.push(...(scopes?.readErrors ?? []));
|
|
@@ -259,25 +268,27 @@ export async function hydrateSnapshot(client, reviewCache, executionMission, sli
|
|
|
259
268
|
const wantsSpecs = !viewContext || viewContext.section === "specs" || topologyLeaf?.kind === "agent";
|
|
260
269
|
const wantsTopologyScope = !viewContext || viewContext.section === "topology";
|
|
261
270
|
const wantsRecent = wantsTopologyScope && (!topologyLeaf || topologyLeaf.kind === "host" || topologyLeaf.kind === "rig");
|
|
271
|
+
const focusedTopology = !!viewContext && wantsTopologyScope && viewContext.viewTab !== "pulse";
|
|
272
|
+
const broadReads = !readingOnly && !focusedTopology && !wantsConnections;
|
|
262
273
|
const wantsGraph = wantsTopologyScope && (!viewContext || viewContext.viewTab === "graph");
|
|
263
274
|
const [instanceHealth, healthProjection, agg, summaries, library, review, streamItems, attention, blocked, inProgress, pending, recentlyFinished, scopesRead, executionRead, sliceDetailRead, connectionsRead] = await Promise.all([
|
|
264
275
|
safe("health", () => client.health()),
|
|
265
|
-
|
|
266
|
-
|
|
276
|
+
!(broadReads || viewContext?.viewTab === "health") ? Promise.resolve(null) : safe("health-findings", () => client.healthFindings()),
|
|
277
|
+
!broadReads ? Promise.resolve(null) : safe("attention-aggregate", () => client.attentionAggregate()),
|
|
267
278
|
readingOnly ? Promise.resolve(null) : safe("rigs-summary", () => client.rigsSummary()),
|
|
268
279
|
(wantsSpecs || wantsConnections) ? safe("specs-library", () => client.specsLibrary()) : Promise.resolve(null),
|
|
269
|
-
|
|
270
|
-
|
|
280
|
+
!broadReads ? Promise.resolve(null) : safe("review-fleet", () => client.reviewFleet()),
|
|
281
|
+
!broadReads ? Promise.resolve(null) : safe("stream-tail", () => client.streamLatest()),
|
|
271
282
|
// PULSE ▲ NEEDS YOU + ⧗ BLOCKED + ◌ PARKED — the shipped queue reads (increments 2/2b)
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
283
|
+
!broadReads ? Promise.resolve(null) : safe("queue-attention", () => client.queueAttention()),
|
|
284
|
+
!broadReads ? Promise.resolve(null) : safe("queue-blocked", () => client.queueBlocked()),
|
|
285
|
+
!broadReads ? Promise.resolve(null) : safe("queue-in-progress", () => client.queueInProgress()),
|
|
275
286
|
// PULSE UP NEXT + JUST FINISHED lane reads (increment 3) — same shipped /list route
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
287
|
+
!broadReads ? Promise.resolve(null) : safe("queue-pending", () => client.queuePending()),
|
|
288
|
+
!broadReads ? Promise.resolve(null) : safe("queue-recently-finished", () => client.queueRecentlyFinished()),
|
|
289
|
+
!broadReads ? Promise.resolve(null) : safe("scopes", () => client.scopesDetailed()),
|
|
290
|
+
!broadReads ? Promise.resolve(null) : safe("execution", () => client.execution(executionMission ?? undefined)),
|
|
291
|
+
broadReads && sliceDetailName
|
|
281
292
|
? safe(`slice-detail(${sliceDetailName})`, () => client.sliceDetail(sliceDetailName))
|
|
282
293
|
: Promise.resolve(null),
|
|
283
294
|
wantsConnections ? safe("connections", () => client.connections()) : Promise.resolve(null),
|
|
@@ -287,7 +298,7 @@ export async function hydrateSnapshot(client, reviewCache, executionMission, sli
|
|
|
287
298
|
readErrors.push("scopes: proof source updates unavailable; current HTTP basis only");
|
|
288
299
|
if (review?.registryError)
|
|
289
300
|
readErrors.push(`review-fleet registry: ${review.registryError}`);
|
|
290
|
-
const recentTransitionsRig = currentRigName ?? summaries?.[0]?.name ?? null;
|
|
301
|
+
const recentTransitionsRig = currentRigName ?? (!viewContext ? summaries?.[0]?.name : null) ?? null;
|
|
291
302
|
const recentTransitionsScope = topologyLeaf?.kind === "host"
|
|
292
303
|
? { kind: "instance" }
|
|
293
304
|
: recentTransitionsRig ? { kind: "rig", rig: recentTransitionsRig } : null;
|
|
@@ -297,16 +308,16 @@ export async function hydrateSnapshot(client, reviewCache, executionMission, sli
|
|
|
297
308
|
// BLOCKED ON AGENTS label==referent (r1 finding): blockedOn is a qitem POINTER
|
|
298
309
|
// for agent-blocks, so the blocking AGENT is that qitem's OWNER. Resolve each
|
|
299
310
|
// via the shipped single-qitem daemon read (client.queueItem) — a BOUNDED
|
|
300
|
-
// per-row lookup. human
|
|
301
|
-
//
|
|
311
|
+
// per-row lookup. Canonical human references take precedence even when their
|
|
312
|
+
// local part starts with qitem-; typed and legacy gates are not local IDs.
|
|
302
313
|
// A miss (gate name / closed blocker) degrades QUIETLY to the raw blockedOn at
|
|
303
314
|
// render (honest) — this is enrichment, NOT a load-bearing read, so it must not
|
|
304
315
|
// pollute readErrors / the "reads failed" status line (the blocked LIST read,
|
|
305
316
|
// which IS load-bearing, already goes through safe()).
|
|
306
317
|
const blockedResolved = await Promise.all((blocked ?? []).map(async (item) => {
|
|
307
318
|
const read = toQueueRead(item);
|
|
308
|
-
if (read.blockedOn && !isHumanSeatSession(read.blockedOn)) {
|
|
309
|
-
const blocker = (await client.queueItem(read.blockedOn).catch(() => null));
|
|
319
|
+
if (read.blockedOn && !isHumanSeatSession(read.blockedOn) && read.blockedOn.startsWith("qitem-")) {
|
|
320
|
+
const blocker = (await client.queueItem(read.blockedOn, { optional: true }).catch(() => null));
|
|
310
321
|
read.blockerSession = blocker?.destinationSession ?? null;
|
|
311
322
|
}
|
|
312
323
|
return read;
|
|
@@ -323,7 +334,9 @@ export async function hydrateSnapshot(client, reviewCache, executionMission, sli
|
|
|
323
334
|
// one entry per agent seat WITH a canonical session (infra seats have none).
|
|
324
335
|
const seatActivity = [];
|
|
325
336
|
for (const rig of summaries ?? []) {
|
|
326
|
-
const
|
|
337
|
+
const readInventory = wantsConnections ? connectionsRead?.configuration?.inboundDestination?.split("@")[1] === rig.name
|
|
338
|
+
: !focusedTopology || topologyLeaf?.kind === "host" || currentRigName === rig.name;
|
|
339
|
+
const nodes = readInventory ? await safe(`nodes(${rig.name})`, () => client.rigNodes(rig.id)) : null;
|
|
327
340
|
for (const node of nodes ?? []) {
|
|
328
341
|
if (node.nodeKind !== "agent" || !node.canonicalSessionName)
|
|
329
342
|
continue;
|
|
@@ -347,12 +360,14 @@ export async function hydrateSnapshot(client, reviewCache, executionMission, sli
|
|
|
347
360
|
id: rig.id,
|
|
348
361
|
name: rig.name,
|
|
349
362
|
pods: nodes ? groupPods(nodes) : [],
|
|
363
|
+
...(!readInventory ? { inventoryNotLoaded: true } : nodes === null ? { inventoryUnavailable: true } : {}),
|
|
350
364
|
...(graph ? { graph } : {}),
|
|
351
365
|
...(rig.lifecycleState ? { lifecycleState: rig.lifecycleState } : {}),
|
|
366
|
+
hasLiveAgents: rig.hasLiveAgents ?? null,
|
|
352
367
|
authoredSpecName: undefined,
|
|
353
368
|
};
|
|
354
369
|
rigs.push(rigRow);
|
|
355
|
-
if (rig.lifecycleState && rig.lifecycleState !== "running") {
|
|
370
|
+
if (broadReads && rig.lifecycleState && rig.lifecycleState !== "running") {
|
|
356
371
|
// rig-down leg (§4.A): summary lifecycleState verbatim, enriched by the
|
|
357
372
|
// rig-status projection where it answers — composed BESIDE the items.
|
|
358
373
|
const st = await safe(`rig-status(${rig.name})`, () => client.rigStatus(rig.id));
|
package/tui/dist/hydrate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hydrate.js","sourceRoot":"","sources":["../src/hydrate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hydrate.js","sourceRoot":"","sources":["../src/hydrate.ts"],"names":[],"mappings":"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"}
|
package/tui/dist/live.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { PageRead } from "./page-read.js";
|
|
1
2
|
import type { FleetSnapshot, LoadState, RowFlash } from "./types.js";
|
|
2
3
|
/** one-shot flash window (ms) — matches renderScreen's flashActive window */
|
|
3
4
|
export declare const FLASH_WINDOW_MS = 600;
|
|
@@ -7,7 +8,8 @@ export interface QuietTimerHandle {
|
|
|
7
8
|
unref?: () => void;
|
|
8
9
|
}
|
|
9
10
|
export interface LiveRefreshDeps {
|
|
10
|
-
hydrate: () => Promise<FleetSnapshot>;
|
|
11
|
+
hydrate: (page: PageRead, signal: AbortSignal) => Promise<FleetSnapshot>;
|
|
12
|
+
scopeKey?: () => string;
|
|
11
13
|
/** draw callback — invoked when the load lifecycle or data changes, so the
|
|
12
14
|
* in-flight frame is actually DRAWN at start and cleared on settle */
|
|
13
15
|
onFrame: () => void;
|
package/tui/dist/live.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../src/live.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../src/live.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAgB1C,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAErE,6EAA6E;AAC7E,eAAO,MAAM,eAAe,MAAM,CAAC;AACnC,sEAAsE;AACtE,eAAO,MAAM,gBAAgB,QAAS,CAAC;AAEvC,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;IACzE,QAAQ,CAAC,EAAE,MAAM,MAAM,CAAC;IACxB;0EACsE;IACtE,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,GAAG,EAAE,MAAM,MAAM,CAAC;IAClB,wEAAwE;IACxE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,gBAAgB,CAAC;IACzE,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACnD;AAED,MAAM,WAAW,WAAW;IAC1B;iFAC6E;IAC7E,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,gBAAgB,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,KAAK,IAAI,CAAC;IACzE,QAAQ,EAAE,MAAM,aAAa,CAAC;IAC9B,IAAI,EAAE,MAAM,SAAS,CAAC;IACtB,OAAO,EAAE,MAAM,QAAQ,EAAE,CAAC;IAC1B,kDAAkD;IAClD,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAcD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,WAAW,CAgIpE"}
|
package/tui/dist/live.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { PageRead } from "./page-read.js";
|
|
1
2
|
// S19 ROUND-5 (guard NOT-CLEAR at b92c2a58): the refresh OWNER — the one
|
|
2
3
|
// component that knows when a hydrate is actually IN FLIGHT and which seat
|
|
3
4
|
// produced fresh PANE OUTPUT between refreshes. renderScreen stays pure and
|
|
@@ -32,8 +33,46 @@ export function createLiveRefresh(deps) {
|
|
|
32
33
|
let invalidation = 0;
|
|
33
34
|
let lastConfirmedAt = null;
|
|
34
35
|
let snapshot = emptySnapshot();
|
|
35
|
-
|
|
36
|
+
let load = { inFlight: false, settled: false };
|
|
36
37
|
let flashes = [];
|
|
38
|
+
let scope = deps.scopeKey?.() ?? "";
|
|
39
|
+
let generation = 0;
|
|
40
|
+
let controller = new AbortController();
|
|
41
|
+
let page = new PageRead(deps.now, forgetDenied);
|
|
42
|
+
// Bounded history local to this client. Returning revalidates the page's own reads.
|
|
43
|
+
const pages = new Map();
|
|
44
|
+
function forgetDenied(url) {
|
|
45
|
+
// A denial in one view also invalidates historical views of that same URL.
|
|
46
|
+
// Unrelated pages and successful sibling reads in this page remain intact.
|
|
47
|
+
for (const [key, entry] of pages)
|
|
48
|
+
if (entry.page.has(url))
|
|
49
|
+
pages.delete(key);
|
|
50
|
+
}
|
|
51
|
+
function syncScope() {
|
|
52
|
+
const next = deps.scopeKey?.() ?? "";
|
|
53
|
+
if (next === scope)
|
|
54
|
+
return;
|
|
55
|
+
pages.delete(scope);
|
|
56
|
+
pages.set(scope, { page, snapshot, load: { ...load, inFlight: false }, lastConfirmedAt });
|
|
57
|
+
while (pages.size > 12)
|
|
58
|
+
pages.delete(pages.keys().next().value);
|
|
59
|
+
const prior = pages.get(next);
|
|
60
|
+
const navigator = snapshot;
|
|
61
|
+
scope = next;
|
|
62
|
+
generation += 1;
|
|
63
|
+
controller.abort();
|
|
64
|
+
controller = new AbortController();
|
|
65
|
+
page = prior?.page ?? new PageRead(deps.now, forgetDenied);
|
|
66
|
+
snapshot = prior?.snapshot ?? { ...emptySnapshot(), hosts: navigator.hosts, specs: navigator.specs,
|
|
67
|
+
projects: navigator.projects, projectRead: navigator.projectRead, scopes: navigator.scopes,
|
|
68
|
+
terminals: navigator.terminals && { catalog: navigator.terminals.catalog, catalogLoaded: navigator.terminals.catalogLoaded, preview: null } };
|
|
69
|
+
flashes = [];
|
|
70
|
+
lastConfirmedAt = prior?.lastConfirmedAt ?? null;
|
|
71
|
+
load = prior ? { ...prior.load, stale: true, inFlight: false } : { inFlight: false, settled: false };
|
|
72
|
+
// An old transport may take time to unwind. It cannot delay the new page.
|
|
73
|
+
const expected = generation;
|
|
74
|
+
runRefresh = singleFlight(() => expected === generation ? readPage() : Promise.resolve());
|
|
75
|
+
}
|
|
37
76
|
let quietTimer = null;
|
|
38
77
|
let closed = false;
|
|
39
78
|
let refresh;
|
|
@@ -55,13 +94,23 @@ export function createLiveRefresh(deps) {
|
|
|
55
94
|
}, QUIET_REFRESH_MS);
|
|
56
95
|
quietTimer.unref?.();
|
|
57
96
|
}
|
|
58
|
-
const
|
|
97
|
+
const readPage = async () => {
|
|
59
98
|
clearQuietTimer();
|
|
99
|
+
syncScope();
|
|
100
|
+
const startedGeneration = generation;
|
|
101
|
+
const activePage = page;
|
|
102
|
+
activePage.begin();
|
|
60
103
|
const startedAtInvalidation = invalidation;
|
|
61
104
|
load.inFlight = true;
|
|
62
105
|
deps.onFrame();
|
|
63
106
|
try {
|
|
64
|
-
const next = await deps.hydrate();
|
|
107
|
+
const next = await deps.hydrate(activePage, controller.signal);
|
|
108
|
+
syncScope();
|
|
109
|
+
if (startedGeneration !== generation || closed)
|
|
110
|
+
return;
|
|
111
|
+
activePage.end();
|
|
112
|
+
next.readErrors = [...new Set([...next.readErrors, ...activePage.errors])];
|
|
113
|
+
load.retainedAt = activePage.retainedAt;
|
|
65
114
|
if (load.settled) {
|
|
66
115
|
// first hydrate is a LOAD, not fresh output — no flash; null (no
|
|
67
116
|
// signal) never flashes either: only a served false→true transition
|
|
@@ -73,23 +122,32 @@ export function createLiveRefresh(deps) {
|
|
|
73
122
|
flashes.push({ key, at: now });
|
|
74
123
|
}
|
|
75
124
|
snapshot = next;
|
|
76
|
-
load.stale = startedAtInvalidation !== invalidation || next.readErrors.
|
|
125
|
+
load.stale = startedAtInvalidation !== invalidation || next.readErrors.length > 0;
|
|
77
126
|
if (!load.stale)
|
|
78
127
|
lastConfirmedAt = deps.now();
|
|
128
|
+
load.lastSuccessAt = lastConfirmedAt ?? undefined;
|
|
79
129
|
}
|
|
80
130
|
catch {
|
|
131
|
+
if (startedGeneration !== generation || closed)
|
|
132
|
+
return;
|
|
81
133
|
load.stale = true;
|
|
82
134
|
// rejection-release: the prior snapshot stays (nothing fabricated),
|
|
83
135
|
// in-flight clears below, and the next requested refresh retries
|
|
84
136
|
}
|
|
85
137
|
finally {
|
|
138
|
+
if (startedGeneration !== generation || closed)
|
|
139
|
+
return;
|
|
86
140
|
load.inFlight = false;
|
|
87
141
|
load.settled = true;
|
|
88
142
|
deps.onFrame();
|
|
89
143
|
armQuietTimer();
|
|
90
144
|
}
|
|
91
|
-
}
|
|
145
|
+
};
|
|
146
|
+
let runRefresh = singleFlight(() => generation === 0 ? readPage() : Promise.resolve());
|
|
92
147
|
refresh = () => {
|
|
148
|
+
if (closed)
|
|
149
|
+
return Promise.resolve();
|
|
150
|
+
syncScope();
|
|
93
151
|
clearQuietTimer();
|
|
94
152
|
return runRefresh();
|
|
95
153
|
};
|
|
@@ -104,11 +162,12 @@ export function createLiveRefresh(deps) {
|
|
|
104
162
|
void refresh();
|
|
105
163
|
deps.onFrame();
|
|
106
164
|
},
|
|
107
|
-
snapshot: () => snapshot,
|
|
108
|
-
load: () => ({ ...load, ...(lastConfirmedAt !== null && deps.now() - lastConfirmedAt > 60_000 ? { stale: true } : {}) }
|
|
165
|
+
snapshot: () => { syncScope(); return snapshot; },
|
|
166
|
+
load: () => { syncScope(); return { ...load, ...(lastConfirmedAt !== null && deps.now() - lastConfirmedAt > 60_000 ? { stale: true } : {}) }; },
|
|
109
167
|
flashes: () => [...flashes],
|
|
110
168
|
close: () => {
|
|
111
169
|
closed = true;
|
|
170
|
+
controller.abort();
|
|
112
171
|
clearQuietTimer();
|
|
113
172
|
},
|
|
114
173
|
};
|
package/tui/dist/live.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live.js","sourceRoot":"","sources":["../src/live.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,2EAA2E;AAC3E,4EAA4E;AAC5E,2EAA2E;AAC3E,EAAE;AACF,4EAA4E;AAC5E,6EAA6E;AAC7E,wEAAwE;AACxE,0EAA0E;AAC1E,6EAA6E;AAC7E,4EAA4E;AAC5E,2EAA2E;AAC3E,sDAAsD;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG3C,6EAA6E;AAC7E,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC;AACnC,sEAAsE;AACtE,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"live.js","sourceRoot":"","sources":["../src/live.ts"],"names":[],"mappings":"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"}
|
package/tui/dist/main.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { pageReadKey } from "./page-read.js";
|
|
2
3
|
import { completeCommand } from "./commands/completion.js";
|
|
3
4
|
import { resolveTimeZone } from "./time.js";
|
|
4
5
|
// Entry: wires the four input adapters (command bar / keyboard / mouse /
|
|
@@ -7,7 +8,7 @@ import { resolveTimeZone } from "./time.js";
|
|
|
7
8
|
// keystrokes ARE the keyboard adapter.
|
|
8
9
|
//
|
|
9
10
|
// openrig-tui [--instance <id>] [--socket <path>] [--url <daemon>] [--demo]
|
|
10
|
-
import { createViewState, computeExplorerRows, emptySnapshot } from "./state.js";
|
|
11
|
+
import { createViewState, computeExplorerRows, emptySnapshot, locationKey } from "./state.js";
|
|
11
12
|
import { parseCommand } from "./grammar.js";
|
|
12
13
|
import { filterPalette, paletteExecuteLine } from "./commands/palette.js";
|
|
13
14
|
import { COMMAND_REGISTRY, currentCommandContext } from "./commands/registry.js";
|
|
@@ -117,7 +118,7 @@ async function run() {
|
|
|
117
118
|
};
|
|
118
119
|
const selectedRigName = () => view.get().drill.find((part) => part.kind === "rig")?.name ?? null;
|
|
119
120
|
const live = client
|
|
120
|
-
? createLiveRefresh({ hydrate: () => hydrateSnapshot(client, reviewCache, view.get().scopesMission, selectedSliceDirectory(), selectedRigName(), view.get()), onFrame: () => draw(), now: () => Date.now() })
|
|
121
|
+
? createLiveRefresh({ scopeKey: () => pageReadKey(view.get()), hydrate: (page, signal) => hydrateSnapshot(client.forPage(page, signal), reviewCache, view.get().scopesMission, selectedSliceDirectory(), selectedRigName(), view.get()), onFrame: () => draw(), now: () => Date.now() })
|
|
121
122
|
: null;
|
|
122
123
|
let motionTimer = null;
|
|
123
124
|
// S19 AM-R18 — the open view updates ITSELF: oracle pushes drive the refresh owner.
|
|
@@ -125,6 +126,11 @@ async function run() {
|
|
|
125
126
|
// daemon client (one oracle, with the owner's bounded quiet fallback; HTTP stays
|
|
126
127
|
// in the client module).
|
|
127
128
|
let liveEnabled = false;
|
|
129
|
+
let inputRevision = 0;
|
|
130
|
+
let drawnScope = pageReadKey(view.get());
|
|
131
|
+
let drawnSnapshot = snapshot;
|
|
132
|
+
let drawnSettled = false;
|
|
133
|
+
let previousPage;
|
|
128
134
|
let activityEvents = null;
|
|
129
135
|
function enableLive() {
|
|
130
136
|
if (!live || !client || startup?.state.connection !== "up")
|
|
@@ -143,18 +149,38 @@ async function run() {
|
|
|
143
149
|
const cols = process.stdout.columns ?? 120;
|
|
144
150
|
const rows = process.stdout.rows ?? 32;
|
|
145
151
|
const nowMs = Date.now();
|
|
152
|
+
if (live) {
|
|
153
|
+
const next = live.snapshot();
|
|
154
|
+
const scope = pageReadKey(view.get());
|
|
155
|
+
if (next !== drawnSnapshot && live.load().settled) {
|
|
156
|
+
const oldKey = scope === drawnScope && drawnSettled
|
|
157
|
+
? computeExplorerRows(view.get(), snapshot)[view.get().selection]?.key
|
|
158
|
+
: locationKey(view.get());
|
|
159
|
+
const rows = computeExplorerRows(view.get(), next);
|
|
160
|
+
const index = oldKey ? rows.findIndex(row => row.key === oldKey) : -1;
|
|
161
|
+
const selection = index >= 0 ? index : Math.min(view.get().selection, Math.max(0, rows.length - 1));
|
|
162
|
+
if (selection !== view.get().selection)
|
|
163
|
+
view.dispatch({ type: "select", index: selection, rowCount: rows.length });
|
|
164
|
+
}
|
|
165
|
+
drawnScope = scope;
|
|
166
|
+
drawnSnapshot = next;
|
|
167
|
+
drawnSettled = live.load().settled;
|
|
168
|
+
}
|
|
146
169
|
if (live)
|
|
147
170
|
snapshot = { ...live.snapshot(),
|
|
148
171
|
...(!liveEnabled ? { readErrors: [`Live data not loaded · connection ${startup?.state.connection ?? "probing"} · L Local reading · S Startup`] } : {}),
|
|
149
172
|
launchingCli: process.env["OPENRIG_TUI_CLI_IDENTITY"]?.replace(/[\x00-\x1f\x7f]/g, " ").slice(0, 180) };
|
|
150
173
|
const opts = { cols, rows, nowMs, completion, colorMode: style.mode, commandContext: commandContext(), ...crashCartOpts, ...(startup?.state.open && !view.get().palette ? { startup: startup.state } : {}), restoreScroll: restoreScrollOffset, ...(liveEnabled && live ? { load: live.load(), rowFlashes: live.flashes() } : {}) };
|
|
151
|
-
|
|
174
|
+
if (liveEnabled && live?.load().settled)
|
|
175
|
+
previousPage = { state: { ...view.get() }, snapshot };
|
|
176
|
+
const pageOptions = { ...opts, ...(liveEnabled && !live?.load().settled ? { previousPage } : {}) };
|
|
177
|
+
lastScreen = renderScreen(view.get(), snapshot, pageOptions, inputLine);
|
|
152
178
|
if (startup?.state.local)
|
|
153
179
|
startup.state.local.scroll = Math.min(startup.state.local.scroll, lastScreen.contentMaxOffset);
|
|
154
180
|
// Startup has its own selection/scroll; keep the underlying reader bookmark intact.
|
|
155
|
-
if (!startup?.state.open && !view.get().palette && (view.get().contentMaxOffset !== lastScreen.contentMaxOffset || view.get().contentTargetCount !== lastScreen.contentTargets.length)) {
|
|
181
|
+
if (!startup?.state.open && !view.get().palette && (!liveEnabled || live?.load().settled) && (view.get().contentMaxOffset !== lastScreen.contentMaxOffset || view.get().contentTargetCount !== lastScreen.contentTargets.length)) {
|
|
156
182
|
view.dispatch({ type: "layout", contentMaxOffset: lastScreen.contentMaxOffset, contentTargetCount: lastScreen.contentTargets.length });
|
|
157
|
-
lastScreen = renderScreen(view.get(), snapshot,
|
|
183
|
+
lastScreen = renderScreen(view.get(), snapshot, pageOptions, inputLine);
|
|
158
184
|
}
|
|
159
185
|
// styling is a zero-width post-pass over the tested plain layer — the
|
|
160
186
|
// hitMap coordinates always match what is on screen
|
|
@@ -186,7 +212,13 @@ async function run() {
|
|
|
186
212
|
resolve();
|
|
187
213
|
});
|
|
188
214
|
}),
|
|
189
|
-
onChange:
|
|
215
|
+
onChange: () => {
|
|
216
|
+
draw();
|
|
217
|
+
// Skip during the probe must remain skipped, but can start reads when
|
|
218
|
+
// the connection later answers. This never changes the chosen page.
|
|
219
|
+
if (!startup?.state.open && startup?.state.connection === "up" && !liveEnabled && enableLive())
|
|
220
|
+
void live?.refresh();
|
|
221
|
+
},
|
|
190
222
|
onHelp: () => { view.dispatch({ type: "palette-open" }); draw(); },
|
|
191
223
|
readLocal: (request) => readLocal(cliEntry, request),
|
|
192
224
|
onNative: async (seat) => {
|
|
@@ -213,18 +245,23 @@ async function run() {
|
|
|
213
245
|
}
|
|
214
246
|
},
|
|
215
247
|
onWork: async (rig, seat) => {
|
|
248
|
+
const revision = inputRevision;
|
|
216
249
|
crashCartOpts = {};
|
|
217
|
-
view.dispatch({ type: "notice", message:
|
|
250
|
+
view.dispatch({ type: "notice", message: startup?.state.connection === "up" ? "" : "Live data waits for a confirmed connection · S Startup · L Local" });
|
|
218
251
|
draw();
|
|
219
252
|
if (!enableLive())
|
|
220
253
|
return;
|
|
221
254
|
await live?.refresh();
|
|
255
|
+
if (revision !== inputRevision)
|
|
256
|
+
return;
|
|
222
257
|
const current = live?.snapshot() ?? snapshot;
|
|
223
258
|
const host = current.hosts.find((host) => host.rigs.some((entry) => entry.id === rig?.rigId));
|
|
224
259
|
if (rig && host) {
|
|
225
260
|
view.dispatch({ type: "drill", resource: "rig", name: rig.rigName, target: { host: host.name } });
|
|
226
261
|
await live?.refresh();
|
|
227
262
|
}
|
|
263
|
+
if (revision !== inputRevision)
|
|
264
|
+
return;
|
|
228
265
|
if (seat && host)
|
|
229
266
|
view.dispatch({ type: "drill", resource: "agent", name: seat.observed.sessionName, target: { host: host.name, rig: rig.rigName } });
|
|
230
267
|
draw();
|
|
@@ -360,6 +397,10 @@ async function run() {
|
|
|
360
397
|
socketPath,
|
|
361
398
|
view,
|
|
362
399
|
onMutation: () => {
|
|
400
|
+
inputRevision += 1;
|
|
401
|
+
startup?.interacted();
|
|
402
|
+
if (startup)
|
|
403
|
+
startup.state.open = false;
|
|
363
404
|
draw();
|
|
364
405
|
refreshFromActivity();
|
|
365
406
|
},
|
|
@@ -430,6 +471,8 @@ async function run() {
|
|
|
430
471
|
if (nativeAttached)
|
|
431
472
|
return;
|
|
432
473
|
for (const ev of events) {
|
|
474
|
+
inputRevision += 1;
|
|
475
|
+
startup?.interacted();
|
|
433
476
|
if (startup?.state.open && !view.get().palette) {
|
|
434
477
|
if (ev.type === "char" && ev.ch === "q") {
|
|
435
478
|
void shutdown();
|