@openrig/cli 0.6.10 → 0.6.11
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/openrig-skills/SKILL.md +1 -1
- package/daemon/assets/plugins/openrig-core/skills/refocusing/scripts/trace-to-root.py +6 -1
- package/daemon/assets/skills/rigs/SKILL.md +1 -1
- package/daemon/context-packs/help/manifest.yaml +1 -1
- package/daemon/context-packs/onboarding-width/manifest.yaml +1 -1
- package/daemon/context-packs/onboarding-width/public-what-you-can-do.md +36 -11
- package/daemon/context-packs/reference/manifest.yaml +1 -1
- package/daemon/context-packs/reference/rig-spec.md +2 -2
- package/daemon/context-packs/reference/whats-new.md +135 -134
- 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/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 -1
- package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +3 -3
- package/daemon/context-packs/skills/core/openrig-software-factory/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/refocusing/scripts/trace-to-root.py +6 -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/claude-code-adapter.d.ts +0 -14
- package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
- package/daemon/dist/adapters/claude-code-adapter.js +27 -73
- package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
- package/daemon/dist/adapters/codex-runtime-adapter.d.ts +35 -0
- package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
- package/daemon/dist/adapters/codex-runtime-adapter.js +94 -44
- package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
- package/daemon/dist/adapters/pi-runner.d.ts.map +1 -1
- package/daemon/dist/adapters/pi-runner.js +6 -3
- package/daemon/dist/adapters/pi-runner.js.map +1 -1
- package/daemon/dist/adapters/pi-runtime-adapter.js +1 -1
- package/daemon/dist/adapters/pi-runtime-adapter.js.map +1 -1
- package/daemon/dist/adapters/tmux.d.ts +23 -0
- package/daemon/dist/adapters/tmux.d.ts.map +1 -1
- package/daemon/dist/adapters/tmux.js +127 -6
- package/daemon/dist/adapters/tmux.js.map +1 -1
- package/daemon/dist/build-info.js +3 -3
- package/daemon/dist/db/all-migrations.d.ts.map +1 -1
- package/daemon/dist/db/all-migrations.js +2 -0
- package/daemon/dist/db/all-migrations.js.map +1 -1
- package/daemon/dist/db/migrations/103_session_stop_intent.d.ts +4 -0
- package/daemon/dist/db/migrations/103_session_stop_intent.d.ts.map +1 -0
- package/daemon/dist/db/migrations/103_session_stop_intent.js +9 -0
- package/daemon/dist/db/migrations/103_session_stop_intent.js.map +1 -0
- package/daemon/dist/domain/active-occupant.d.ts +14 -0
- package/daemon/dist/domain/active-occupant.d.ts.map +1 -1
- package/daemon/dist/domain/active-occupant.js +17 -0
- package/daemon/dist/domain/active-occupant.js.map +1 -1
- package/daemon/dist/domain/codex-network-default.d.ts +3 -0
- package/daemon/dist/domain/codex-network-default.d.ts.map +1 -1
- package/daemon/dist/domain/codex-network-default.js +1 -1
- package/daemon/dist/domain/codex-network-default.js.map +1 -1
- package/daemon/dist/domain/codex-pane-patterns.d.ts +2 -0
- package/daemon/dist/domain/codex-pane-patterns.d.ts.map +1 -0
- package/daemon/dist/domain/codex-pane-patterns.js +5 -0
- package/daemon/dist/domain/codex-pane-patterns.js.map +1 -0
- package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
- package/daemon/dist/domain/context-monitor.js +46 -22
- package/daemon/dist/domain/context-monitor.js.map +1 -1
- package/daemon/dist/domain/cwd-resolution.d.ts +8 -0
- package/daemon/dist/domain/cwd-resolution.d.ts.map +1 -1
- package/daemon/dist/domain/cwd-resolution.js +24 -3
- package/daemon/dist/domain/cwd-resolution.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/channel-recovery.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/channel-recovery.js +4 -3
- package/daemon/dist/domain/gateway/slack/channel-recovery.js.map +1 -1
- package/daemon/dist/domain/native-process-lineage.d.ts +5 -0
- package/daemon/dist/domain/native-process-lineage.d.ts.map +1 -1
- package/daemon/dist/domain/native-process-lineage.js +53 -15
- package/daemon/dist/domain/native-process-lineage.js.map +1 -1
- package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
- package/daemon/dist/domain/node-inventory.js +15 -7
- package/daemon/dist/domain/node-inventory.js.map +1 -1
- package/daemon/dist/domain/node-launcher.d.ts.map +1 -1
- package/daemon/dist/domain/node-launcher.js +2 -1
- package/daemon/dist/domain/node-launcher.js.map +1 -1
- package/daemon/dist/domain/pane-cutover.d.ts +27 -0
- package/daemon/dist/domain/pane-cutover.d.ts.map +1 -0
- package/daemon/dist/domain/pane-cutover.js +37 -0
- package/daemon/dist/domain/pane-cutover.js.map +1 -0
- package/daemon/dist/domain/parent-session-env.d.ts +8 -0
- package/daemon/dist/domain/parent-session-env.d.ts.map +1 -0
- package/daemon/dist/domain/parent-session-env.js +37 -0
- package/daemon/dist/domain/parent-session-env.js.map +1 -0
- package/daemon/dist/domain/policies/parked-owner-consumer.d.ts +11 -0
- package/daemon/dist/domain/policies/parked-owner-consumer.d.ts.map +1 -1
- package/daemon/dist/domain/policies/parked-owner-consumer.js +81 -11
- package/daemon/dist/domain/policies/parked-owner-consumer.js.map +1 -1
- package/daemon/dist/domain/profile-resolver.d.ts.map +1 -1
- package/daemon/dist/domain/profile-resolver.js +2 -3
- package/daemon/dist/domain/profile-resolver.js.map +1 -1
- package/daemon/dist/domain/proof/judgments.d.ts +10 -5
- package/daemon/dist/domain/proof/judgments.d.ts.map +1 -1
- package/daemon/dist/domain/proof/judgments.js +27 -19
- package/daemon/dist/domain/proof/judgments.js.map +1 -1
- package/daemon/dist/domain/provider/codex-limit-banner.d.ts +2 -2
- package/daemon/dist/domain/provider/codex-limit-banner.d.ts.map +1 -1
- package/daemon/dist/domain/provider/codex-limit-banner.js +56 -9
- package/daemon/dist/domain/provider/codex-limit-banner.js.map +1 -1
- package/daemon/dist/domain/provider/codex-usage-reader.d.ts +31 -0
- package/daemon/dist/domain/provider/codex-usage-reader.d.ts.map +1 -0
- package/daemon/dist/domain/provider/codex-usage-reader.js +115 -0
- package/daemon/dist/domain/provider/codex-usage-reader.js.map +1 -0
- package/daemon/dist/domain/provider/codex-usage-windows.d.ts +78 -0
- package/daemon/dist/domain/provider/codex-usage-windows.d.ts.map +1 -0
- package/daemon/dist/domain/provider/codex-usage-windows.js +259 -0
- package/daemon/dist/domain/provider/codex-usage-windows.js.map +1 -0
- package/daemon/dist/domain/provider/provider-service-impl.d.ts +10 -0
- package/daemon/dist/domain/provider/provider-service-impl.d.ts.map +1 -1
- package/daemon/dist/domain/provider/provider-service-impl.js +27 -1
- package/daemon/dist/domain/provider/provider-service-impl.js.map +1 -1
- package/daemon/dist/domain/provider/provider-service.d.ts +5 -0
- package/daemon/dist/domain/provider/provider-service.d.ts.map +1 -1
- package/daemon/dist/domain/provider/provider-types.d.ts +65 -0
- package/daemon/dist/domain/provider/provider-types.d.ts.map +1 -1
- package/daemon/dist/domain/ps-projection.d.ts +5 -2
- package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
- package/daemon/dist/domain/ps-projection.js +27 -25
- package/daemon/dist/domain/ps-projection.js.map +1 -1
- package/daemon/dist/domain/queue-repository.d.ts +2 -0
- package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
- package/daemon/dist/domain/queue-repository.js +16 -3
- package/daemon/dist/domain/queue-repository.js.map +1 -1
- package/daemon/dist/domain/queue-stuck-sweep.d.ts.map +1 -1
- package/daemon/dist/domain/queue-stuck-sweep.js +21 -7
- package/daemon/dist/domain/queue-stuck-sweep.js.map +1 -1
- package/daemon/dist/domain/restore-check-service.d.ts +8 -0
- package/daemon/dist/domain/restore-check-service.d.ts.map +1 -1
- package/daemon/dist/domain/restore-check-service.js +12 -3
- package/daemon/dist/domain/restore-check-service.js.map +1 -1
- package/daemon/dist/domain/restore-orchestrator.d.ts +4 -0
- package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
- package/daemon/dist/domain/restore-orchestrator.js +34 -5
- package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
- package/daemon/dist/domain/restore-plan-preview.d.ts +4 -0
- package/daemon/dist/domain/restore-plan-preview.d.ts.map +1 -1
- package/daemon/dist/domain/restore-plan-preview.js +14 -3
- package/daemon/dist/domain/restore-plan-preview.js.map +1 -1
- package/daemon/dist/domain/rigspec-preflight.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-preflight.js +7 -6
- package/daemon/dist/domain/rigspec-preflight.js.map +1 -1
- package/daemon/dist/domain/runtime-adapter.d.ts +1 -0
- package/daemon/dist/domain/runtime-adapter.d.ts.map +1 -1
- package/daemon/dist/domain/runtime-adapter.js.map +1 -1
- package/daemon/dist/domain/scope/scope-view-projection.d.ts +4 -2
- package/daemon/dist/domain/scope/scope-view-projection.d.ts.map +1 -1
- package/daemon/dist/domain/scope/scope-view-projection.js +6 -4
- package/daemon/dist/domain/scope/scope-view-projection.js.map +1 -1
- package/daemon/dist/domain/seat-lifecycle-service.d.ts +117 -2
- package/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -1
- package/daemon/dist/domain/seat-lifecycle-service.js +335 -74
- package/daemon/dist/domain/seat-lifecycle-service.js.map +1 -1
- package/daemon/dist/domain/seat-restart-in-place.d.ts +292 -0
- package/daemon/dist/domain/seat-restart-in-place.d.ts.map +1 -0
- package/daemon/dist/domain/seat-restart-in-place.js +895 -0
- package/daemon/dist/domain/seat-restart-in-place.js.map +1 -0
- package/daemon/dist/domain/seat-structural-activity-service.d.ts +1 -1
- package/daemon/dist/domain/seat-structural-activity-service.d.ts.map +1 -1
- package/daemon/dist/domain/seat-structural-activity-service.js +5 -6
- package/daemon/dist/domain/seat-structural-activity-service.js.map +1 -1
- package/daemon/dist/domain/session-fingerprinter.d.ts.map +1 -1
- package/daemon/dist/domain/session-fingerprinter.js +9 -5
- package/daemon/dist/domain/session-fingerprinter.js.map +1 -1
- package/daemon/dist/domain/session-registry.d.ts +3 -0
- package/daemon/dist/domain/session-registry.d.ts.map +1 -1
- package/daemon/dist/domain/session-registry.js +6 -1
- package/daemon/dist/domain/session-registry.js.map +1 -1
- package/daemon/dist/domain/session-transport.d.ts +33 -3
- package/daemon/dist/domain/session-transport.d.ts.map +1 -1
- package/daemon/dist/domain/session-transport.js +391 -21
- package/daemon/dist/domain/session-transport.js.map +1 -1
- package/daemon/dist/domain/startup-orchestrator.d.ts +2 -0
- package/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
- package/daemon/dist/domain/startup-orchestrator.js +4 -3
- package/daemon/dist/domain/startup-orchestrator.js.map +1 -1
- package/daemon/dist/domain/successor-session-launcher.d.ts +3 -7
- package/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
- package/daemon/dist/domain/successor-session-launcher.js +6 -32
- package/daemon/dist/domain/successor-session-launcher.js.map +1 -1
- package/daemon/dist/domain/types.d.ts +29 -0
- package/daemon/dist/domain/types.d.ts.map +1 -1
- package/daemon/dist/domain/types.js.map +1 -1
- package/daemon/dist/domain/user-settings/settings-store.d.ts +1 -1
- package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
- package/daemon/dist/domain/user-settings/settings-store.js +31 -0
- package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
- package/daemon/dist/domain/wake-resolver.js +2 -2
- package/daemon/dist/domain/wake-resolver.js.map +1 -1
- package/daemon/dist/domain/watchdog-jobs-repository.d.ts.map +1 -1
- package/daemon/dist/domain/watchdog-jobs-repository.js +19 -3
- package/daemon/dist/domain/watchdog-jobs-repository.js.map +1 -1
- package/daemon/dist/domain/whoami-service.d.ts +4 -1
- package/daemon/dist/domain/whoami-service.d.ts.map +1 -1
- package/daemon/dist/domain/whoami-service.js +25 -19
- package/daemon/dist/domain/whoami-service.js.map +1 -1
- package/daemon/dist/domain/workspace/project-read.d.ts +2 -0
- package/daemon/dist/domain/workspace/project-read.d.ts.map +1 -1
- package/daemon/dist/domain/workspace/project-read.js +19 -8
- package/daemon/dist/domain/workspace/project-read.js.map +1 -1
- package/daemon/dist/index.d.ts.map +1 -1
- package/daemon/dist/index.js +6 -0
- package/daemon/dist/index.js.map +1 -1
- package/daemon/dist/routes/chat.d.ts.map +1 -1
- package/daemon/dist/routes/chat.js +23 -2
- package/daemon/dist/routes/chat.js.map +1 -1
- package/daemon/dist/routes/proof.d.ts.map +1 -1
- package/daemon/dist/routes/proof.js +99 -10
- package/daemon/dist/routes/proof.js.map +1 -1
- package/daemon/dist/routes/provider.d.ts.map +1 -1
- package/daemon/dist/routes/provider.js +31 -0
- package/daemon/dist/routes/provider.js.map +1 -1
- package/daemon/dist/routes/queue.d.ts.map +1 -1
- package/daemon/dist/routes/queue.js +18 -6
- package/daemon/dist/routes/queue.js.map +1 -1
- package/daemon/dist/routes/rigs.js +5 -3
- 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 +5 -3
- package/daemon/dist/routes/scopes.js.map +1 -1
- package/daemon/dist/routes/seat.d.ts.map +1 -1
- package/daemon/dist/routes/seat.js +32 -0
- package/daemon/dist/routes/seat.js.map +1 -1
- package/daemon/dist/startup.d.ts.map +1 -1
- package/daemon/dist/startup.js +12 -2
- package/daemon/dist/startup.js.map +1 -1
- package/daemon/docs/reference/agent-startup-guide.md +19 -0
- package/daemon/docs/reference/keeping-a-watch.md +156 -0
- package/daemon/docs/reference/rig-spec.md +2 -2
- package/daemon/docs/reference/sdlc-conventions.md +11 -1
- package/daemon/docs/reference/slack-app-setup.md +6 -4
- package/daemon/docs/reference/whats-new.md +135 -134
- package/daemon/specs/agents/shared/skills/core/openrig-skills/SKILL.md +1 -1
- package/dist/build-info.js +3 -3
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +2 -0
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/daemon.d.ts.map +1 -1
- package/dist/commands/daemon.js +7 -0
- package/dist/commands/daemon.js.map +1 -1
- package/dist/commands/proof.d.ts.map +1 -1
- package/dist/commands/proof.js +11 -5
- package/dist/commands/proof.js.map +1 -1
- package/dist/commands/provider.d.ts.map +1 -1
- package/dist/commands/provider.js +72 -0
- package/dist/commands/provider.js.map +1 -1
- package/dist/commands/ps.d.ts +4 -0
- package/dist/commands/ps.d.ts.map +1 -1
- package/dist/commands/ps.js +13 -4
- package/dist/commands/ps.js.map +1 -1
- package/dist/commands/queue.d.ts +15 -5
- package/dist/commands/queue.d.ts.map +1 -1
- package/dist/commands/queue.js +113 -37
- package/dist/commands/queue.js.map +1 -1
- package/dist/commands/scope.d.ts.map +1 -1
- package/dist/commands/scope.js +57 -36
- package/dist/commands/scope.js.map +1 -1
- package/dist/commands/seat.d.ts.map +1 -1
- package/dist/commands/seat.js +161 -10
- package/dist/commands/seat.js.map +1 -1
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +4 -3
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/up.d.ts.map +1 -1
- package/dist/commands/up.js +10 -0
- package/dist/commands/up.js.map +1 -1
- package/dist/config-store.d.ts +7 -1
- package/dist/config-store.d.ts.map +1 -1
- package/dist/config-store.js +43 -0
- package/dist/config-store.js.map +1 -1
- package/dist/lib/scope/mission-composition.d.ts +5 -1
- package/dist/lib/scope/mission-composition.d.ts.map +1 -1
- package/dist/lib/scope/mission-composition.js +61 -1
- package/dist/lib/scope/mission-composition.js.map +1 -1
- package/dist/lib/scope/scope-fs.d.ts +2 -1
- package/dist/lib/scope/scope-fs.d.ts.map +1 -1
- package/dist/lib/scope/scope-fs.js +4 -4
- package/dist/lib/scope/scope-fs.js.map +1 -1
- package/dist/lib/scope/slice-claims.d.ts +8 -0
- package/dist/lib/scope/slice-claims.d.ts.map +1 -0
- package/dist/lib/scope/slice-claims.js +88 -0
- package/dist/lib/scope/slice-claims.js.map +1 -0
- package/dist/queue-receipt.d.ts +41 -0
- package/dist/queue-receipt.d.ts.map +1 -0
- package/dist/queue-receipt.js +272 -0
- package/dist/queue-receipt.js.map +1 -0
- package/package.json +1 -1
- package/tui/dist/config/config-model.d.ts.map +1 -1
- package/tui/dist/config/config-model.js +2 -0
- package/tui/dist/config/config-model.js.map +1 -1
- package/tui/dist/hydrate.d.ts.map +1 -1
- package/tui/dist/hydrate.js +11 -4
- package/tui/dist/hydrate.js.map +1 -1
- package/tui/dist/pulse/pulse-model.d.ts +1 -0
- package/tui/dist/pulse/pulse-model.d.ts.map +1 -1
- package/tui/dist/pulse/pulse-model.js +7 -3
- package/tui/dist/pulse/pulse-model.js.map +1 -1
- package/tui/dist/pulse/render-pulse.d.ts.map +1 -1
- package/tui/dist/pulse/render-pulse.js +3 -1
- package/tui/dist/pulse/render-pulse.js.map +1 -1
- package/tui/dist/render.d.ts.map +1 -1
- package/tui/dist/render.js +26 -11
- package/tui/dist/render.js.map +1 -1
- package/tui/dist/types.d.ts +3 -0
- package/tui/dist/types.d.ts.map +1 -1
- package/ui/dist/assets/{index-D5n8EwkG.js → index-DhmxKuZf.js} +159 -159
- package/ui/dist/index.html +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"judgments.js","sourceRoot":"","sources":["../../../src/domain/proof/judgments.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"judgments.js","sourceRoot":"","sources":["../../../src/domain/proof/judgments.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ export interface CodexLimitBanner {
|
|
|
18
18
|
* An agent quoting the sentence, or an error line merely containing the
|
|
19
19
|
* words without the marker, never matches. A match inside a fenced code
|
|
20
20
|
* block is quoted agent output, not seat state. And the banner must still be
|
|
21
|
-
* the most recent content: anything below it other than the
|
|
21
|
+
* the most recent content: anything below it other than the composer
|
|
22
22
|
* or footer (a user message, a reply, further output) means a recovered seat
|
|
23
23
|
* whose old banner merely scrolled into view — Codex prints a new banner at
|
|
24
24
|
* the bottom when the limit hits again, so that is still detected.
|
|
@@ -34,7 +34,7 @@ export declare function recordCodexLimitBanner(deps: {
|
|
|
34
34
|
store: Pick<AgentActivityStore, "getLatestForNode" | "recordHookEvent">;
|
|
35
35
|
resolveGeneration: (sessionName: string) => string | null;
|
|
36
36
|
sessionName: string;
|
|
37
|
-
banner: CodexLimitBanner;
|
|
37
|
+
banner: CodexLimitBanner | null;
|
|
38
38
|
now?: () => Date;
|
|
39
39
|
}): boolean;
|
|
40
40
|
//# sourceMappingURL=codex-limit-banner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-limit-banner.d.ts","sourceRoot":"","sources":["../../../src/domain/provider/codex-limit-banner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"codex-limit-banner.d.ts","sourceRoot":"","sources":["../../../src/domain/provider/codex-limit-banner.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,4BAA4B,CAAC;AAEpC;;;;;;;GAOG;AACH,MAAM,WAAW,gBAAgB;IAC/B,0EAA0E;IAC1E,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAYD;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAgCnF;AA2DD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAE7D;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC3C,KAAK,EAAE,IAAI,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,iBAAiB,CAAC,CAAC;IACxE,iBAAiB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IAC1D,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChC,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB,GAAG,OAAO,CAuCV"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
+
import { CODEX_TURN_STATUS_PATTERN } from "../codex-pane-patterns.js";
|
|
1
2
|
import { AGENT_ACTIVITY_FRESHNESS_MS, } from "../agent-activity-store.js";
|
|
2
3
|
const BANNER_LINE_RE = /^\s*■ You've hit your usage limit\b/;
|
|
3
4
|
const RESET_RE = /try again at ([^.!\n]+)/i;
|
|
4
5
|
// Fenced code blocks: banner-shaped text an agent printed is quoted content,
|
|
5
6
|
// not the seat's own state.
|
|
6
7
|
const FENCE_RE = /^\s*```/;
|
|
7
|
-
//
|
|
8
|
-
|
|
9
|
-
const INPUT_LINE_RE = /^›\s*(Ask Codex to do anything)?\s*$/;
|
|
8
|
+
// A prompt can be a draft composer or a submitted message; its suffix decides.
|
|
9
|
+
const INPUT_LINE_RE = /^\s*›(?:\s|$)/;
|
|
10
10
|
/**
|
|
11
11
|
* Match the banner's own line form: the ■ marker must lead (after indent).
|
|
12
12
|
* An agent quoting the sentence, or an error line merely containing the
|
|
13
13
|
* words without the marker, never matches. A match inside a fenced code
|
|
14
14
|
* block is quoted agent output, not seat state. And the banner must still be
|
|
15
|
-
* the most recent content: anything below it other than the
|
|
15
|
+
* the most recent content: anything below it other than the composer
|
|
16
16
|
* or footer (a user message, a reply, further output) means a recovered seat
|
|
17
17
|
* whose old banner merely scrolled into view — Codex prints a new banner at
|
|
18
18
|
* the bottom when the limit hits again, so that is still detected.
|
|
@@ -25,6 +25,10 @@ export function detectCodexLimitBanner(paneContent) {
|
|
|
25
25
|
continue;
|
|
26
26
|
if (isFenced(lines, i))
|
|
27
27
|
continue;
|
|
28
|
+
// Once a banner is established, its following user blocks cannot supply
|
|
29
|
+
// output or alter quote boundaries. Keep initial banner recognition intact.
|
|
30
|
+
const after = withoutPromptContinuations(lines.slice(i + 1));
|
|
31
|
+
lines.splice(i + 1, after.length, ...after);
|
|
28
32
|
// The reset phrase can wrap onto the following lines in a capture — but
|
|
29
33
|
// only when the banner line doesn't carry it yet. A one-line banner with
|
|
30
34
|
// its reset text ends here: the next line is newer output, not a
|
|
@@ -49,6 +53,24 @@ export function detectCodexLimitBanner(paneContent) {
|
|
|
49
53
|
}
|
|
50
54
|
return null;
|
|
51
55
|
}
|
|
56
|
+
function withoutPromptContinuations(lines) {
|
|
57
|
+
// Codex renders draft continuations in a two-column gutter. Preserve the
|
|
58
|
+
// outer prompt as their boundary; nested markers, banners and fences are
|
|
59
|
+
// user text. Conservatively keep any deeper indentation inside that block.
|
|
60
|
+
let promptIndent = null;
|
|
61
|
+
let fenced = false;
|
|
62
|
+
return lines.map((line) => {
|
|
63
|
+
const indent = line.search(/\S/);
|
|
64
|
+
if (indent < 0)
|
|
65
|
+
return line;
|
|
66
|
+
if (promptIndent !== null && indent > promptIndent)
|
|
67
|
+
return "";
|
|
68
|
+
if (FENCE_RE.test(line))
|
|
69
|
+
fenced = !fenced;
|
|
70
|
+
promptIndent = !fenced && INPUT_LINE_RE.test(line) ? indent : null;
|
|
71
|
+
return line;
|
|
72
|
+
});
|
|
73
|
+
}
|
|
52
74
|
function isFenced(lines, index) {
|
|
53
75
|
let fenced = false;
|
|
54
76
|
for (let i = 0; i < index; i++) {
|
|
@@ -58,12 +80,22 @@ function isFenced(lines, index) {
|
|
|
58
80
|
return fenced;
|
|
59
81
|
}
|
|
60
82
|
function isMostRecent(lines, index) {
|
|
61
|
-
//
|
|
62
|
-
//
|
|
63
|
-
//
|
|
64
|
-
// below it. Before it, only blank lines may follow the block.
|
|
83
|
+
// Before the last possible composer, only blanks may follow the banner.
|
|
84
|
+
// A live turn-status row after that prompt proves it was submitted history,
|
|
85
|
+
// not an input boundary. Keep indented draft continuations as user text.
|
|
65
86
|
const after = lines.slice(index + 1);
|
|
66
|
-
|
|
87
|
+
let inputAt = after.length - 1;
|
|
88
|
+
while (inputAt >= 0 && !INPUT_LINE_RE.test(after[inputAt]))
|
|
89
|
+
inputAt--;
|
|
90
|
+
if (inputAt >= 0) {
|
|
91
|
+
const indent = after[inputAt].search(/\S/);
|
|
92
|
+
if (after.slice(inputAt + 1).some((line, offset) => {
|
|
93
|
+
const text = line.trimStart();
|
|
94
|
+
return line.length - text.length <= indent && CODEX_TURN_STATUS_PATTERN.test(text) &&
|
|
95
|
+
!isFenced(after, inputAt + 1 + offset);
|
|
96
|
+
}))
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
67
99
|
const tail = inputAt < 0 ? after : after.slice(0, inputAt);
|
|
68
100
|
return tail.every((line) => /^\s*$/.test(line));
|
|
69
101
|
}
|
|
@@ -92,6 +124,21 @@ export function recordCodexLimitBanner(deps) {
|
|
|
92
124
|
const nowFn = deps.now ?? (() => new Date());
|
|
93
125
|
const nowMs = nowFn().getTime();
|
|
94
126
|
const latest = deps.store.getLatestForNode({ sessionName: deps.sessionName });
|
|
127
|
+
if (!deps.banner) {
|
|
128
|
+
clearRecordedBanner(deps.sessionName);
|
|
129
|
+
const generation = deps.resolveGeneration(deps.sessionName);
|
|
130
|
+
// Only a newer, same-occupant capture can end the stored episode. A
|
|
131
|
+
// neutral notification supersedes the limit without inventing idle/work;
|
|
132
|
+
// the ordinary structural and motion evidence still decides the state.
|
|
133
|
+
if (latest?.rawEvent !== "at_limit" || latest.generation !== generation ||
|
|
134
|
+
!(nowMs > Date.parse(latest.eventAt ?? "")))
|
|
135
|
+
return false;
|
|
136
|
+
return deps.store.recordHookEvent({
|
|
137
|
+
runtime: "codex", sessionName: deps.sessionName,
|
|
138
|
+
hookEvent: "Notification", subtype: "usage_limit_cleared",
|
|
139
|
+
occurredAt: new Date(nowMs).toISOString(), generation,
|
|
140
|
+
}).ok;
|
|
141
|
+
}
|
|
95
142
|
if (latest?.rawEvent === "at_limit") {
|
|
96
143
|
// Still the reported episode: refresh only once the report ages out, so
|
|
97
144
|
// a night at the limit is a handful of rows, not thousands.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-limit-banner.js","sourceRoot":"","sources":["../../../src/domain/provider/codex-limit-banner.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,GAE5B,MAAM,4BAA4B,CAAC;AAiBpC,MAAM,cAAc,GAAG,qCAAqC,CAAC;AAC7D,MAAM,QAAQ,GAAG,0BAA0B,CAAC;AAE5C,6EAA6E;AAC7E,4BAA4B;AAC5B,MAAM,QAAQ,GAAG,SAAS,CAAC;AAE3B
|
|
1
|
+
{"version":3,"file":"codex-limit-banner.js","sourceRoot":"","sources":["../../../src/domain/provider/codex-limit-banner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export type CodexUsageFailureReason = "binary_not_found" | "spawn_failed" | "rpc_error" | "unrecognized_shape" | "timeout" | "child_exited" | "output_too_large";
|
|
2
|
+
/** The two raw answers, as the app-server sent them. Normalizing is the windows module's job. */
|
|
3
|
+
export type CodexUsageReadOutcome = {
|
|
4
|
+
ok: true;
|
|
5
|
+
observedAt: string;
|
|
6
|
+
account: unknown;
|
|
7
|
+
rateLimits: unknown;
|
|
8
|
+
} | {
|
|
9
|
+
ok: false;
|
|
10
|
+
at: string;
|
|
11
|
+
reason: CodexUsageFailureReason;
|
|
12
|
+
detail: string;
|
|
13
|
+
};
|
|
14
|
+
export type CodexUsageReader = () => Promise<CodexUsageReadOutcome>;
|
|
15
|
+
export interface CodexUsageReaderOptions {
|
|
16
|
+
/** The PATH, HOME and CODEX_HOME a seat session gets. */
|
|
17
|
+
launchPath?: string;
|
|
18
|
+
home?: string;
|
|
19
|
+
codexHome?: string;
|
|
20
|
+
/** Answers must arrive within this; then stdin EOF, and TERM/KILL of the reader's process group. */
|
|
21
|
+
deadlineMs?: number;
|
|
22
|
+
graceMs?: number;
|
|
23
|
+
maxOutputBytes?: number;
|
|
24
|
+
now?: () => string;
|
|
25
|
+
}
|
|
26
|
+
/** The app-server, with plugins and apps switched off for this read only (as `codex-network-default.ts`). */
|
|
27
|
+
export declare const CODEX_USAGE_READER_ARGS: string[];
|
|
28
|
+
/** Native reads take 25–35 s (Ops' readers); the refresh is bounded by the upper end. */
|
|
29
|
+
export declare const CODEX_USAGE_READ_DEADLINE_MS = 35000;
|
|
30
|
+
export declare function codexUsageReader(options?: CodexUsageReaderOptions): CodexUsageReader;
|
|
31
|
+
//# sourceMappingURL=codex-usage-reader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-usage-reader.d.ts","sourceRoot":"","sources":["../../../src/domain/provider/codex-usage-reader.ts"],"names":[],"mappings":"AAcA,MAAM,MAAM,uBAAuB,GAC/B,kBAAkB,GAClB,cAAc,GACd,WAAW,GACX,oBAAoB,GACpB,SAAS,GACT,cAAc,GACd,kBAAkB,CAAC;AAEvB,iGAAiG;AACjG,MAAM,MAAM,qBAAqB,GAC7B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,GACvE;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,uBAAuB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/E,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAEpE,MAAM,WAAW,uBAAuB;IACtC,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oGAAoG;IACpG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED,6GAA6G;AAC7G,eAAO,MAAM,uBAAuB,UAA8E,CAAC;AAEnH,yFAAyF;AACzF,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAMnD,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,uBAA4B,GAAG,gBAAgB,CAwBxF"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
// Slice 01 (OPR.0.7.0.1) — one bounded read of the Codex login's native usage windows. A one-shot
|
|
2
|
+
// `codex app-server` started with the PATH, HOME and CODEX_HOME a seat session gets answers
|
|
3
|
+
// `account/read` (refreshToken:false) and `account/rateLimits/read`, then exits on stdin EOF; the
|
|
4
|
+
// reader's process group is stopped the same way as the #275 network reader. It runs only on an
|
|
5
|
+
// explicit refresh: ordinary provider reads never call it.
|
|
6
|
+
//
|
|
7
|
+
// Identity comes only from the two RPC answers. The reader never opens auth.json or any token.
|
|
8
|
+
// Side effects: Codex startup may write its own state files in the shared CODEX_HOME (its databases,
|
|
9
|
+
// installation id, bundled skills), and a backend read may refresh the login's token in auth.json, as
|
|
10
|
+
// any Codex start can. Plugins and apps are off for this read, so no plugin sync runs.
|
|
11
|
+
import { spawn } from "node:child_process";
|
|
12
|
+
import { stopGroup } from "../codex-network-default.js";
|
|
13
|
+
/** The app-server, with plugins and apps switched off for this read only (as `codex-network-default.ts`). */
|
|
14
|
+
export const CODEX_USAGE_READER_ARGS = ["-c", "features.plugins=false", "-c", "features.apps=false", "app-server"];
|
|
15
|
+
/** Native reads take 25–35 s (Ops' readers); the refresh is bounded by the upper end. */
|
|
16
|
+
export const CODEX_USAGE_READ_DEADLINE_MS = 35_000;
|
|
17
|
+
const isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
18
|
+
const firstLine = (error) => String(error instanceof Error ? error.message : error).split("\n")[0];
|
|
19
|
+
export function codexUsageReader(options = {}) {
|
|
20
|
+
const deadlineMs = options.deadlineMs ?? CODEX_USAGE_READ_DEADLINE_MS;
|
|
21
|
+
const graceMs = options.graceMs ?? 2_000;
|
|
22
|
+
const maxOutputBytes = options.maxOutputBytes ?? 1024 * 1024;
|
|
23
|
+
const now = options.now ?? (() => new Date().toISOString());
|
|
24
|
+
return async () => {
|
|
25
|
+
const env = {
|
|
26
|
+
...process.env,
|
|
27
|
+
...(options.launchPath ? { PATH: options.launchPath } : {}),
|
|
28
|
+
...(options.home ? { HOME: options.home } : {}),
|
|
29
|
+
...(options.codexHome ? { CODEX_HOME: options.codexHome } : {}),
|
|
30
|
+
};
|
|
31
|
+
let child;
|
|
32
|
+
try {
|
|
33
|
+
// Its own process group, so cleanup reaches the reader's descendants and nothing else.
|
|
34
|
+
// Plugins and apps off, as the #275 network reader starts it: no plugin sync during a usage read.
|
|
35
|
+
child = spawn("codex", CODEX_USAGE_READER_ARGS, { cwd: options.home, env, stdio: ["pipe", "pipe", "ignore"], detached: true });
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
return { ok: false, at: now(), reason: "spawn_failed", detail: `codex app-server could not start: ${firstLine(error)}` };
|
|
39
|
+
}
|
|
40
|
+
const outcome = await converse(child, deadlineMs, maxOutputBytes, now);
|
|
41
|
+
await stopGroup(child, graceMs);
|
|
42
|
+
return outcome;
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
function converse(child, deadlineMs, maxOutputBytes, now) {
|
|
46
|
+
return new Promise((resolve) => {
|
|
47
|
+
let account;
|
|
48
|
+
let buffered = "";
|
|
49
|
+
let received = 0;
|
|
50
|
+
let settled = false;
|
|
51
|
+
const finish = (outcome) => {
|
|
52
|
+
if (settled)
|
|
53
|
+
return;
|
|
54
|
+
settled = true;
|
|
55
|
+
clearTimeout(deadline);
|
|
56
|
+
resolve(outcome);
|
|
57
|
+
};
|
|
58
|
+
const fail = (reason, detail) => finish({ ok: false, at: now(), reason, detail });
|
|
59
|
+
const deadline = setTimeout(() => fail("timeout", `codex app-server did not answer within ${deadlineMs} ms`), deadlineMs);
|
|
60
|
+
const send = (message) => {
|
|
61
|
+
if (child.stdin?.writable)
|
|
62
|
+
child.stdin.write(`${JSON.stringify(message)}\n`);
|
|
63
|
+
};
|
|
64
|
+
child.on("error", (error) => {
|
|
65
|
+
if (error.code === "ENOENT")
|
|
66
|
+
fail("binary_not_found", "no codex executable on the daemon's PATH");
|
|
67
|
+
else
|
|
68
|
+
fail("spawn_failed", `codex app-server could not start: ${firstLine(error)}`);
|
|
69
|
+
});
|
|
70
|
+
child.on("exit", (code, signal) => fail("child_exited", `codex app-server exited before answering (${signal ?? `code ${code}`})`));
|
|
71
|
+
child.stdin?.on("error", () => fail("child_exited", "codex app-server closed its input before answering"));
|
|
72
|
+
child.stdout?.setEncoding("utf8");
|
|
73
|
+
child.stdout?.on("data", (chunk) => {
|
|
74
|
+
received += Buffer.byteLength(chunk);
|
|
75
|
+
if (received > maxOutputBytes)
|
|
76
|
+
return fail("output_too_large", `codex app-server answered with more than ${maxOutputBytes} bytes`);
|
|
77
|
+
buffered += chunk;
|
|
78
|
+
let newline;
|
|
79
|
+
while ((newline = buffered.indexOf("\n")) >= 0) {
|
|
80
|
+
const line = buffered.slice(0, newline).trim();
|
|
81
|
+
buffered = buffered.slice(newline + 1);
|
|
82
|
+
if (!line)
|
|
83
|
+
continue;
|
|
84
|
+
let message;
|
|
85
|
+
try {
|
|
86
|
+
message = JSON.parse(line);
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
continue;
|
|
90
|
+
}
|
|
91
|
+
// Only responses to our own requests: notifications and server requests carry a method.
|
|
92
|
+
if (!isRecord(message) || typeof message.id !== "number" || "method" in message)
|
|
93
|
+
continue;
|
|
94
|
+
if (message.error !== undefined) {
|
|
95
|
+
const method = message.id === 1 ? "initialize" : message.id === 2 ? "account/read" : "account/rateLimits/read";
|
|
96
|
+
const text = isRecord(message.error) && typeof message.error.message === "string" ? `: ${message.error.message.split("\n")[0]}` : "";
|
|
97
|
+
return fail("rpc_error", `codex app-server returned an error for ${method}${text}`);
|
|
98
|
+
}
|
|
99
|
+
if (message.id === 1) {
|
|
100
|
+
send({ method: "initialized", params: {} });
|
|
101
|
+
send({ id: 2, method: "account/read", params: { refreshToken: false } });
|
|
102
|
+
}
|
|
103
|
+
else if (message.id === 2) {
|
|
104
|
+
account = message.result;
|
|
105
|
+
send({ id: 3, method: "account/rateLimits/read" });
|
|
106
|
+
}
|
|
107
|
+
else if (message.id === 3) {
|
|
108
|
+
return finish({ ok: true, observedAt: now(), account, rateLimits: message.result });
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
send({ id: 1, method: "initialize", params: { clientInfo: { name: "openrig_usage_windows", version: "1.0.0" }, capabilities: null } });
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=codex-usage-reader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-usage-reader.js","sourceRoot":"","sources":["../../../src/domain/provider/codex-usage-reader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import type { CodexUsageReader } from "./codex-usage-reader.js";
|
|
2
|
+
import type { ProviderUsageAllowance, UsageAllowanceIdentity, UsageRefreshOutcome, UsageWindowRow } from "./provider-types.js";
|
|
3
|
+
/** A reading is too old to claim current capacity after this (Ops' openrig.subscription-usage.v1 rule). */
|
|
4
|
+
export declare const USAGE_FRESH_FOR_MS: number;
|
|
5
|
+
/** An observation up to this far in the future is clock skew within tolerance (same rule). */
|
|
6
|
+
export declare const USAGE_CLOCK_TOLERANCE_MS = 60000;
|
|
7
|
+
interface ReadWindow {
|
|
8
|
+
window: "primary" | "secondary";
|
|
9
|
+
durationMins: number | null;
|
|
10
|
+
usedPercent: number | null;
|
|
11
|
+
resetsAt: string | null;
|
|
12
|
+
}
|
|
13
|
+
interface Reading {
|
|
14
|
+
identity: UsageAllowanceIdentity;
|
|
15
|
+
windows: ReadWindow[];
|
|
16
|
+
limitEvidence: string | null;
|
|
17
|
+
observedAt: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* The workspace `account/read` reports, when it reports one: `workspaceRouting.chatgptAccountId` at the top
|
|
21
|
+
* level of the result (a sibling of `account`). Path and types from Codex 0.162.1's generated schema
|
|
22
|
+
* (GetAccountResponse.json), relayed by Build's reviewer: `workspaceRouting` is optional and nullable, and
|
|
23
|
+
* when present `chatgptAccountId` is a non-null string. Its siblings (backendOrigin, accountRoutingOverride)
|
|
24
|
+
* are not identity. Codex 0.153.4's answer has no `workspaceRouting`, so it yields null there.
|
|
25
|
+
*/
|
|
26
|
+
export declare function accountReadWorkspaceId(account: unknown): string | null;
|
|
27
|
+
/**
|
|
28
|
+
* Normalize the two app-server answers (shapes from Codex 0.153.4's protocol: `GetAccountResponse`,
|
|
29
|
+
* `GetAccountRateLimitsResponse`). One reading per metered bucket (`rateLimitsByLimitId`, else the
|
|
30
|
+
* single-bucket `rateLimits`). Identity is the usage answer's `accountId`, else the workspace
|
|
31
|
+
* `account/read` reports, else unresolved; email and plan are labels and never part of identity.
|
|
32
|
+
*/
|
|
33
|
+
export declare function normalizeCodexUsage(account: unknown, rateLimits: unknown, observedAt: string): {
|
|
34
|
+
ok: true;
|
|
35
|
+
readings: Reading[];
|
|
36
|
+
} | {
|
|
37
|
+
ok: false;
|
|
38
|
+
detail: string;
|
|
39
|
+
};
|
|
40
|
+
/** Freshness is aged from the window's own observation, never from the time of the request. */
|
|
41
|
+
export declare function usageFreshness(observedAt: string, now: string, failedAfter: {
|
|
42
|
+
at: string;
|
|
43
|
+
} | null): Pick<UsageWindowRow, "freshness" | "freshnessReason">;
|
|
44
|
+
/** Level of one window as of its observation. Absent data is never nearing or exhausted. */
|
|
45
|
+
export declare function usageLevel(window: ReadWindow, limitEvidence: string | null, now: string): Pick<UsageWindowRow, "level" | "levelReason">;
|
|
46
|
+
/** Unresolved observations can't be matched to earlier ones, so each read adds its own rows. Keep those
|
|
47
|
+
* from the most recent few reads: enough to compare the latest with the two before it, and bounded
|
|
48
|
+
* because nothing else ever removes them. */
|
|
49
|
+
export declare const UNRESOLVED_READS_KEPT = 3;
|
|
50
|
+
export interface CodexUsageWindowsDeps {
|
|
51
|
+
read: CodexUsageReader;
|
|
52
|
+
now?: () => string;
|
|
53
|
+
}
|
|
54
|
+
export interface UsageRefreshResult {
|
|
55
|
+
refresh: UsageRefreshOutcome & {
|
|
56
|
+
coalesced: boolean;
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
export declare class CodexUsageWindows {
|
|
60
|
+
private readonly deps;
|
|
61
|
+
private readonly now;
|
|
62
|
+
private readonly startedAt;
|
|
63
|
+
private readonly readings;
|
|
64
|
+
/** Unresolved observations, grouped by read, newest last; at most UNRESOLVED_READS_KEPT reads. */
|
|
65
|
+
private unresolved;
|
|
66
|
+
private unresolvedDropped;
|
|
67
|
+
private lastRefresh;
|
|
68
|
+
private inflight;
|
|
69
|
+
constructor(deps: CodexUsageWindowsDeps);
|
|
70
|
+
/** One bounded read. A refresh asked for while one runs joins it; one asked for after it ends reads again. */
|
|
71
|
+
refresh(): Promise<UsageRefreshResult>;
|
|
72
|
+
private runRead;
|
|
73
|
+
private recordFailure;
|
|
74
|
+
/** The served rows. Reads memory only: it never starts a native read. */
|
|
75
|
+
project(now: string): ProviderUsageAllowance[];
|
|
76
|
+
}
|
|
77
|
+
export {};
|
|
78
|
+
//# sourceMappingURL=codex-usage-windows.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-usage-windows.d.ts","sourceRoot":"","sources":["../../../src/domain/provider/codex-usage-windows.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAA2B,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACzF,OAAO,KAAK,EACV,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,cAAc,EACf,MAAM,qBAAqB,CAAC;AAE7B,2GAA2G;AAC3G,eAAO,MAAM,kBAAkB,QAAc,CAAC;AAC9C,8FAA8F;AAC9F,eAAO,MAAM,wBAAwB,QAAS,CAAC;AAE/C,UAAU,UAAU;IAClB,MAAM,EAAE,SAAS,GAAG,WAAW,CAAC;IAChC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,UAAU,OAAO;IACf,QAAQ,EAAE,sBAAsB,CAAC;IACjC,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;CACpB;AAkBD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAGtE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAC3F;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,OAAO,EAAE,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAwClE;AAED,+FAA+F;AAC/F,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,GAChG,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,iBAAiB,CAAC,CActD;AAED,4FAA4F;AAC5F,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GACtF,IAAI,CAAC,cAAc,EAAE,OAAO,GAAG,aAAa,CAAC,CAW9C;AAQD;;8CAE8C;AAC9C,eAAO,MAAM,qBAAqB,IAAI,CAAC;AAEvC,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,gBAAgB,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,mBAAmB,GAAG;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC;CACvD;AAED,qBAAa,iBAAiB;IAUhB,OAAO,CAAC,QAAQ,CAAC,IAAI;IATjC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoD;IAC7E,kGAAkG;IAClG,OAAO,CAAC,UAAU,CAAmD;IACrE,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,WAAW,CAAoC;IACvD,OAAO,CAAC,QAAQ,CAA6C;gBAEhC,IAAI,EAAE,qBAAqB;IAKxD,8GAA8G;IACxG,OAAO,IAAI,OAAO,CAAC,kBAAkB,CAAC;YAW9B,OAAO;IA4BrB,OAAO,CAAC,aAAa;IAKrB,yEAAyE;IACzE,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,EAAE;CA2D/C"}
|