harnery 0.34.1 → 0.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commander.d.ts +30 -5
- package/dist/commander.d.ts.map +1 -1
- package/dist/commander.js +124 -94
- package/dist/commands/agents.d.ts +37 -6
- package/dist/commands/agents.d.ts.map +1 -1
- package/dist/commands/agents.js +466 -371
- package/dist/commands/backup.d.ts.map +1 -1
- package/dist/commands/backup.js +10 -10
- package/dist/commands/browse-session.d.ts.map +1 -1
- package/dist/commands/browse-session.js +12 -0
- package/dist/commands/browse.d.ts +1 -1
- package/dist/commands/browse.d.ts.map +1 -1
- package/dist/commands/browse.js +31 -6
- package/dist/commands/conversations.d.ts +10 -0
- package/dist/commands/conversations.d.ts.map +1 -0
- package/dist/commands/conversations.js +201 -0
- package/dist/commands/decision.d.ts.map +1 -1
- package/dist/commands/decision.js +2 -2
- package/dist/commands/deinit.d.ts.map +1 -1
- package/dist/commands/deinit.js +5 -0
- package/dist/commands/docs.d.ts.map +1 -1
- package/dist/commands/docs.js +13 -2
- package/dist/commands/doctor.d.ts +5 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +51 -7
- package/dist/commands/events.d.ts.map +1 -1
- package/dist/commands/events.js +18 -1
- package/dist/commands/fetch.js +6 -5
- package/dist/commands/files.d.ts +22 -0
- package/dist/commands/files.d.ts.map +1 -0
- package/dist/commands/files.js +113 -0
- package/dist/commands/governor.js +14 -12
- package/dist/commands/inbox.d.ts +5 -0
- package/dist/commands/inbox.d.ts.map +1 -0
- package/dist/commands/inbox.js +57 -0
- package/dist/commands/init.d.ts +4 -5
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +63 -13
- package/dist/commands/ledger-v3.d.ts.map +1 -1
- package/dist/commands/ledger-v3.js +347 -1
- package/dist/commands/logs.d.ts +4 -0
- package/dist/commands/logs.d.ts.map +1 -0
- package/dist/commands/logs.js +169 -0
- package/dist/commands/messages.d.ts +5 -0
- package/dist/commands/messages.d.ts.map +1 -0
- package/dist/commands/messages.js +45 -0
- package/dist/commands/outline.d.ts +1 -1
- package/dist/commands/outline.d.ts.map +1 -1
- package/dist/commands/outline.js +2 -2
- package/dist/commands/presence.d.ts.map +1 -1
- package/dist/commands/presence.js +2 -2
- package/dist/commands/read.d.ts +1 -1
- package/dist/commands/read.d.ts.map +1 -1
- package/dist/commands/read.js +2 -2
- package/dist/commands/semantic.d.ts +4 -0
- package/dist/commands/semantic.d.ts.map +1 -0
- package/dist/commands/semantic.js +199 -0
- package/dist/commands/storage.d.ts +4 -0
- package/dist/commands/storage.d.ts.map +1 -0
- package/dist/commands/storage.js +238 -0
- package/dist/commands/tunnel.d.ts +5 -1
- package/dist/commands/tunnel.d.ts.map +1 -1
- package/dist/commands/tunnel.js +44 -31
- package/dist/commands/web.d.ts +3 -0
- package/dist/commands/web.d.ts.map +1 -1
- package/dist/commands/web.js +84 -7
- package/dist/commands/work.js +3 -3
- package/dist/commands/workflow.js +13 -13
- package/dist/core/adapters/profiles.d.ts +1 -1
- package/dist/core/agents/canonical-emit.d.ts +3 -0
- package/dist/core/agents/canonical-emit.d.ts.map +1 -1
- package/dist/core/agents/canonical-emit.js +12 -0
- package/dist/core/agents/claim-path.d.ts +11 -0
- package/dist/core/agents/claim-path.d.ts.map +1 -0
- package/dist/core/agents/claim-path.js +22 -0
- package/dist/core/agents/cli.js +209 -39
- package/dist/core/agents/coord-client.d.ts +29 -3
- package/dist/core/agents/coord-client.d.ts.map +1 -1
- package/dist/core/agents/coord-client.js +88 -9
- package/dist/core/agents/live-authority-v3.d.ts +47 -1
- package/dist/core/agents/live-authority-v3.d.ts.map +1 -1
- package/dist/core/agents/live-authority-v3.js +245 -13
- package/dist/core/agents/live-lifecycle-v3.js +9 -4
- package/dist/core/agents/live-observation-v3.d.ts.map +1 -1
- package/dist/core/agents/live-observation-v3.js +8 -3
- package/dist/core/agents/render/prompt-context.d.ts +9 -3
- package/dist/core/agents/render/prompt-context.d.ts.map +1 -1
- package/dist/core/agents/render/prompt-context.js +36 -17
- package/dist/core/agents/rules/stop-hook.d.ts +2 -0
- package/dist/core/agents/rules/stop-hook.d.ts.map +1 -1
- package/dist/core/agents/rules/stop-hook.js +115 -22
- package/dist/core/agents/rules/verdict.d.ts +1 -0
- package/dist/core/agents/rules/verdict.d.ts.map +1 -1
- package/dist/core/agents/session-events.d.ts.map +1 -1
- package/dist/core/agents/session-events.js +4 -0
- package/dist/core/agents/session-finalization-state-v3.js +1 -1
- package/dist/core/agents/session-finalizer-v3.js +5 -1
- package/dist/core/agents/session-name-display.d.ts +1 -0
- package/dist/core/agents/session-name-display.d.ts.map +1 -1
- package/dist/core/agents/session-name-display.js +8 -1
- package/dist/core/agents/state/activity-log.d.ts +3 -0
- package/dist/core/agents/state/activity-log.d.ts.map +1 -1
- package/dist/core/agents/state/activity-log.js +6 -3
- package/dist/core/agents/state/heartbeat-reader.d.ts +46 -0
- package/dist/core/agents/state/heartbeat-reader.d.ts.map +1 -0
- package/dist/core/agents/state/heartbeat-reader.js +25 -0
- package/dist/core/agents/state/heartbeat-writer.d.ts +9 -48
- package/dist/core/agents/state/heartbeat-writer.d.ts.map +1 -1
- package/dist/core/agents/state/heartbeat-writer.js +34 -34
- package/dist/core/agents/state/live-coordination-view.d.ts +6 -8
- package/dist/core/agents/state/live-coordination-view.d.ts.map +1 -1
- package/dist/core/agents/state/live-coordination-view.js +16 -67
- package/dist/core/agents/state/live-coordination-writer.d.ts +12 -0
- package/dist/core/agents/state/live-coordination-writer.d.ts.map +1 -0
- package/dist/core/agents/state/live-coordination-writer.js +92 -0
- package/dist/core/agents/state/names.d.ts +9 -1
- package/dist/core/agents/state/names.d.ts.map +1 -1
- package/dist/core/agents/state/names.js +190 -182
- package/dist/core/agents/state/stale-sweep.d.ts.map +1 -1
- package/dist/core/agents/state/stale-sweep.js +23 -5
- package/dist/core/artifacts/constants.d.ts +5 -0
- package/dist/core/artifacts/constants.d.ts.map +1 -0
- package/dist/core/artifacts/constants.js +4 -0
- package/dist/core/artifacts/index.d.ts +24 -3
- package/dist/core/artifacts/index.d.ts.map +1 -1
- package/dist/core/artifacts/index.js +96 -8
- package/dist/core/config.d.ts +62 -4
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +98 -4
- package/dist/core/conversations/archive.d.ts +49 -0
- package/dist/core/conversations/archive.d.ts.map +1 -0
- package/dist/core/conversations/archive.js +136 -0
- package/dist/core/conversations/catalog.d.ts +10 -0
- package/dist/core/conversations/catalog.d.ts.map +1 -0
- package/dist/core/conversations/catalog.js +72 -0
- package/dist/core/conversations/context-pack.d.ts +6 -0
- package/dist/core/conversations/context-pack.d.ts.map +1 -0
- package/dist/core/conversations/context-pack.js +60 -0
- package/dist/core/conversations/contract.d.ts +155 -0
- package/dist/core/conversations/contract.d.ts.map +1 -0
- package/dist/core/conversations/contract.js +1 -0
- package/dist/core/conversations/evaluation.d.ts +16 -0
- package/dist/core/conversations/evaluation.d.ts.map +1 -0
- package/dist/core/conversations/evaluation.js +9 -0
- package/dist/core/conversations/index.d.ts +10 -0
- package/dist/core/conversations/index.d.ts.map +1 -0
- package/dist/core/conversations/index.js +9 -0
- package/dist/core/conversations/lifecycle.d.ts +28 -0
- package/dist/core/conversations/lifecycle.d.ts.map +1 -0
- package/dist/core/conversations/lifecycle.js +29 -0
- package/dist/core/conversations/normalize.d.ts +14 -0
- package/dist/core/conversations/normalize.d.ts.map +1 -0
- package/dist/core/conversations/normalize.js +82 -0
- package/dist/core/conversations/query.d.ts +8 -0
- package/dist/core/conversations/query.d.ts.map +1 -0
- package/dist/core/conversations/query.js +280 -0
- package/dist/core/conversations/search-index.d.ts +9 -0
- package/dist/core/conversations/search-index.d.ts.map +1 -0
- package/dist/core/conversations/search-index.js +29 -0
- package/dist/core/events/legacy-storage/canary.d.ts +18 -0
- package/dist/core/events/legacy-storage/canary.d.ts.map +1 -0
- package/dist/core/events/legacy-storage/canary.js +150 -0
- package/dist/core/events/legacy-storage/fence.d.ts +15 -0
- package/dist/core/events/legacy-storage/fence.d.ts.map +1 -0
- package/dist/core/events/legacy-storage/fence.js +115 -0
- package/dist/core/events/legacy-storage/index.d.ts +6 -0
- package/dist/core/events/legacy-storage/index.d.ts.map +1 -0
- package/dist/core/events/legacy-storage/index.js +5 -0
- package/dist/core/events/legacy-storage/inventory.d.ts +10 -0
- package/dist/core/events/legacy-storage/inventory.d.ts.map +1 -0
- package/dist/core/events/legacy-storage/inventory.js +40 -0
- package/dist/core/events/legacy-storage/manifest.d.ts +23 -0
- package/dist/core/events/legacy-storage/manifest.d.ts.map +1 -0
- package/dist/core/events/legacy-storage/manifest.js +108 -0
- package/dist/core/events/legacy-storage/reader.d.ts +15 -0
- package/dist/core/events/legacy-storage/reader.d.ts.map +1 -0
- package/dist/core/events/legacy-storage/reader.js +154 -0
- package/dist/core/events/v3/authority-outbox.d.ts +7 -2
- package/dist/core/events/v3/authority-outbox.d.ts.map +1 -1
- package/dist/core/events/v3/authority-outbox.js +16 -3
- package/dist/core/events/v3/base-contract.d.ts +851 -16
- package/dist/core/events/v3/base-contract.d.ts.map +1 -1
- package/dist/core/events/v3/base-contract.js +50 -7
- package/dist/core/events/v3/bootstrap.d.ts +39 -0
- package/dist/core/events/v3/bootstrap.d.ts.map +1 -1
- package/dist/core/events/v3/bootstrap.js +167 -3
- package/dist/core/events/v3/capabilities.d.ts +11 -0
- package/dist/core/events/v3/capabilities.d.ts.map +1 -1
- package/dist/core/events/v3/capabilities.js +26 -3
- package/dist/core/events/v3/control-witness.d.ts +44 -0
- package/dist/core/events/v3/control-witness.d.ts.map +1 -0
- package/dist/core/events/v3/control-witness.js +233 -0
- package/dist/core/events/v3/control-writer.d.ts +4 -0
- package/dist/core/events/v3/control-writer.d.ts.map +1 -0
- package/dist/core/events/v3/control-writer.js +16 -0
- package/dist/core/events/v3/control.d.ts +8 -2
- package/dist/core/events/v3/control.d.ts.map +1 -1
- package/dist/core/events/v3/control.js +46 -18
- package/dist/core/events/v3/coordination-transaction-recovery.d.ts +42 -0
- package/dist/core/events/v3/coordination-transaction-recovery.d.ts.map +1 -0
- package/dist/core/events/v3/coordination-transaction-recovery.js +342 -0
- package/dist/core/events/v3/coordination-view.d.ts.map +1 -1
- package/dist/core/events/v3/coordination-view.js +16 -1
- package/dist/core/events/v3/generated.d.ts +1 -1
- package/dist/core/events/v3/generated.js +1 -1
- package/dist/core/events/v3/index.d.ts +8 -5
- package/dist/core/events/v3/index.d.ts.map +1 -1
- package/dist/core/events/v3/index.js +7 -4
- package/dist/core/events/v3/latency.d.ts +31 -1
- package/dist/core/events/v3/latency.d.ts.map +1 -1
- package/dist/core/events/v3/latency.js +127 -3
- package/dist/core/events/v3/live-route-observer.d.ts +31 -0
- package/dist/core/events/v3/live-route-observer.d.ts.map +1 -0
- package/dist/core/events/v3/live-route-observer.js +58 -0
- package/dist/core/events/v3/live-routing.d.ts +42 -20
- package/dist/core/events/v3/live-routing.d.ts.map +1 -1
- package/dist/core/events/v3/live-routing.js +153 -41
- package/dist/core/events/v3/producers/command-recorder.d.ts.map +1 -1
- package/dist/core/events/v3/producers/command-recorder.js +10 -1
- package/dist/core/events/v3/producers/coordination-recorder.d.ts +11 -1
- package/dist/core/events/v3/producers/coordination-recorder.d.ts.map +1 -1
- package/dist/core/events/v3/producers/coordination-recorder.js +90 -13
- package/dist/core/events/v3/producers/diagnostic-summaries.d.ts +129 -0
- package/dist/core/events/v3/producers/diagnostic-summaries.d.ts.map +1 -0
- package/dist/core/events/v3/producers/diagnostic-summaries.js +499 -0
- package/dist/core/events/v3/producers/hook-base.d.ts +17 -1
- package/dist/core/events/v3/producers/hook-base.d.ts.map +1 -1
- package/dist/core/events/v3/producers/hook-base.js +83 -2
- package/dist/core/events/v3/producers/intake.d.ts +13 -0
- package/dist/core/events/v3/producers/intake.d.ts.map +1 -1
- package/dist/core/events/v3/producers/intake.js +36 -2
- package/dist/core/events/v3/producers/producer-state-observer.d.ts +8 -0
- package/dist/core/events/v3/producers/producer-state-observer.d.ts.map +1 -0
- package/dist/core/events/v3/producers/producer-state-observer.js +45 -0
- package/dist/core/events/v3/producers/recorder.d.ts +117 -1
- package/dist/core/events/v3/producers/recorder.d.ts.map +1 -1
- package/dist/core/events/v3/producers/recorder.js +992 -27
- package/dist/core/events/v3/reader.d.ts +51 -0
- package/dist/core/events/v3/reader.d.ts.map +1 -1
- package/dist/core/events/v3/reader.js +181 -1
- package/dist/core/events/v3/rotation-config.d.ts +9 -0
- package/dist/core/events/v3/rotation-config.d.ts.map +1 -0
- package/dist/core/events/v3/rotation-config.js +91 -0
- package/dist/core/events/v3/runtime-build.d.ts +11 -0
- package/dist/core/events/v3/runtime-build.d.ts.map +1 -0
- package/dist/core/events/v3/runtime-build.js +39 -0
- package/dist/core/events/v3/runtime-identity.d.ts +5 -0
- package/dist/core/events/v3/runtime-identity.d.ts.map +1 -0
- package/dist/core/events/v3/runtime-identity.js +18 -0
- package/dist/core/events/v3/runtime-telemetry-capabilities.d.ts +52 -0
- package/dist/core/events/v3/runtime-telemetry-capabilities.d.ts.map +1 -0
- package/dist/core/events/v3/runtime-telemetry-capabilities.js +54 -0
- package/dist/core/events/v3/support-storage/classify.d.ts +46 -0
- package/dist/core/events/v3/support-storage/classify.d.ts.map +1 -0
- package/dist/core/events/v3/support-storage/classify.js +149 -0
- package/dist/core/events/v3/support-storage/eligibility.d.ts +29 -0
- package/dist/core/events/v3/support-storage/eligibility.d.ts.map +1 -0
- package/dist/core/events/v3/support-storage/eligibility.js +35 -0
- package/dist/core/events/v3/support-storage/index.d.ts +10 -0
- package/dist/core/events/v3/support-storage/index.d.ts.map +1 -0
- package/dist/core/events/v3/support-storage/index.js +9 -0
- package/dist/core/events/v3/support-storage/inventory.d.ts +30 -0
- package/dist/core/events/v3/support-storage/inventory.d.ts.map +1 -0
- package/dist/core/events/v3/support-storage/inventory.js +94 -0
- package/dist/core/events/v3/support-storage/logical-authority.d.ts +14 -0
- package/dist/core/events/v3/support-storage/logical-authority.d.ts.map +1 -0
- package/dist/core/events/v3/support-storage/logical-authority.js +104 -0
- package/dist/core/events/v3/support-storage/maintenance.d.ts +98 -0
- package/dist/core/events/v3/support-storage/maintenance.d.ts.map +1 -0
- package/dist/core/events/v3/support-storage/maintenance.js +352 -0
- package/dist/core/events/v3/support-storage/pack-contract.d.ts +59 -0
- package/dist/core/events/v3/support-storage/pack-contract.d.ts.map +1 -0
- package/dist/core/events/v3/support-storage/pack-contract.js +249 -0
- package/dist/core/events/v3/support-storage/pack-reader.d.ts +34 -0
- package/dist/core/events/v3/support-storage/pack-reader.d.ts.map +1 -0
- package/dist/core/events/v3/support-storage/pack-reader.js +258 -0
- package/dist/core/events/v3/support-storage/pack-writer.d.ts +30 -0
- package/dist/core/events/v3/support-storage/pack-writer.d.ts.map +1 -0
- package/dist/core/events/v3/support-storage/pack-writer.js +268 -0
- package/dist/core/events/v3/support-storage/recovery.d.ts +15 -0
- package/dist/core/events/v3/support-storage/recovery.d.ts.map +1 -0
- package/dist/core/events/v3/support-storage/recovery.js +22 -0
- package/dist/core/events/v3/turn-telemetry.d.ts +21 -6
- package/dist/core/events/v3/turn-telemetry.d.ts.map +1 -1
- package/dist/core/events/v3/turn-telemetry.js +32 -2
- package/dist/core/events/v3/writer.d.ts +13 -1
- package/dist/core/events/v3/writer.d.ts.map +1 -1
- package/dist/core/events/v3/writer.js +126 -12
- package/dist/core/governor/plan-read.d.ts.map +1 -1
- package/dist/core/governor/plan-read.js +5 -21
- package/dist/core/governor/planning.js +6 -8
- package/dist/core/governor/service-read.d.ts +12 -0
- package/dist/core/governor/service-read.d.ts.map +1 -1
- package/dist/core/governor/service-read.js +266 -2
- package/dist/core/governor/service.d.ts +1 -0
- package/dist/core/governor/service.d.ts.map +1 -1
- package/dist/core/governor/service.js +53 -18
- package/dist/core/guard/evidence-v3.d.ts.map +1 -1
- package/dist/core/guard/evidence-v3.js +2 -0
- package/dist/core/hooks/adapter/events.d.ts.map +1 -1
- package/dist/core/hooks/adapter/events.js +1 -0
- package/dist/core/hooks/adapter/output.d.ts +4 -2
- package/dist/core/hooks/adapter/output.d.ts.map +1 -1
- package/dist/core/hooks/adapter/output.js +13 -5
- package/dist/core/hooks/adapter/parse.d.ts +3 -0
- package/dist/core/hooks/adapter/parse.d.ts.map +1 -1
- package/dist/core/hooks/adapter/parse.js +14 -0
- package/dist/core/hooks/adapter/runtime-telemetry.d.ts +142 -0
- package/dist/core/hooks/adapter/runtime-telemetry.d.ts.map +1 -0
- package/dist/core/hooks/adapter/runtime-telemetry.js +869 -0
- package/dist/core/hooks/cli.js +318 -61
- package/dist/core/hooks/effects/image-capture.d.ts +1 -1
- package/dist/core/hooks/effects/image-capture.d.ts.map +1 -1
- package/dist/core/hooks/effects/image-capture.js +4 -2
- package/dist/core/hooks/remediation-cap.d.ts +39 -0
- package/dist/core/hooks/remediation-cap.d.ts.map +1 -0
- package/dist/core/hooks/remediation-cap.js +63 -0
- package/dist/core/hooks/resolve/coord-root.d.ts +22 -9
- package/dist/core/hooks/resolve/coord-root.d.ts.map +1 -1
- package/dist/core/hooks/resolve/coord-root.js +92 -11
- package/dist/core/hooks/resolve/owner.d.ts.map +1 -1
- package/dist/core/hooks/resolve/owner.js +5 -0
- package/dist/core/hooks/resolve/transcript.d.ts +33 -9
- package/dist/core/hooks/resolve/transcript.d.ts.map +1 -1
- package/dist/core/hooks/resolve/transcript.js +33 -10
- package/dist/core/inbox/contract.d.ts +64 -0
- package/dist/core/inbox/contract.d.ts.map +1 -0
- package/dist/core/inbox/contract.js +13 -0
- package/dist/core/inbox/index.d.ts +5 -0
- package/dist/core/inbox/index.d.ts.map +1 -0
- package/dist/core/inbox/index.js +4 -0
- package/dist/core/inbox/lifecycle.d.ts +22 -0
- package/dist/core/inbox/lifecycle.d.ts.map +1 -0
- package/dist/core/inbox/lifecycle.js +41 -0
- package/dist/core/inbox/service.d.ts +36 -0
- package/dist/core/inbox/service.d.ts.map +1 -0
- package/dist/core/inbox/service.js +210 -0
- package/dist/core/inbox/watcher.d.ts +7 -0
- package/dist/core/inbox/watcher.d.ts.map +1 -0
- package/dist/core/inbox/watcher.js +26 -0
- package/dist/core/presence/codec-digest.d.ts.map +1 -1
- package/dist/core/presence/codec-digest.js +14 -3
- package/dist/core/presence/relay-client.d.ts +1 -0
- package/dist/core/presence/relay-client.d.ts.map +1 -1
- package/dist/core/presence/relay-client.js +52 -8
- package/dist/core/semantic/adapters.d.ts +37 -0
- package/dist/core/semantic/adapters.d.ts.map +1 -0
- package/dist/core/semantic/adapters.js +360 -0
- package/dist/core/semantic/contract.d.ts +1072 -0
- package/dist/core/semantic/contract.d.ts.map +1 -0
- package/dist/core/semantic/contract.js +331 -0
- package/dist/core/semantic/evidence.d.ts +11 -0
- package/dist/core/semantic/evidence.d.ts.map +1 -0
- package/dist/core/semantic/evidence.js +262 -0
- package/dist/core/semantic/index.d.ts +14 -0
- package/dist/core/semantic/index.d.ts.map +1 -0
- package/dist/core/semantic/index.js +13 -0
- package/dist/core/semantic/once.d.ts +38 -0
- package/dist/core/semantic/once.d.ts.map +1 -0
- package/dist/core/semantic/once.js +364 -0
- package/dist/core/semantic/prompt.d.ts +12 -0
- package/dist/core/semantic/prompt.d.ts.map +1 -0
- package/dist/core/semantic/prompt.js +83 -0
- package/dist/core/semantic/review.d.ts +144 -0
- package/dist/core/semantic/review.d.ts.map +1 -0
- package/dist/core/semantic/review.js +544 -0
- package/dist/core/semantic/routes.d.ts +10 -0
- package/dist/core/semantic/routes.d.ts.map +1 -0
- package/dist/core/semantic/routes.js +21 -0
- package/dist/core/semantic/scheduler.d.ts +27 -0
- package/dist/core/semantic/scheduler.d.ts.map +1 -0
- package/dist/core/semantic/scheduler.js +91 -0
- package/dist/core/semantic/service-status.d.ts +51 -0
- package/dist/core/semantic/service-status.d.ts.map +1 -0
- package/dist/core/semantic/service-status.js +140 -0
- package/dist/core/semantic/service.d.ts +52 -0
- package/dist/core/semantic/service.d.ts.map +1 -0
- package/dist/core/semantic/service.js +559 -0
- package/dist/core/semantic/soak.d.ts +75 -0
- package/dist/core/semantic/soak.d.ts.map +1 -0
- package/dist/core/semantic/soak.js +476 -0
- package/dist/core/semantic/storage.d.ts +81 -0
- package/dist/core/semantic/storage.d.ts.map +1 -0
- package/dist/core/semantic/storage.js +180 -0
- package/dist/core/semantic/usage.d.ts +43 -0
- package/dist/core/semantic/usage.d.ts.map +1 -0
- package/dist/core/semantic/usage.js +193 -0
- package/dist/core/semantic/validate.d.ts +18 -0
- package/dist/core/semantic/validate.d.ts.map +1 -0
- package/dist/core/semantic/validate.js +207 -0
- package/dist/core/storage/buffer.d.ts +28 -0
- package/dist/core/storage/buffer.d.ts.map +1 -0
- package/dist/core/storage/buffer.js +101 -0
- package/dist/core/storage/builtins.d.ts +3 -0
- package/dist/core/storage/builtins.d.ts.map +1 -0
- package/dist/core/storage/builtins.js +683 -0
- package/dist/core/storage/catalog.d.ts +19 -0
- package/dist/core/storage/catalog.d.ts.map +1 -0
- package/dist/core/storage/catalog.js +365 -0
- package/dist/core/storage/config.d.ts +16 -0
- package/dist/core/storage/config.d.ts.map +1 -0
- package/dist/core/storage/config.js +311 -0
- package/dist/core/storage/contract.d.ts +275 -0
- package/dist/core/storage/contract.d.ts.map +1 -0
- package/dist/core/storage/contract.js +3 -0
- package/dist/core/storage/durable-history.d.ts +36 -0
- package/dist/core/storage/durable-history.d.ts.map +1 -0
- package/dist/core/storage/durable-history.js +606 -0
- package/dist/core/storage/health.d.ts +4 -0
- package/dist/core/storage/health.d.ts.map +1 -0
- package/dist/core/storage/health.js +65 -0
- package/dist/core/storage/index.d.ts +16 -0
- package/dist/core/storage/index.d.ts.map +1 -0
- package/dist/core/storage/index.js +15 -0
- package/dist/core/storage/inventory.d.ts +25 -0
- package/dist/core/storage/inventory.d.ts.map +1 -0
- package/dist/core/storage/inventory.js +666 -0
- package/dist/core/storage/jsonl.d.ts +52 -0
- package/dist/core/storage/jsonl.d.ts.map +1 -0
- package/dist/core/storage/jsonl.js +156 -0
- package/dist/core/storage/log-retention.d.ts +52 -0
- package/dist/core/storage/log-retention.d.ts.map +1 -0
- package/dist/core/storage/log-retention.js +419 -0
- package/dist/core/storage/logger.d.ts +82 -0
- package/dist/core/storage/logger.d.ts.map +1 -0
- package/dist/core/storage/logger.js +411 -0
- package/dist/core/storage/maintenance-providers.d.ts +26 -0
- package/dist/core/storage/maintenance-providers.d.ts.map +1 -0
- package/dist/core/storage/maintenance-providers.js +141 -0
- package/dist/core/storage/maintenance.d.ts +125 -0
- package/dist/core/storage/maintenance.d.ts.map +1 -0
- package/dist/core/storage/maintenance.js +609 -0
- package/dist/core/storage/metrics.d.ts +60 -0
- package/dist/core/storage/metrics.d.ts.map +1 -0
- package/dist/core/storage/metrics.js +134 -0
- package/dist/core/storage/policy.d.ts +7 -0
- package/dist/core/storage/policy.d.ts.map +1 -0
- package/dist/core/storage/policy.js +110 -0
- package/dist/core/storage/process-log.d.ts +38 -0
- package/dist/core/storage/process-log.d.ts.map +1 -0
- package/dist/core/storage/process-log.js +165 -0
- package/dist/core/storage/query.d.ts +34 -0
- package/dist/core/storage/query.d.ts.map +1 -0
- package/dist/core/storage/query.js +295 -0
- package/dist/core/storage/receipts.d.ts +23 -0
- package/dist/core/storage/receipts.d.ts.map +1 -0
- package/dist/core/storage/receipts.js +117 -0
- package/dist/core/storage/segments.d.ts +84 -0
- package/dist/core/storage/segments.d.ts.map +1 -0
- package/dist/core/storage/segments.js +542 -0
- package/dist/core/storage/sink-graph.d.ts +65 -0
- package/dist/core/storage/sink-graph.d.ts.map +1 -0
- package/dist/core/storage/sink-graph.js +213 -0
- package/dist/core/storage/storm-control.d.ts +23 -0
- package/dist/core/storage/storm-control.d.ts.map +1 -0
- package/dist/core/storage/storm-control.js +59 -0
- package/dist/core/work/state.d.ts.map +1 -1
- package/dist/core/work/state.js +10 -14
- package/dist/core/workflow/live-session-v3.d.ts.map +1 -1
- package/dist/core/workflow/live-session-v3.js +2 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/lazy-commands.d.ts +26 -0
- package/dist/lazy-commands.d.ts.map +1 -0
- package/dist/lazy-commands.js +210 -0
- package/dist/lib/browser/client.d.ts +11 -0
- package/dist/lib/browser/client.d.ts.map +1 -1
- package/dist/lib/browser/client.js +13 -0
- package/dist/lib/browser/index.d.ts +1 -0
- package/dist/lib/browser/index.d.ts.map +1 -1
- package/dist/lib/browser/standalone-html.d.ts +25 -0
- package/dist/lib/browser/standalone-html.d.ts.map +1 -0
- package/dist/lib/browser/standalone-html.js +284 -0
- package/dist/lib/docs-lint.d.ts +2 -0
- package/dist/lib/docs-lint.d.ts.map +1 -1
- package/dist/lib/docs-lint.js +45 -80
- package/dist/lib/docs-metadata-audit.d.ts +3 -0
- package/dist/lib/docs-metadata-audit.d.ts.map +1 -1
- package/dist/lib/docs-metadata-audit.js +13 -23
- package/dist/lib/docs-metadata-sync.d.ts +1 -0
- package/dist/lib/docs-metadata-sync.d.ts.map +1 -1
- package/dist/lib/docs-metadata-sync.js +28 -10
- package/dist/lib/docs-repository-view.d.ts +22 -0
- package/dist/lib/docs-repository-view.d.ts.map +1 -0
- package/dist/lib/docs-repository-view.js +185 -0
- package/dist/lib/http/client.d.ts +11 -5
- package/dist/lib/http/client.d.ts.map +1 -1
- package/dist/lib/http/client.js +22 -4
- package/dist/lib/http/index.d.ts +1 -1
- package/dist/lib/http/index.d.ts.map +1 -1
- package/dist/lib/http/index.js +1 -1
- package/dist/lib/indexer-exclusions.d.ts +27 -0
- package/dist/lib/indexer-exclusions.d.ts.map +1 -0
- package/dist/lib/indexer-exclusions.js +176 -0
- package/dist/lib/instructions/apply.d.ts.map +1 -1
- package/dist/lib/instructions/apply.js +1 -0
- package/dist/lib/instructions/templates.d.ts +2 -0
- package/dist/lib/instructions/templates.d.ts.map +1 -1
- package/dist/lib/instructions/templates.js +149 -4
- package/dist/lib/local-file-url.d.ts +9 -0
- package/dist/lib/local-file-url.d.ts.map +1 -0
- package/dist/lib/local-file-url.js +20 -0
- package/dist/lib/web-performance.d.ts +118 -0
- package/dist/lib/web-performance.d.ts.map +1 -0
- package/dist/lib/web-performance.js +192 -0
- package/package.json +34 -2
- package/schemas/config.schema.json +58 -0
- package/schemas/event-v3.schema.json +3073 -581
- package/src/commander.ts +462 -93
- package/src/commands/agents.ts +617 -355
- package/src/commands/backup.ts +18 -14
- package/src/commands/browse-session.ts +12 -0
- package/src/commands/browse.ts +31 -9
- package/src/commands/conversations.ts +279 -0
- package/src/commands/decision.ts +8 -2
- package/src/commands/deinit.ts +6 -0
- package/src/commands/docs.ts +25 -6
- package/src/commands/doctor.ts +75 -9
- package/src/commands/events.ts +21 -1
- package/src/commands/fetch.ts +7 -6
- package/src/commands/files.ts +143 -0
- package/src/commands/governor.ts +13 -12
- package/src/commands/inbox.ts +61 -0
- package/src/commands/init.ts +78 -16
- package/src/commands/ledger-v3.ts +421 -1
- package/src/commands/logs.ts +224 -0
- package/src/commands/messages.ts +61 -0
- package/src/commands/outline.ts +6 -2
- package/src/commands/presence.ts +7 -2
- package/src/commands/read.ts +6 -2
- package/src/commands/semantic.ts +244 -0
- package/src/commands/storage.ts +310 -0
- package/src/commands/tunnel.ts +66 -52
- package/src/commands/web.ts +92 -7
- package/src/commands/work.ts +3 -3
- package/src/commands/workflow.ts +13 -13
- package/src/core/agents/canonical-emit.ts +15 -0
- package/src/core/agents/claim-path.ts +23 -0
- package/src/core/agents/cli.ts +259 -53
- package/src/core/agents/coord-client.ts +92 -8
- package/src/core/agents/live-authority-v3.ts +342 -14
- package/src/core/agents/live-lifecycle-v3.ts +14 -4
- package/src/core/agents/live-observation-v3.ts +13 -3
- package/src/core/agents/render/prompt-context.ts +40 -16
- package/src/core/agents/rules/stop-hook.ts +129 -25
- package/src/core/agents/rules/verdict.ts +1 -0
- package/src/core/agents/session-events.ts +4 -0
- package/src/core/agents/session-finalization-state-v3.ts +1 -1
- package/src/core/agents/session-finalizer-v3.ts +4 -1
- package/src/core/agents/session-name-display.ts +9 -1
- package/src/core/agents/state/activity-log.ts +7 -2
- package/src/core/agents/state/heartbeat-reader.ts +69 -0
- package/src/core/agents/state/heartbeat-writer.ts +47 -84
- package/src/core/agents/state/live-coordination-view.ts +17 -81
- package/src/core/agents/state/live-coordination-writer.ts +141 -0
- package/src/core/agents/state/names.ts +190 -182
- package/src/core/agents/state/stale-sweep.ts +25 -5
- package/src/core/artifacts/constants.ts +4 -0
- package/src/core/artifacts/index.ts +113 -8
- package/src/core/config.ts +126 -5
- package/src/core/conversations/archive.ts +237 -0
- package/src/core/conversations/catalog.ts +79 -0
- package/src/core/conversations/context-pack.ts +72 -0
- package/src/core/conversations/contract.ts +178 -0
- package/src/core/conversations/evaluation.ts +30 -0
- package/src/core/conversations/index.ts +9 -0
- package/src/core/conversations/lifecycle.ts +63 -0
- package/src/core/conversations/normalize.ts +105 -0
- package/src/core/conversations/query.ts +318 -0
- package/src/core/conversations/search-index.ts +48 -0
- package/src/core/events/legacy-storage/canary.ts +177 -0
- package/src/core/events/legacy-storage/fence.ts +129 -0
- package/src/core/events/legacy-storage/index.ts +5 -0
- package/src/core/events/legacy-storage/inventory.ts +51 -0
- package/src/core/events/legacy-storage/manifest.ts +136 -0
- package/src/core/events/legacy-storage/reader.ts +178 -0
- package/src/core/events/v3/authority-outbox.ts +22 -1
- package/src/core/events/v3/base-contract.ts +56 -7
- package/src/core/events/v3/bootstrap.ts +195 -2
- package/src/core/events/v3/capabilities.ts +37 -3
- package/src/core/events/v3/control-witness.ts +339 -0
- package/src/core/events/v3/control-writer.ts +16 -0
- package/src/core/events/v3/control.ts +54 -18
- package/src/core/events/v3/coordination-transaction-recovery.ts +477 -0
- package/src/core/events/v3/coordination-view.ts +17 -1
- package/src/core/events/v3/generated.ts +1 -1
- package/src/core/events/v3/index.ts +26 -2
- package/src/core/events/v3/latency.ts +213 -2
- package/src/core/events/v3/live-route-observer.ts +80 -0
- package/src/core/events/v3/live-routing.ts +182 -45
- package/src/core/events/v3/producers/command-recorder.ts +10 -1
- package/src/core/events/v3/producers/coordination-recorder.ts +112 -15
- package/src/core/events/v3/producers/diagnostic-summaries.ts +593 -0
- package/src/core/events/v3/producers/hook-base.ts +116 -2
- package/src/core/events/v3/producers/intake.ts +48 -2
- package/src/core/events/v3/producers/producer-state-observer.ts +52 -0
- package/src/core/events/v3/producers/recorder.ts +1403 -30
- package/src/core/events/v3/reader.ts +243 -2
- package/src/core/events/v3/rotation-config.ts +98 -0
- package/src/core/events/v3/runtime-build.ts +41 -0
- package/src/core/events/v3/runtime-identity.ts +16 -0
- package/src/core/events/v3/runtime-telemetry-capabilities.ts +143 -0
- package/src/core/events/v3/support-storage/classify.ts +209 -0
- package/src/core/events/v3/support-storage/eligibility.ts +58 -0
- package/src/core/events/v3/support-storage/index.ts +9 -0
- package/src/core/events/v3/support-storage/inventory.ts +135 -0
- package/src/core/events/v3/support-storage/logical-authority.ts +117 -0
- package/src/core/events/v3/support-storage/maintenance.ts +501 -0
- package/src/core/events/v3/support-storage/pack-contract.ts +337 -0
- package/src/core/events/v3/support-storage/pack-reader.ts +346 -0
- package/src/core/events/v3/support-storage/pack-writer.ts +352 -0
- package/src/core/events/v3/support-storage/recovery.ts +43 -0
- package/src/core/events/v3/turn-telemetry.ts +66 -5
- package/src/core/events/v3/writer.ts +168 -16
- package/src/core/governor/plan-read.ts +5 -18
- package/src/core/governor/planning.ts +5 -8
- package/src/core/governor/service-read.ts +320 -2
- package/src/core/governor/service.ts +49 -22
- package/src/core/guard/evidence-v3.ts +1 -0
- package/src/core/hooks/adapter/events.ts +1 -0
- package/src/core/hooks/adapter/output.ts +12 -5
- package/src/core/hooks/adapter/parse.ts +16 -0
- package/src/core/hooks/adapter/runtime-telemetry.ts +1200 -0
- package/src/core/hooks/cli.ts +342 -64
- package/src/core/hooks/effects/image-capture.ts +4 -1
- package/src/core/hooks/remediation-cap.ts +83 -0
- package/src/core/hooks/resolve/coord-root.ts +91 -11
- package/src/core/hooks/resolve/owner.ts +4 -0
- package/src/core/hooks/resolve/transcript.ts +55 -11
- package/src/core/inbox/contract.ts +81 -0
- package/src/core/inbox/index.ts +4 -0
- package/src/core/inbox/lifecycle.ts +104 -0
- package/src/core/inbox/service.ts +305 -0
- package/src/core/inbox/watcher.ts +36 -0
- package/src/core/presence/codec-digest.ts +15 -9
- package/src/core/presence/relay-client.ts +55 -7
- package/src/core/semantic/adapters.ts +452 -0
- package/src/core/semantic/contract.ts +430 -0
- package/src/core/semantic/evidence.ts +336 -0
- package/src/core/semantic/index.ts +201 -0
- package/src/core/semantic/once.ts +496 -0
- package/src/core/semantic/prompt.ts +96 -0
- package/src/core/semantic/review.ts +803 -0
- package/src/core/semantic/routes.ts +30 -0
- package/src/core/semantic/scheduler.ts +151 -0
- package/src/core/semantic/service-status.ts +212 -0
- package/src/core/semantic/service.ts +681 -0
- package/src/core/semantic/soak.ts +638 -0
- package/src/core/semantic/storage.ts +300 -0
- package/src/core/semantic/usage.ts +272 -0
- package/src/core/semantic/validate.ts +243 -0
- package/src/core/storage/buffer.ts +124 -0
- package/src/core/storage/builtins.ts +916 -0
- package/src/core/storage/catalog.ts +467 -0
- package/src/core/storage/config.ts +423 -0
- package/src/core/storage/contract.ts +342 -0
- package/src/core/storage/durable-history.ts +738 -0
- package/src/core/storage/health.ts +76 -0
- package/src/core/storage/index.ts +15 -0
- package/src/core/storage/inventory.ts +859 -0
- package/src/core/storage/jsonl.ts +213 -0
- package/src/core/storage/log-retention.ts +555 -0
- package/src/core/storage/logger.ts +546 -0
- package/src/core/storage/maintenance-providers.ts +200 -0
- package/src/core/storage/maintenance.ts +929 -0
- package/src/core/storage/metrics.ts +199 -0
- package/src/core/storage/policy.ts +141 -0
- package/src/core/storage/process-log.ts +203 -0
- package/src/core/storage/query.ts +360 -0
- package/src/core/storage/receipts.ts +162 -0
- package/src/core/storage/segments.ts +721 -0
- package/src/core/storage/sink-graph.ts +343 -0
- package/src/core/storage/storm-control.ts +91 -0
- package/src/core/work/state.ts +12 -21
- package/src/core/workflow/live-session-v3.ts +2 -4
- package/src/index.ts +2 -0
- package/src/lazy-commands.ts +294 -0
- package/src/lib/browser/client.ts +21 -0
- package/src/lib/browser/index.ts +4 -0
- package/src/lib/browser/standalone-html.ts +312 -0
- package/src/lib/docs-lint.ts +58 -77
- package/src/lib/docs-metadata-audit.ts +26 -21
- package/src/lib/docs-metadata-sync.ts +32 -9
- package/src/lib/docs-repository-view.ts +220 -0
- package/src/lib/http/client.ts +44 -8
- package/src/lib/http/index.ts +6 -1
- package/src/lib/indexer-exclusions.ts +173 -0
- package/src/lib/instructions/apply.ts +1 -0
- package/src/lib/instructions/templates.ts +154 -4
- package/src/lib/local-file-url.ts +31 -0
- package/src/lib/web-performance.ts +335 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../src/commands/web.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../src/commands/web.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAyCnD;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAM1D;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKrE;AAED,iFAAiF;AACjF,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAKhF;AAED,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,MAAM,EACjB,GAAG,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAe,GAC9D,MAAM,CAQR;AAyCD;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAevE;AAsBD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAuN5E"}
|
package/dist/commands/web.js
CHANGED
|
@@ -2,8 +2,11 @@ import { spawn, spawnSync } from "node:child_process";
|
|
|
2
2
|
import { existsSync } from "node:fs";
|
|
3
3
|
import { createServer } from "node:net";
|
|
4
4
|
import path from "node:path";
|
|
5
|
-
import { fileURLToPath } from "node:url";
|
|
5
|
+
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
6
6
|
import { DEFAULT_WEB_PORT, resolveWebPort } from "../core/config.js";
|
|
7
|
+
import { ensureSemanticServiceRunning } from "../core/semantic/service.js";
|
|
8
|
+
import { processLogDestination } from "../core/storage/process-log.js";
|
|
9
|
+
import { parsePerformanceWindow, readWebPerformanceReport, WEB_PERFORMANCE_LOG, } from "../lib/web-performance.js";
|
|
7
10
|
import { lazyFetchWebRoot, webRunner } from "./web-fetch.js";
|
|
8
11
|
/**
|
|
9
12
|
* `harn web`: Next.js dashboard for harnery's coord state.
|
|
@@ -12,6 +15,7 @@ import { lazyFetchWebRoot, webRunner } from "./web-fetch.js";
|
|
|
12
15
|
* up [--prod]: start the server (dev mode default; --prod runs next start)
|
|
13
16
|
* build: next build (production bundle)
|
|
14
17
|
* start: next start (must `harn web build` first)
|
|
18
|
+
* performance: summarize request latency and event-loop delays
|
|
15
19
|
*
|
|
16
20
|
* Launches the Next.js app under `harnery/web/` against the user's current
|
|
17
21
|
* working directory. The web app reads `.harnery/` via `HARNERY_COORD_ROOT`;
|
|
@@ -65,6 +69,37 @@ export function nodeOptionsWithHeapCap(mb) {
|
|
|
65
69
|
return inherited;
|
|
66
70
|
return `${inherited} --max-old-space-size=${mb}`.trim();
|
|
67
71
|
}
|
|
72
|
+
/** Preload the request diagnostics hook without replacing Next's HTTP server. */
|
|
73
|
+
export function nodeOptionsWithWebDiagnostics(webDir, mb) {
|
|
74
|
+
const inherited = nodeOptionsWithHeapCap(mb) ?? "";
|
|
75
|
+
if (inherited.includes("server-performance.mjs"))
|
|
76
|
+
return inherited;
|
|
77
|
+
const preload = pathToFileURL(path.join(webDir, "server-performance.mjs")).href;
|
|
78
|
+
return `${inherited} --import=${preload}`.trim();
|
|
79
|
+
}
|
|
80
|
+
export function webPerformanceLogDestination(coordRoot, env = process.env) {
|
|
81
|
+
return processLogDestination({
|
|
82
|
+
coord_root: coordRoot,
|
|
83
|
+
family_id: "web-performance-log",
|
|
84
|
+
filename: "active.jsonl",
|
|
85
|
+
legacy_path: path.join(coordRoot, ".harnery", "logs", WEB_PERFORMANCE_LOG),
|
|
86
|
+
env,
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
async function startSemanticServiceWithWeb(coordRoot, emit) {
|
|
90
|
+
const result = await ensureSemanticServiceRunning(coordRoot);
|
|
91
|
+
if (result.state === "started")
|
|
92
|
+
emit.log("semantic reader · started automatically", "info");
|
|
93
|
+
if (result.state === "running")
|
|
94
|
+
emit.log("semantic reader · already running", "info");
|
|
95
|
+
if (result.state === "paused")
|
|
96
|
+
emit.log("semantic reader · paused by operator", "info");
|
|
97
|
+
if (result.state === "inactive")
|
|
98
|
+
emit.log("semantic reader · waiting for active V3", "info");
|
|
99
|
+
if (result.state === "unavailable") {
|
|
100
|
+
emit.log(`semantic reader · unavailable (${result.error ?? "startup failed"})`, "warn");
|
|
101
|
+
}
|
|
102
|
+
}
|
|
68
103
|
/**
|
|
69
104
|
* Resolve the web app root. A local `web/` (source checkout / submodule) wins.
|
|
70
105
|
* Otherwise, on an npm install, lazy-fetch it (clone + install) unless the
|
|
@@ -168,10 +203,14 @@ export function registerWebCommand(program, emit) {
|
|
|
168
203
|
}
|
|
169
204
|
if (!(await requireAvailablePort(emit, port)))
|
|
170
205
|
return;
|
|
206
|
+
await startSemanticServiceWithWeb(coordRoot, emit);
|
|
171
207
|
const heapMb = resolveMaxOldSpaceMb(opts.maxOldSpace);
|
|
208
|
+
const nodeOptions = nodeOptionsWithWebDiagnostics(root, heapMb);
|
|
209
|
+
const performanceLogPath = webPerformanceLogDestination(coordRoot);
|
|
172
210
|
emit.log(`harn web · http://localhost:${port} (${mode})`, "info");
|
|
173
211
|
emit.log(`files origin · http://harnery-files.localhost:${port}`, "info");
|
|
174
212
|
emit.log(`reading .harnery/ from: ${coordRoot}`, "info");
|
|
213
|
+
emit.log(`performance log · ${performanceLogPath}`, "info");
|
|
175
214
|
if (heapMb > 0)
|
|
176
215
|
emit.log(`heap ceiling · ${heapMb} MB`, "info");
|
|
177
216
|
const child = spawn(webRunner(), ["run", mode], {
|
|
@@ -180,9 +219,9 @@ export function registerWebCommand(program, emit) {
|
|
|
180
219
|
...process.env,
|
|
181
220
|
HARNERY_COORD_ROOT: coordRoot,
|
|
182
221
|
HARNERY_WEB_PORT: String(port),
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
222
|
+
HARNERY_WEB_MODE: mode,
|
|
223
|
+
HARNERY_WEB_PERFORMANCE_LOG_PATH: performanceLogPath,
|
|
224
|
+
NODE_OPTIONS: nodeOptions,
|
|
186
225
|
},
|
|
187
226
|
stdio: "inherit",
|
|
188
227
|
});
|
|
@@ -253,9 +292,13 @@ export function registerWebCommand(program, emit) {
|
|
|
253
292
|
}
|
|
254
293
|
if (!(await requireAvailablePort(emit, port)))
|
|
255
294
|
return;
|
|
295
|
+
await startSemanticServiceWithWeb(coordRoot, emit);
|
|
256
296
|
const heapMb = resolveMaxOldSpaceMb(opts.maxOldSpace);
|
|
297
|
+
const nodeOptions = nodeOptionsWithWebDiagnostics(root, heapMb);
|
|
298
|
+
const performanceLogPath = webPerformanceLogDestination(coordRoot);
|
|
257
299
|
emit.log(`harn web · http://localhost:${port} (start)`, "info");
|
|
258
300
|
emit.log(`reading .harnery/ from: ${coordRoot}`, "info");
|
|
301
|
+
emit.log(`performance log · ${performanceLogPath}`, "info");
|
|
259
302
|
if (heapMb > 0)
|
|
260
303
|
emit.log(`heap ceiling · ${heapMb} MB`, "info");
|
|
261
304
|
const child = spawn(webRunner(), ["run", "start"], {
|
|
@@ -264,9 +307,9 @@ export function registerWebCommand(program, emit) {
|
|
|
264
307
|
...process.env,
|
|
265
308
|
HARNERY_COORD_ROOT: coordRoot,
|
|
266
309
|
HARNERY_WEB_PORT: String(port),
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
310
|
+
HARNERY_WEB_MODE: "start",
|
|
311
|
+
HARNERY_WEB_PERFORMANCE_LOG_PATH: performanceLogPath,
|
|
312
|
+
NODE_OPTIONS: nodeOptions,
|
|
270
313
|
},
|
|
271
314
|
stdio: "inherit",
|
|
272
315
|
});
|
|
@@ -280,4 +323,38 @@ export function registerWebCommand(program, emit) {
|
|
|
280
323
|
process.exitCode = code ?? 0;
|
|
281
324
|
});
|
|
282
325
|
});
|
|
326
|
+
web
|
|
327
|
+
.command("performance")
|
|
328
|
+
.description("Summarize dashboard request, event-loop, memory, and GC diagnostics")
|
|
329
|
+
.option("--coord-root <dir>", "Override the coordination root", process.cwd())
|
|
330
|
+
.option("--since <window>", "Include the last Nm, Nh, or Nd", "1h")
|
|
331
|
+
.option("--limit <n>", "Keep the N slowest requests and delays", "20")
|
|
332
|
+
.option("--json", "Emit structured JSON")
|
|
333
|
+
.action((opts) => {
|
|
334
|
+
const windowMs = parsePerformanceWindow(opts.since);
|
|
335
|
+
if (windowMs === null) {
|
|
336
|
+
emit.error({
|
|
337
|
+
code: "invalid_web_performance_window",
|
|
338
|
+
message: `invalid --since value '${opts.since}'`,
|
|
339
|
+
hint: "Use Nm, Nh, or Nd, for example 30m, 1h, or 7d.",
|
|
340
|
+
});
|
|
341
|
+
return;
|
|
342
|
+
}
|
|
343
|
+
const limit = Number(opts.limit);
|
|
344
|
+
if (!Number.isSafeInteger(limit) || limit < 1 || limit > 500) {
|
|
345
|
+
emit.error({
|
|
346
|
+
code: "invalid_web_performance_limit",
|
|
347
|
+
message: `invalid --limit value '${opts.limit}'`,
|
|
348
|
+
hint: "Use an integer from 1 through 500.",
|
|
349
|
+
});
|
|
350
|
+
return;
|
|
351
|
+
}
|
|
352
|
+
if (opts.json)
|
|
353
|
+
emit.config({ format: "json" });
|
|
354
|
+
emit.data(readWebPerformanceReport({
|
|
355
|
+
root: opts.coordRoot,
|
|
356
|
+
since: opts.since,
|
|
357
|
+
limit,
|
|
358
|
+
}));
|
|
359
|
+
});
|
|
283
360
|
}
|
package/dist/commands/work.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { resolve } from "node:path";
|
|
2
2
|
import { adapterProofInputs, createBuiltinAdapterRegistry, probeBinaryVersion, } from "../core/adapters/index.js";
|
|
3
|
+
import { resolveCoordRoot } from "../core/agents/coord-client.js";
|
|
3
4
|
import { workflowSubscriptionOnly } from "../core/config.js";
|
|
4
5
|
import { findCompletedMissionGoverning, reopenGovernorMission } from "../core/governor/index.js";
|
|
5
|
-
import { findCoordRoot } from "../core/hooks/resolve/coord-root.js";
|
|
6
6
|
import { loadPolicyFile } from "../core/policy/index.js";
|
|
7
7
|
import { acceptWorkItem, cancelWorkItem, createWorkItem, listWorkItemsWithWarnings, readWorkItem, reconcileAllWorkItems, reconcileWorkItem, reopenWorkItem, runWorkItem, } from "../core/work/index.js";
|
|
8
8
|
import { WorkflowParkedError } from "../core/workflow/index.js";
|
|
@@ -344,7 +344,7 @@ export function renderAttemptBudget(record) {
|
|
|
344
344
|
return uncharged > 0 ? `${base} (+${uncharged} uncharged)` : base;
|
|
345
345
|
}
|
|
346
346
|
function withWorkRoot(emit, fn) {
|
|
347
|
-
const coordRoot =
|
|
347
|
+
const coordRoot = resolveCoordRoot();
|
|
348
348
|
if (!coordRoot) {
|
|
349
349
|
emit.error({
|
|
350
350
|
code: "no_coord_root",
|
|
@@ -362,7 +362,7 @@ function withWorkRoot(emit, fn) {
|
|
|
362
362
|
}
|
|
363
363
|
}
|
|
364
364
|
async function withWorkRootAsync(emit, fn) {
|
|
365
|
-
const coordRoot =
|
|
365
|
+
const coordRoot = resolveCoordRoot();
|
|
366
366
|
if (!coordRoot) {
|
|
367
367
|
emit.error({
|
|
368
368
|
code: "no_coord_root",
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { existsSync } from "node:fs";
|
|
2
2
|
import { join, resolve } from "node:path";
|
|
3
3
|
import { adapterProofInputs, createBuiltinAdapterRegistry, probeBinaryVersion, } from "../core/adapters/index.js";
|
|
4
|
+
import { resolveCoordRoot } from "../core/agents/coord-client.js";
|
|
4
5
|
import { resolveBinName, workflowSubscriptionOnly } from "../core/config.js";
|
|
5
|
-
import { findCoordRoot } from "../core/hooks/resolve/coord-root.js";
|
|
6
6
|
import { loadPolicyFile } from "../core/policy/index.js";
|
|
7
7
|
import { WorkflowParkedError } from "../core/workflow/engine.js";
|
|
8
8
|
export function registerWorkflowCommand(program, emit) {
|
|
@@ -37,7 +37,7 @@ export function registerWorkflowCommand(program, emit) {
|
|
|
37
37
|
.option("--approval-to <address>", "Address durable ASK requests (default: operator)")
|
|
38
38
|
.option("--json", "Emit the full RunReport as JSON")
|
|
39
39
|
.action(async (script, opts) => {
|
|
40
|
-
const coordRoot =
|
|
40
|
+
const coordRoot = resolveCoordRoot();
|
|
41
41
|
if (!coordRoot) {
|
|
42
42
|
emit.error({
|
|
43
43
|
code: "no_coord_root",
|
|
@@ -156,7 +156,7 @@ export function registerWorkflowCommand(program, emit) {
|
|
|
156
156
|
.description("Resume a parked workflow after its durable approval has been resolved.")
|
|
157
157
|
.option("--json", "Emit the full RunReport or parked result as JSON")
|
|
158
158
|
.action(async (runId, opts) => {
|
|
159
|
-
const coordRoot =
|
|
159
|
+
const coordRoot = resolveCoordRoot();
|
|
160
160
|
if (!coordRoot) {
|
|
161
161
|
emit.error({
|
|
162
162
|
code: "no_coord_root",
|
|
@@ -228,7 +228,7 @@ export function registerWorkflowCommand(program, emit) {
|
|
|
228
228
|
.description("Show validated allocation, verification, integration, and cleanup state.")
|
|
229
229
|
.option("--json", "Emit the validated workspace status as JSON")
|
|
230
230
|
.action(async (runId, opts) => {
|
|
231
|
-
const coordRoot =
|
|
231
|
+
const coordRoot = resolveCoordRoot();
|
|
232
232
|
if (!coordRoot) {
|
|
233
233
|
emit.error({
|
|
234
234
|
code: "no_coord_root",
|
|
@@ -254,7 +254,7 @@ export function registerWorkflowCommand(program, emit) {
|
|
|
254
254
|
.description("List validated isolated and shared-compatibility workspace decisions.")
|
|
255
255
|
.option("--json", "Emit workspace inspections as JSON")
|
|
256
256
|
.action(async (opts) => {
|
|
257
|
-
const coordRoot =
|
|
257
|
+
const coordRoot = resolveCoordRoot();
|
|
258
258
|
if (!coordRoot) {
|
|
259
259
|
emit.error({
|
|
260
260
|
code: "no_coord_root",
|
|
@@ -300,7 +300,7 @@ export function registerWorkflowCommand(program, emit) {
|
|
|
300
300
|
.option("--approval-to <address>", "Address a durable policy ASK request")
|
|
301
301
|
.option("--json", "Emit the durable integration plan as JSON")
|
|
302
302
|
.action(async (runId, opts) => {
|
|
303
|
-
const coordRoot =
|
|
303
|
+
const coordRoot = resolveCoordRoot();
|
|
304
304
|
if (!coordRoot) {
|
|
305
305
|
emit.error({
|
|
306
306
|
code: "no_coord_root",
|
|
@@ -384,7 +384,7 @@ export function registerWorkflowCommand(program, emit) {
|
|
|
384
384
|
.option("--yes", "Confirm the target-branch mutation")
|
|
385
385
|
.option("--json", "Emit the durable integration receipt as JSON")
|
|
386
386
|
.action(async (runId, opts) => {
|
|
387
|
-
const coordRoot =
|
|
387
|
+
const coordRoot = resolveCoordRoot();
|
|
388
388
|
if (!coordRoot) {
|
|
389
389
|
emit.error({
|
|
390
390
|
code: "no_coord_root",
|
|
@@ -426,7 +426,7 @@ export function registerWorkflowCommand(program, emit) {
|
|
|
426
426
|
.option("--yes", "Confirm the worktree and provider-branch removal attempt")
|
|
427
427
|
.option("--json", "Emit the cleanup attempt or receipt as JSON")
|
|
428
428
|
.action(async (runId, opts) => {
|
|
429
|
-
const coordRoot =
|
|
429
|
+
const coordRoot = resolveCoordRoot();
|
|
430
430
|
if (!coordRoot) {
|
|
431
431
|
emit.error({
|
|
432
432
|
code: "no_coord_root",
|
|
@@ -473,7 +473,7 @@ export function registerWorkflowCommand(program, emit) {
|
|
|
473
473
|
.option("--discard", "Throw the uncommitted work away instead of salvaging it")
|
|
474
474
|
.option("--json", "Emit the reclaim preparation and cleanup result as JSON")
|
|
475
475
|
.action(async (runId, opts) => {
|
|
476
|
-
const coordRoot =
|
|
476
|
+
const coordRoot = resolveCoordRoot();
|
|
477
477
|
if (!coordRoot) {
|
|
478
478
|
emit.error({
|
|
479
479
|
code: "no_coord_root",
|
|
@@ -539,7 +539,7 @@ export function registerWorkflowCommand(program, emit) {
|
|
|
539
539
|
.option("--status <status>", "Filter: pending | approved | denied")
|
|
540
540
|
.option("--json", "Emit approval records as JSON")
|
|
541
541
|
.action(async (opts) => {
|
|
542
|
-
const coordRoot =
|
|
542
|
+
const coordRoot = resolveCoordRoot();
|
|
543
543
|
if (!coordRoot) {
|
|
544
544
|
emit.error({ code: "no_coord_root", message: "no .harnery/ coordination root found" });
|
|
545
545
|
process.exit(1);
|
|
@@ -571,7 +571,7 @@ export function registerWorkflowCommand(program, emit) {
|
|
|
571
571
|
.description("Show one durable workflow approval.")
|
|
572
572
|
.option("--json", "Emit the approval record as JSON")
|
|
573
573
|
.action(async (approvalId, opts) => {
|
|
574
|
-
const coordRoot =
|
|
574
|
+
const coordRoot = resolveCoordRoot();
|
|
575
575
|
if (!coordRoot) {
|
|
576
576
|
emit.error({ code: "no_coord_root", message: "no .harnery/ coordination root found" });
|
|
577
577
|
process.exit(1);
|
|
@@ -600,7 +600,7 @@ export function registerWorkflowCommand(program, emit) {
|
|
|
600
600
|
.option("--reason <text>", "Bounded decision reason")
|
|
601
601
|
.option("--json", "Emit the resolved approval as JSON")
|
|
602
602
|
.action(async (approvalId, opts) => {
|
|
603
|
-
const coordRoot =
|
|
603
|
+
const coordRoot = resolveCoordRoot();
|
|
604
604
|
if (!coordRoot) {
|
|
605
605
|
emit.error({ code: "no_coord_root", message: "no .harnery/ coordination root found" });
|
|
606
606
|
process.exit(1);
|
|
@@ -640,7 +640,7 @@ export function registerWorkflowCommand(program, emit) {
|
|
|
640
640
|
.description("Show the bounded proof packet for a completed workflow run.")
|
|
641
641
|
.option("--json", "Emit the stored proof packet as JSON")
|
|
642
642
|
.action(async (runId, opts) => {
|
|
643
|
-
const coordRoot =
|
|
643
|
+
const coordRoot = resolveCoordRoot();
|
|
644
644
|
if (!coordRoot) {
|
|
645
645
|
emit.error({
|
|
646
646
|
code: "no_coord_root",
|
|
@@ -62,7 +62,7 @@ export declare const BUILTIN_ADAPTER_PROFILES: {
|
|
|
62
62
|
};
|
|
63
63
|
};
|
|
64
64
|
export type BuiltinAdapterId = keyof typeof BUILTIN_ADAPTER_PROFILES;
|
|
65
|
-
export declare const BUILTIN_ADAPTER_IDS: readonly ("
|
|
65
|
+
export declare const BUILTIN_ADAPTER_IDS: readonly ("cursor" | "claude-code" | "codex")[];
|
|
66
66
|
export declare function isBuiltinAdapter(id: string): id is BuiltinAdapterId;
|
|
67
67
|
export declare function builtinAdapterProfile(id: string): AdapterProfile | undefined;
|
|
68
68
|
export declare function validateAdapterEffort(id: string, effort: string | undefined): void;
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
* seconds and record the observation before the parent command exits.
|
|
11
11
|
*/
|
|
12
12
|
import type { LiveCoordinationObservationV3 } from "../events/v3/live-observation.js";
|
|
13
|
+
import type { Heartbeat } from "./state/heartbeat-reader.js";
|
|
13
14
|
export type EventV3EmitObservation = LiveCoordinationObservationV3 | {
|
|
14
15
|
event_type: "coord.lifecycle_changed";
|
|
15
16
|
new_state: "active" | "blocked" | "done";
|
|
@@ -35,4 +36,6 @@ export declare function emitEventV3(input: EventV3EmitInput): boolean;
|
|
|
35
36
|
* Normalize the heartbeat's `platform` field to the canonical Adapter type.
|
|
36
37
|
*/
|
|
37
38
|
export declare function normalizeAdapter(platform: string | undefined): "claude-code" | "cursor" | "codex";
|
|
39
|
+
/** Producer joins use the private native session ID, never its V3 fingerprint. */
|
|
40
|
+
export declare function nativeSessionIdentity(row: Pick<Heartbeat, "native_session_id" | "session_id"> | null | undefined, fallback: string): string;
|
|
38
41
|
//# sourceMappingURL=canonical-emit.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canonical-emit.d.ts","sourceRoot":"","sources":["../../../src/core/agents/canonical-emit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"canonical-emit.d.ts","sourceRoot":"","sources":["../../../src/core/agents/canonical-emit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AAGtF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE7D,MAAM,MAAM,sBAAsB,GAC9B,6BAA6B,GAC7B;IACE,UAAU,EAAE,yBAAyB,CAAC;IACtC,SAAS,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC,CAAC;AAEN,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,aAAa,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC5C,WAAW,EAAE,sBAAsB,CAAC;CACrC;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,KAAK,GAAE,MAAsB,GAAG,MAAM,GAAG,IAAI,CAE5E;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CA4C5D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,QAAQ,GAAG,OAAO,CAIjG;AAED,kFAAkF;AAClF,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,mBAAmB,GAAG,YAAY,CAAC,GAAG,IAAI,GAAG,SAAS,EAC3E,QAAQ,EAAE,MAAM,GACf,MAAM,CAQR"}
|
|
@@ -80,3 +80,15 @@ export function normalizeAdapter(platform) {
|
|
|
80
80
|
return "codex";
|
|
81
81
|
return "claude-code";
|
|
82
82
|
}
|
|
83
|
+
/** Producer joins use the private native session ID, never its V3 fingerprint. */
|
|
84
|
+
export function nativeSessionIdentity(row, fallback) {
|
|
85
|
+
if (row?.native_session_id)
|
|
86
|
+
return row.native_session_id;
|
|
87
|
+
// A projection-only row carries the privacy-safe canonical session
|
|
88
|
+
// fingerprint, not the adapter's native session ID needed to join the hook
|
|
89
|
+
// producer. Until a disposable cache exists, the resolved owner is the only
|
|
90
|
+
// native identity available to command surfaces.
|
|
91
|
+
if (row?.session_id && !/^sid_[a-f0-9]{64}$/.test(row.session_id))
|
|
92
|
+
return row.session_id;
|
|
93
|
+
return fallback;
|
|
94
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canonical identity for an authority-bearing write claim.
|
|
3
|
+
*
|
|
4
|
+
* Workspace paths stay portable and repository-relative. Approved paths
|
|
5
|
+
* outside the coordination root become resolved absolute paths so a later
|
|
6
|
+
* release matches whether the caller supplies the stored dot-dot form or the
|
|
7
|
+
* absolute target. This is lexical identity only; finalization policy owns the
|
|
8
|
+
* physical containment and symlink checks before a claim is acquired.
|
|
9
|
+
*/
|
|
10
|
+
export declare function canonicalClaimPath(coordRoot: string, value: string): string;
|
|
11
|
+
//# sourceMappingURL=claim-path.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claim-path.d.ts","sourceRoot":"","sources":["../../../src/core/agents/claim-path.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAO3E"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { isAbsolute, relative, resolve, sep } from "node:path";
|
|
2
|
+
/**
|
|
3
|
+
* Canonical identity for an authority-bearing write claim.
|
|
4
|
+
*
|
|
5
|
+
* Workspace paths stay portable and repository-relative. Approved paths
|
|
6
|
+
* outside the coordination root become resolved absolute paths so a later
|
|
7
|
+
* release matches whether the caller supplies the stored dot-dot form or the
|
|
8
|
+
* absolute target. This is lexical identity only; finalization policy owns the
|
|
9
|
+
* physical containment and symlink checks before a claim is acquired.
|
|
10
|
+
*/
|
|
11
|
+
export function canonicalClaimPath(coordRoot, value) {
|
|
12
|
+
const root = resolve(coordRoot);
|
|
13
|
+
const absolute = resolve(root, value);
|
|
14
|
+
const fromRoot = relative(root, absolute);
|
|
15
|
+
const contained = fromRoot !== ".." && !fromRoot.startsWith(`..${sep}`) && !isAbsolute(fromRoot);
|
|
16
|
+
if (contained)
|
|
17
|
+
return portable(fromRoot || ".");
|
|
18
|
+
return portable(absolute);
|
|
19
|
+
}
|
|
20
|
+
function portable(value) {
|
|
21
|
+
return value.split(sep).join("/");
|
|
22
|
+
}
|