@indigoai-us/hq-cli 5.312.2-beta.0 → 5.314.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -4293
- package/assets/scaffold/core/scripts/checkpoint-stop-gate.sh +43 -281
- package/assets/scaffold/core/scripts/hook-lib.sh +50 -345
- package/assets/scaffold/core/scripts/hq-session.sh +23 -184
- package/assets/scaffold/core/scripts/lib/session-id.sh +2 -3
- package/assets/scaffold/core/scripts/lib/session-scope-capability.sh +1 -1
- package/assets/scaffold/core/scripts/lib/work-mesh-enqueue.sh +1 -2
- package/assets/scaffold/core/scripts/qmd-reindex-after-sync.sh +87 -10
- package/assets/scaffold/core/scripts/rebuild-company-knowledge-index.sh +3 -36
- package/assets/scaffold/core/scripts/rebuild-projects-index.sh +12 -99
- package/assets/scaffold/core/scripts/token-usage-report.sh +20 -81
- package/dist/bin/hq-auth-refresh.d.ts +0 -2
- package/dist/bin/hq-auth-refresh.js +6 -12
- package/dist/commands/__fixtures__/access-vault.d.ts +0 -2
- package/dist/commands/__fixtures__/access-vault.js +1 -1
- package/dist/commands/_patterns.d.ts +0 -16
- package/dist/commands/_patterns.js +3 -20
- package/dist/commands/access.d.ts +1 -2
- package/dist/commands/access.js +49 -58
- package/dist/commands/agents.d.ts +4 -106
- package/dist/commands/agents.js +45 -924
- package/dist/commands/auth.d.ts +0 -1
- package/dist/commands/auth.js +19 -189
- package/dist/commands/billing.d.ts +0 -3
- package/dist/commands/billing.js +1 -6
- package/dist/commands/channels.js +1 -56
- package/dist/commands/cloud-demote.js +2 -3
- package/dist/commands/cloud-provision.d.ts +0 -14
- package/dist/commands/cloud-provision.js +58 -232
- package/dist/commands/cloud.d.ts +15 -49
- package/dist/commands/cloud.js +122 -358
- package/dist/commands/company-transfer.d.ts +28 -4
- package/dist/commands/company-transfer.js +49 -5
- package/dist/commands/company.js +3 -66
- package/dist/commands/core-checkpoint.d.ts +9 -19
- package/dist/commands/core-checkpoint.js +37 -301
- package/dist/commands/core.d.ts +0 -4
- package/dist/commands/core.js +80 -270
- package/dist/commands/crm.js +3 -52
- package/dist/commands/db-provision.js +4 -4
- package/dist/commands/db-sql.js +21 -7
- package/dist/commands/dm.d.ts +12 -119
- package/dist/commands/dm.js +38 -388
- package/dist/commands/doctor.d.ts +0 -12
- package/dist/commands/doctor.js +12 -158
- package/dist/commands/feedback.d.ts +0 -6
- package/dist/commands/feedback.js +37 -86
- package/dist/commands/files-browse.d.ts +12 -32
- package/dist/commands/files-browse.js +60 -176
- package/dist/commands/files.d.ts +0 -17
- package/dist/commands/files.js +47 -300
- package/dist/commands/group-grants.js +2 -3
- package/dist/commands/groups.js +5 -6
- package/dist/commands/index-cmd.d.ts +1 -19
- package/dist/commands/index-cmd.js +7 -74
- package/dist/commands/integrations-api.d.ts +10 -15
- package/dist/commands/integrations-api.js +22 -27
- package/dist/commands/integrations-connect.d.ts +13 -51
- package/dist/commands/integrations-connect.js +71 -86
- package/dist/commands/integrations-core.d.ts +6 -6
- package/dist/commands/integrations-core.js +11 -25
- package/dist/commands/integrations-import.d.ts +1 -1
- package/dist/commands/integrations-import.js +24 -43
- package/dist/commands/integrations-manage.js +13 -20
- package/dist/commands/integrations.d.ts +0 -8
- package/dist/commands/integrations.js +7 -94
- package/dist/commands/login.js +6 -49
- package/dist/commands/mcp-registration.d.ts +25 -32
- package/dist/commands/mcp-registration.js +23 -256
- package/dist/commands/mcp-status.js +0 -1
- package/dist/commands/meetings.js +34 -55
- package/dist/commands/members.js +1 -5
- package/dist/commands/mesh.d.ts +0 -11
- package/dist/commands/mesh.js +76 -1086
- package/dist/commands/onboard-identity-guard.d.ts +1 -1
- package/dist/commands/onboard.js +5 -24
- package/dist/commands/pack-install.js +1 -3
- package/dist/commands/packs.js +1 -11
- package/dist/commands/people.d.ts +0 -4
- package/dist/commands/people.js +3 -37
- package/dist/commands/publish.d.ts +1 -8
- package/dist/commands/publish.js +4 -17
- package/dist/commands/reindex.js +6 -56
- package/dist/commands/rescue.d.ts +0 -4
- package/dist/commands/rescue.js +17 -27
- package/dist/commands/run.js +4 -18
- package/dist/commands/safe-extract.d.ts +2 -11
- package/dist/commands/safe-extract.js +8 -36
- package/dist/commands/scaffold-fast.d.ts +41 -0
- package/dist/commands/scaffold-fast.js +57 -0
- package/dist/commands/secrets.d.ts +2 -20
- package/dist/commands/secrets.js +71 -175
- package/dist/commands/skill.d.ts +4 -35
- package/dist/commands/skill.js +18 -357
- package/dist/commands/sync-mode.d.ts +0 -11
- package/dist/commands/sync-mode.js +0 -30
- package/dist/commands/sync-narrow.js +5 -36
- package/dist/commands/team-sync.js +10 -71
- package/dist/commands/update.js +0 -6
- package/dist/commands/whoami.d.ts +0 -22
- package/dist/commands/whoami.js +4 -137
- package/dist/commands/workers.d.ts +14 -2
- package/dist/commands/workers.js +10 -7
- package/dist/fast-core.d.ts +7 -6
- package/dist/fast-core.js +24 -80
- package/dist/index.d.ts +4 -3
- package/dist/index.js +9 -59
- package/dist/lazy-commands.d.ts +44 -20
- package/dist/lazy-commands.js +58 -60
- package/dist/lib/company-skill-wrapper.d.ts +0 -1
- package/dist/lib/company-skill-wrapper.js +29 -121
- package/dist/lib/core-utils/codex-skill-bridge.d.ts +1 -2
- package/dist/lib/core-utils/qmd-reindex-after-sync.d.ts +1 -14
- package/dist/lib/core-utils/qmd-reindex-after-sync.js +17 -101
- package/dist/lib/core-utils/soft-timeout.js +1 -1
- package/dist/lib/core-utils/timeout-guard.d.ts +3 -3
- package/dist/lib/core-utils/timeout-guard.js +13 -28
- package/dist/lib/core-utils/token-usage-report.js +3 -17
- package/dist/lib/db/control-plane.js +0 -6
- package/dist/lib/db/local.d.ts +5 -0
- package/dist/lib/db/local.js +1 -1
- package/dist/lib/db/migrate.d.ts +12 -0
- package/dist/lib/db/migrate.js +5 -5
- package/dist/lib/db/remote-sql.d.ts +2 -2
- package/dist/lib/db/remote-sql.js +3 -3
- package/dist/lib/db/sql.d.ts +10 -0
- package/dist/lib/db/sql.js +8 -4
- package/dist/lib/doctor/__testing__/fake-hq-tree.d.ts +1 -1
- package/dist/lib/doctor/__testing__/fake-hq-tree.js +1 -1
- package/dist/lib/doctor/checks/claude-wiring.js +1 -70
- package/dist/lib/doctor/checks/codex-wiring.d.ts +4 -0
- package/dist/lib/doctor/checks/codex-wiring.js +35 -3
- package/dist/lib/doctor/checks/grok-wiring.js +34 -1
- package/dist/lib/doctor/checks/integrations.js +0 -11
- package/dist/lib/doctor/checks/runtime-health.d.ts +17 -4
- package/dist/lib/doctor/checks/runtime-health.js +7 -20
- package/dist/lib/doctor/checks/sync-health.d.ts +0 -21
- package/dist/lib/doctor/checks/sync-health.js +2 -72
- package/dist/lib/doctor/checks/work-context.js +6 -12
- package/dist/lib/doctor/compat.d.ts +16 -0
- package/dist/lib/doctor/compat.js +3 -4
- package/dist/lib/doctor/deep/effects.js +3 -1
- package/dist/lib/doctor/deep/executor.d.ts +10 -4
- package/dist/lib/doctor/deep/executor.js +1 -1
- package/dist/lib/doctor/deep/parity.d.ts +29 -2
- package/dist/lib/doctor/deep/parity.js +7 -7
- package/dist/lib/doctor/deep/sandbox.d.ts +25 -7
- package/dist/lib/doctor/deep/sandbox.js +7 -5
- package/dist/lib/doctor/fix/apply.d.ts +8 -79
- package/dist/lib/doctor/fix/apply.js +80 -292
- package/dist/lib/doctor/fix/remediation.d.ts +6 -14
- package/dist/lib/doctor/fix/remediation.js +9 -49
- package/dist/lib/doctor/fixtures/schema.js +3 -1
- package/dist/lib/doctor/json-output.d.ts +1 -17
- package/dist/lib/doctor/json-output.js +2 -7
- package/dist/lib/doctor/platform.d.ts +26 -0
- package/dist/lib/doctor/platform.js +5 -5
- package/dist/lib/doctor/registry.d.ts +0 -14
- package/dist/lib/doctor/registry.js +0 -71
- package/dist/lib/doctor/report.js +1 -1
- package/dist/lib/doctor/types.d.ts +0 -5
- package/dist/lib/doctor/types.js +0 -20
- package/dist/lib/flag-registry-worker.js +1 -12
- package/dist/lib/flag-registry.d.ts +6 -26
- package/dist/lib/flag-registry.js +16 -133
- package/dist/lib/index-render/companies.d.ts +1 -4
- package/dist/lib/index-render/companies.js +3 -66
- package/dist/lib/index-render/company-knowledge.js +17 -80
- package/dist/lib/index-render/index.d.ts +0 -1
- package/dist/lib/index-render/index.js +1 -2
- package/dist/lib/index-render/projects.js +5 -82
- package/dist/lib/index-render/shared.d.ts +1 -13
- package/dist/lib/index-render/shared.js +2 -41
- package/dist/lib/mesh/api.d.ts +10 -103
- package/dist/lib/mesh/api.js +64 -334
- package/dist/lib/mesh/client.d.ts +2 -3
- package/dist/lib/mesh/client.js +2 -3
- package/dist/lib/mesh/live/backfill-held.d.ts +16 -67
- package/dist/lib/mesh/live/backfill-held.js +61 -415
- package/dist/lib/mesh/live/backoff.d.ts +2 -2
- package/dist/lib/mesh/live/backoff.js +3 -16
- package/dist/lib/mesh/live/daemon/board-refresh.d.ts +1 -7
- package/dist/lib/mesh/live/daemon/board-refresh.js +30 -78
- package/dist/lib/mesh/live/daemon/credentials.d.ts +10 -64
- package/dist/lib/mesh/live/daemon/credentials.js +20 -270
- package/dist/lib/mesh/live/daemon/doctor.d.ts +0 -51
- package/dist/lib/mesh/live/daemon/doctor.js +6 -180
- package/dist/lib/mesh/live/daemon/index.d.ts +10 -13
- package/dist/lib/mesh/live/daemon/index.js +6 -7
- package/dist/lib/mesh/live/daemon/install.d.ts +1 -255
- package/dist/lib/mesh/live/daemon/install.js +13 -811
- package/dist/lib/mesh/live/daemon/paths.d.ts +0 -2
- package/dist/lib/mesh/live/daemon/paths.js +0 -2
- package/dist/lib/mesh/live/daemon/presence.d.ts +5 -24
- package/dist/lib/mesh/live/daemon/presence.js +10 -79
- package/dist/lib/mesh/live/daemon/run.d.ts +2 -48
- package/dist/lib/mesh/live/daemon/run.js +33 -485
- package/dist/lib/mesh/live/daemon/state.d.ts +2 -19
- package/dist/lib/mesh/live/daemon/state.js +2 -34
- package/dist/lib/mesh/live/daemon/transcript-watch.d.ts +9 -45
- package/dist/lib/mesh/live/daemon/transcript-watch.js +31 -227
- package/dist/lib/mesh/live/emit-client.d.ts +0 -8
- package/dist/lib/mesh/live/emit-client.js +8 -23
- package/dist/lib/mesh/live/emit-evidence.d.ts +0 -19
- package/dist/lib/mesh/live/emit-evidence.js +2 -20
- package/dist/lib/mesh/live/emit.d.ts +0 -9
- package/dist/lib/mesh/live/emit.js +2 -28
- package/dist/lib/mesh/live/enqueue.d.ts +0 -5
- package/dist/lib/mesh/live/enqueue.js +0 -19
- package/dist/lib/mesh/live/flush.d.ts +5 -17
- package/dist/lib/mesh/live/flush.js +38 -391
- package/dist/lib/mesh/live/format-spool-line.d.ts +2 -5
- package/dist/lib/mesh/live/format-spool-line.js +0 -10
- package/dist/lib/mesh/live/paths.d.ts +0 -2
- package/dist/lib/mesh/live/paths.js +0 -4
- package/dist/lib/mesh/live/session-event.schema.json +1 -24
- package/dist/lib/mesh/live/session-events-client.d.ts +0 -2
- package/dist/lib/mesh/live/session-events-client.js +0 -26
- package/dist/lib/mesh/live/spool.d.ts +0 -19
- package/dist/lib/mesh/live/spool.js +3 -269
- package/dist/lib/mesh/live/validate-session-event.d.ts +1 -1
- package/dist/lib/mesh/live/validate-session-event.js +1 -1
- package/dist/lib/plan-limit-nag.d.ts +6 -102
- package/dist/lib/plan-limit-nag.js +43 -348
- package/dist/lib/scan-packages/index.d.ts +0 -2
- package/dist/lib/scan-packages/index.js +6 -168
- package/dist/lib/search-index/background.d.ts +1 -8
- package/dist/lib/search-index/background.js +200 -55
- package/dist/lib/search-index/index.d.ts +0 -12
- package/dist/lib/search-index/index.js +7 -153
- package/dist/lib/work-context/company.d.ts +20 -22
- package/dist/lib/work-context/company.js +40 -124
- package/dist/lib/work-context/config.d.ts +11 -58
- package/dist/lib/work-context/config.js +83 -334
- package/dist/lib/work-context/contract.d.ts +0 -10
- package/dist/lib/work-context/index.d.ts +25 -0
- package/dist/lib/work-context/index.js +21 -0
- package/dist/lib/work-context/outbox.d.ts +1 -14
- package/dist/lib/work-context/outbox.js +1 -87
- package/dist/lib/work-context/reconcile.d.ts +0 -15
- package/dist/lib/work-context/reconcile.js +25 -380
- package/dist/lib/work-context/state.d.ts +10 -93
- package/dist/lib/work-context/state.js +29 -342
- package/dist/lib/workers-registry/index.js +8 -62
- package/dist/main.d.ts +0 -12
- package/dist/main.js +73 -266
- package/dist/node-network-compat.d.ts +30 -2
- package/dist/node-network-compat.js +51 -4
- package/dist/node-preflight.d.ts +1 -7
- package/dist/node-preflight.js +5 -5
- package/dist/register-all.d.ts +29 -4
- package/dist/register-all.js +233 -4
- package/dist/run/discover-schemas.d.ts +1 -2
- package/dist/run/env-graph-guard.d.ts +2 -2
- package/dist/run/env-graph-guard.js +2 -5
- package/dist/run/hq-plugin.d.ts +0 -4
- package/dist/run/hq-plugin.js +8 -36
- package/dist/sentry-before-send.js +0 -80
- package/dist/sentry.d.ts +2 -8
- package/dist/sentry.js +13 -117
- package/dist/startup-registration.d.ts +2 -26
- package/dist/startup-registration.js +15 -116
- package/dist/utils/cli-telemetry.d.ts +1 -74
- package/dist/utils/cli-telemetry.js +7 -434
- package/dist/utils/client-health.d.ts +4 -0
- package/dist/utils/client-health.js +2 -2
- package/dist/utils/cognito-session.d.ts +0 -71
- package/dist/utils/cognito-session.js +27 -481
- package/dist/utils/contribution-table.d.ts +1 -1
- package/dist/utils/environmental-error.d.ts +0 -18
- package/dist/utils/environmental-error.js +7 -240
- package/dist/utils/expected-cli-error.d.ts +0 -2
- package/dist/utils/expected-cli-error.js +0 -4
- package/dist/utils/feedback-diagnostics.d.ts +1 -2
- package/dist/utils/feedback-log-bundle.d.ts +26 -51
- package/dist/utils/feedback-log-bundle.js +31 -211
- package/dist/utils/feedback-logs.d.ts +47 -18
- package/dist/utils/feedback-logs.js +21 -50
- package/dist/utils/feedback-screenshots.d.ts +1 -0
- package/dist/utils/feedback-screenshots.js +1 -1
- package/dist/utils/hq-roots.d.ts +2 -25
- package/dist/utils/hq-roots.js +7 -67
- package/dist/utils/incomplete-install-error.d.ts +19 -87
- package/dist/utils/incomplete-install-error.js +68 -319
- package/dist/utils/install-tree-torn.d.ts +24 -260
- package/dist/utils/install-tree-torn.js +51 -998
- package/dist/utils/large-file-guard.d.ts +10 -0
- package/dist/utils/large-file-guard.js +1 -1
- package/dist/utils/local-files-overview.d.ts +8 -4
- package/dist/utils/local-files-overview.js +7 -48
- package/dist/utils/login-provider.d.ts +0 -7
- package/dist/utils/login-provider.js +0 -34
- package/dist/utils/pack-contributions.d.ts +9 -2
- package/dist/utils/pack-contributions.js +43 -6
- package/dist/utils/package-root-diagnostics.d.ts +1 -1
- package/dist/utils/people.d.ts +11 -7
- package/dist/utils/people.js +20 -5
- package/dist/utils/plan-gate-error.d.ts +10 -52
- package/dist/utils/plan-gate-error.js +41 -364
- package/dist/utils/qmd-model-download-error.d.ts +8 -0
- package/dist/utils/qmd-model-download-error.js +1 -1
- package/dist/utils/qmd-query-document-error.d.ts +6 -0
- package/dist/utils/qmd-query-document-error.js +1 -1
- package/dist/utils/redact-error-text.js +1 -2
- package/dist/utils/run-bundled-script.d.ts +0 -6
- package/dist/utils/run-bundled-script.js +4 -117
- package/dist/utils/secrets-cache.d.ts +3 -7
- package/dist/utils/secrets-cache.js +14 -162
- package/dist/utils/self-update.d.ts +1 -34
- package/dist/utils/self-update.js +42 -660
- package/dist/utils/sentry-fingerprint.d.ts +1 -23
- package/dist/utils/sentry-fingerprint.js +31 -223
- package/dist/utils/team-upgrade.d.ts +1 -1
- package/dist/utils/team-upgrade.js +3 -4
- package/dist/utils/vault-api.d.ts +1 -21
- package/dist/utils/vault-api.js +84 -251
- package/dist/utils/version-check.d.ts +1 -11
- package/dist/utils/version-check.js +3 -32
- package/dist/utils/version-gate.d.ts +17 -101
- package/dist/utils/version-gate.js +70 -645
- package/dist/utils/windows-spawn.d.ts +0 -6
- package/dist/utils/windows-spawn.js +0 -37
- package/package.json +8 -20
- package/README.md +0 -113
- package/assets/bot-workers/setup/context/USER-GUIDE.md +0 -404
- package/assets/bot-workers/setup/context/quick-reference.md +0 -199
- package/assets/bot-workers/setup/skills/agents-and-team.md +0 -167
- package/assets/bot-workers/setup/skills/explain-hq.md +0 -35
- package/assets/bot-workers/setup/skills/first-company.md +0 -74
- package/assets/bot-workers/setup/skills/joining-a-team.md +0 -125
- package/assets/bot-workers/setup/skills/pricing.md +0 -92
- package/assets/bot-workers/setup/skills/standing-help.md +0 -81
- package/assets/bot-workers/setup/skills/your-business.md +0 -281
- package/assets/bot-workers/setup/worker.yaml +0 -791
- package/assets/lanes-hooks/hq-lanes-drain.json +0 -15
- package/assets/lanes-hooks/hq-lanes-drain.mjs +0 -275
- package/assets/lanes-hooks/hq-lanes-drain.sh +0 -21
- package/assets/lanes-reconcile/hq-lanes-reconcile.service +0 -11
- package/assets/lanes-reconcile/hq-lanes-reconcile.timer +0 -12
- package/assets/scaffold/.claude/hooks/validate-policy-frontmatter.sh +0 -485
- package/assets/scaffold/core/scripts/audit-log.sh +0 -384
- package/assets/scaffold/core/scripts/clean-worktree-reconcile-handoff.sh +0 -171
- package/assets/scaffold/core/scripts/eval-trigger.sh +0 -193
- package/assets/scaffold/core/scripts/git-pack-extension-check.sh +0 -164
- package/assets/scaffold/core/scripts/handoff-finalize.sh +0 -688
- package/assets/scaffold/core/scripts/handoff-open-steps.sh +0 -81
- package/assets/scaffold/core/scripts/handoff-post.sh +0 -252
- package/assets/scaffold/core/scripts/hq-delegate-bundle.sh +0 -307
- package/assets/scaffold/core/scripts/hq-delegate-grant.sh +0 -252
- package/assets/scaffold/core/scripts/hq-delegate-pickup.sh +0 -99
- package/assets/scaffold/core/scripts/hq-delegate-publish.sh +0 -91
- package/assets/scaffold/core/scripts/hq-delegate-repo.sh +0 -158
- package/assets/scaffold/core/scripts/hq-delegate-resolve.sh +0 -145
- package/assets/scaffold/core/scripts/hq-delegate-secrets.sh +0 -129
- package/assets/scaffold/core/scripts/hq-delegate-send.sh +0 -259
- package/assets/scaffold/core/scripts/hq-delegate-transfer.sh +0 -175
- package/assets/scaffold/core/scripts/hq-delegate-verify.sh +0 -238
- package/assets/scaffold/core/scripts/hq-dm-bind.sh +0 -585
- package/assets/scaffold/core/scripts/hq-job-notify.sh +0 -389
- package/assets/scaffold/core/scripts/hq-job-probe.sh +0 -835
- package/assets/scaffold/core/scripts/hq-job-remediate.sh +0 -359
- package/assets/scaffold/core/scripts/hq-job-run.sh +0 -1025
- package/assets/scaffold/core/scripts/hq-pin.sh +0 -118
- package/assets/scaffold/core/scripts/jobs-schedule-parse.sh +0 -310
- package/assets/scaffold/core/scripts/jobs-validate.sh +0 -451
- package/assets/scaffold/core/scripts/knowledge-prefs.sh +0 -55
- package/assets/scaffold/core/scripts/lib/portable.sh +0 -211
- package/assets/scaffold/core/scripts/lib/secret-patterns.sh +0 -58
- package/assets/scaffold/core/scripts/ontology-audience-grant.sh +0 -81
- package/assets/scaffold/core/scripts/ontology-brief.mjs +0 -93
- package/assets/scaffold/core/scripts/ontology-candidate.sh +0 -100
- package/assets/scaffold/core/scripts/ontology-garden.mjs +0 -238
- package/assets/scaffold/core/scripts/ontology-source-worklist.sh +0 -79
- package/assets/scaffold/core/scripts/outpost-jobs-reconcile.sh +0 -834
- package/assets/scaffold/core/scripts/policy-age-report.sh +0 -156
- package/assets/scaffold/core/scripts/policy-retire.sh +0 -199
- package/assets/scaffold/core/scripts/qmd-reindex-bg.sh +0 -40
- package/assets/scaffold/core/scripts/read-policy-frontmatter.sh +0 -32
- package/assets/scaffold/core/scripts/refresh-vault-access.sh +0 -188
- package/assets/scaffold/core/scripts/resolve-company.sh +0 -199
- package/assets/scaffold/core/scripts/resume-thread-lock.sh +0 -285
- package/assets/scaffold/core/scripts/source-yaml-validate.sh +0 -36
- package/assets/scaffold/core/scripts/verify-story-deliverables.sh +0 -148
- package/assets/scaffold/core/scripts/work-mesh-live-bind-trusted.sh +0 -152
- package/assets/scaffold/core/scripts/worktree-gc.sh +0 -362
- package/contracts/preflight/v1/fixtures.json +0 -87
- package/contracts/preflight/v1/schema.json +0 -58
- package/dist/command-catalog.generated.d.ts +0 -10655
- package/dist/command-catalog.generated.js +0 -13737
- package/dist/command-registration-plan.d.ts +0 -474
- package/dist/command-registration-plan.js +0 -136
- package/dist/commands/agent-enroll.d.ts +0 -146
- package/dist/commands/agent-enroll.js +0 -401
- package/dist/commands/agent-inbox.d.ts +0 -9
- package/dist/commands/agent-inbox.js +0 -102
- package/dist/commands/agent-kit.d.ts +0 -87
- package/dist/commands/agent-kit.js +0 -480
- package/dist/commands/agent-mcp.d.ts +0 -24
- package/dist/commands/agent-mcp.js +0 -127
- package/dist/commands/agent-probe.d.ts +0 -77
- package/dist/commands/agent-probe.js +0 -335
- package/dist/commands/agent.d.ts +0 -13
- package/dist/commands/agent.js +0 -40
- package/dist/commands/billing-sponsor.d.ts +0 -83
- package/dist/commands/billing-sponsor.js +0 -344
- package/dist/commands/bot-companies.d.ts +0 -40
- package/dist/commands/bot-companies.js +0 -64
- package/dist/commands/bot-continuity.d.ts +0 -28
- package/dist/commands/bot-continuity.js +0 -68
- package/dist/commands/bot-jobs.d.ts +0 -127
- package/dist/commands/bot-jobs.js +0 -454
- package/dist/commands/bot.d.ts +0 -278
- package/dist/commands/bot.js +0 -1982
- package/dist/commands/cloud-retire.d.ts +0 -51
- package/dist/commands/cloud-retire.js +0 -154
- package/dist/commands/core-audit-log-native.d.ts +0 -9
- package/dist/commands/core-audit-log-native.js +0 -257
- package/dist/commands/core-checkpoint-gate-setting.d.ts +0 -59
- package/dist/commands/core-checkpoint-gate-setting.js +0 -163
- package/dist/commands/core-checkpoint-stop-gate-native.d.ts +0 -34
- package/dist/commands/core-checkpoint-stop-gate-native.js +0 -725
- package/dist/commands/core-command-catalog.d.ts +0 -34
- package/dist/commands/core-command-catalog.js +0 -62
- package/dist/commands/core-company-index-scope-flag.d.ts +0 -3
- package/dist/commands/core-company-index-scope-flag.js +0 -6
- package/dist/commands/core-delegate-w1b.d.ts +0 -10
- package/dist/commands/core-delegate-w1b.js +0 -1219
- package/dist/commands/core-delegate.d.ts +0 -46
- package/dist/commands/core-delegate.js +0 -1040
- package/dist/commands/core-dm-bind-native.d.ts +0 -32
- package/dist/commands/core-dm-bind-native.js +0 -668
- package/dist/commands/core-git-pack-extension-check-native.d.ts +0 -22
- package/dist/commands/core-git-pack-extension-check-native.js +0 -190
- package/dist/commands/core-handoff-fast.d.ts +0 -18
- package/dist/commands/core-handoff-fast.js +0 -104
- package/dist/commands/core-handoff-open-steps.d.ts +0 -21
- package/dist/commands/core-handoff-open-steps.js +0 -264
- package/dist/commands/core-handoff.d.ts +0 -24
- package/dist/commands/core-handoff.js +0 -1144
- package/dist/commands/core-hq-session-native.d.ts +0 -39
- package/dist/commands/core-hq-session-native.js +0 -579
- package/dist/commands/core-job-native-utils.d.ts +0 -6
- package/dist/commands/core-job-native-utils.js +0 -80
- package/dist/commands/core-job-native.d.ts +0 -5
- package/dist/commands/core-job-native.js +0 -16
- package/dist/commands/core-job-notify-native.d.ts +0 -36
- package/dist/commands/core-job-notify-native.js +0 -359
- package/dist/commands/core-job-probe-native.d.ts +0 -45
- package/dist/commands/core-job-probe-native.js +0 -564
- package/dist/commands/core-job-remediate-native.d.ts +0 -26
- package/dist/commands/core-job-remediate-native.js +0 -374
- package/dist/commands/core-job-remote-launcher.d.ts +0 -7
- package/dist/commands/core-job-remote-launcher.js +0 -51
- package/dist/commands/core-job-run-native.d.ts +0 -47
- package/dist/commands/core-job-run-native.js +0 -1215
- package/dist/commands/core-jobs-native.d.ts +0 -25
- package/dist/commands/core-jobs-native.js +0 -1339
- package/dist/commands/core-knowledge-prefs.d.ts +0 -12
- package/dist/commands/core-knowledge-prefs.js +0 -137
- package/dist/commands/core-native-handoff-flag.d.ts +0 -4
- package/dist/commands/core-native-handoff-flag.js +0 -7
- package/dist/commands/core-native-jobs-flag.d.ts +0 -4
- package/dist/commands/core-native-jobs-flag.js +0 -7
- package/dist/commands/core-native-policy-flag.d.ts +0 -9
- package/dist/commands/core-native-policy-flag.js +0 -12
- package/dist/commands/core-native-session-flag.d.ts +0 -4
- package/dist/commands/core-native-session-flag.js +0 -7
- package/dist/commands/core-native-utilities-flag.d.ts +0 -4
- package/dist/commands/core-native-utilities-flag.js +0 -7
- package/dist/commands/core-native-utilities.d.ts +0 -29
- package/dist/commands/core-native-utilities.js +0 -54
- package/dist/commands/core-native-worker-skills-flag.d.ts +0 -4
- package/dist/commands/core-native-worker-skills-flag.js +0 -7
- package/dist/commands/core-ontology-native.d.ts +0 -17
- package/dist/commands/core-ontology-native.js +0 -916
- package/dist/commands/core-ontology.d.ts +0 -66
- package/dist/commands/core-ontology.js +0 -430
- package/dist/commands/core-pin-native.d.ts +0 -14
- package/dist/commands/core-pin-native.js +0 -236
- package/dist/commands/core-policy-frontmatter.d.ts +0 -8
- package/dist/commands/core-policy-frontmatter.js +0 -52
- package/dist/commands/core-policy.d.ts +0 -14
- package/dist/commands/core-policy.js +0 -1018
- package/dist/commands/core-refresh-vault-access-native.d.ts +0 -20
- package/dist/commands/core-refresh-vault-access-native.js +0 -229
- package/dist/commands/core-resolve-company-command.d.ts +0 -4
- package/dist/commands/core-resolve-company-command.js +0 -42
- package/dist/commands/core-resolve-company-native.d.ts +0 -28
- package/dist/commands/core-resolve-company-native.js +0 -408
- package/dist/commands/core-work-mesh-bind-trusted-native.d.ts +0 -32
- package/dist/commands/core-work-mesh-bind-trusted-native.js +0 -190
- package/dist/commands/core-worker-lint-native.d.ts +0 -4
- package/dist/commands/core-worker-lint-native.js +0 -160
- package/dist/commands/core-worker-share-native.d.ts +0 -5
- package/dist/commands/core-worker-share-native.js +0 -260
- package/dist/commands/core-worker-skills-command.d.ts +0 -8
- package/dist/commands/core-worker-skills-command.js +0 -33
- package/dist/commands/core-worker-skills-runtime.d.ts +0 -33
- package/dist/commands/core-worker-skills-runtime.js +0 -86
- package/dist/commands/daemon.d.ts +0 -63
- package/dist/commands/daemon.js +0 -877
- package/dist/commands/deploy-comments.d.ts +0 -3
- package/dist/commands/deploy-comments.js +0 -162
- package/dist/commands/lanes-accounts.d.ts +0 -28
- package/dist/commands/lanes-accounts.js +0 -595
- package/dist/commands/lanes-autopilot.d.ts +0 -11
- package/dist/commands/lanes-autopilot.js +0 -336
- package/dist/commands/lanes-checks.d.ts +0 -51
- package/dist/commands/lanes-checks.js +0 -941
- package/dist/commands/lanes-hold.d.ts +0 -43
- package/dist/commands/lanes-hold.js +0 -655
- package/dist/commands/lanes-kpis.d.ts +0 -11
- package/dist/commands/lanes-kpis.js +0 -34
- package/dist/commands/lanes-message.d.ts +0 -9
- package/dist/commands/lanes-message.js +0 -934
- package/dist/commands/lanes-move.d.ts +0 -12
- package/dist/commands/lanes-move.js +0 -397
- package/dist/commands/lanes-questions.d.ts +0 -36
- package/dist/commands/lanes-questions.js +0 -1004
- package/dist/commands/lanes-report.d.ts +0 -11
- package/dist/commands/lanes-report.js +0 -333
- package/dist/commands/lanes-resume.d.ts +0 -6
- package/dist/commands/lanes-resume.js +0 -561
- package/dist/commands/lanes-review.d.ts +0 -10
- package/dist/commands/lanes-review.js +0 -56
- package/dist/commands/lanes-shared.d.ts +0 -448
- package/dist/commands/lanes-shared.js +0 -170
- package/dist/commands/lanes-stories.d.ts +0 -15
- package/dist/commands/lanes-stories.js +0 -347
- package/dist/commands/lanes-watch.d.ts +0 -7
- package/dist/commands/lanes-watch.js +0 -216
- package/dist/commands/lanes.d.ts +0 -149
- package/dist/commands/lanes.js +0 -8843
- package/dist/commands/monitor.d.ts +0 -58
- package/dist/commands/monitor.js +0 -980
- package/dist/commands/onboard-bot-membership.d.ts +0 -32
- package/dist/commands/onboard-bot-membership.js +0 -40
- package/dist/commands/onboard-create-identity.d.ts +0 -26
- package/dist/commands/onboard-create-identity.js +0 -23
- package/dist/commands/outpost-pruner.d.ts +0 -3
- package/dist/commands/outpost-pruner.js +0 -125
- package/dist/commands/personal-connector-settings-flag.d.ts +0 -4
- package/dist/commands/personal-connector-settings-flag.js +0 -7
- package/dist/commands/personal-targeted-push-flag.d.ts +0 -4
- package/dist/commands/personal-targeted-push-flag.js +0 -7
- package/dist/commands/personal-targeted-push-paths.d.ts +0 -3
- package/dist/commands/personal-targeted-push-paths.js +0 -67
- package/dist/commands/report.d.ts +0 -19
- package/dist/commands/report.js +0 -537
- package/dist/commands/run-feature-telemetry.d.ts +0 -3
- package/dist/commands/run-feature-telemetry.js +0 -6
- package/dist/commands/staff/reset-test-account.d.ts +0 -110
- package/dist/commands/staff/reset-test-account.js +0 -268
- package/dist/commands/staff/test-account.d.ts +0 -51
- package/dist/commands/staff/test-account.js +0 -196
- package/dist/commands/vault-retention-flag.d.ts +0 -3
- package/dist/commands/vault-retention-flag.js +0 -9
- package/dist/commands/vault-retention.d.ts +0 -11
- package/dist/commands/vault-retention.js +0 -69
- package/dist/commands/version.d.ts +0 -10
- package/dist/commands/version.js +0 -11
- package/dist/fast-scaffold.d.ts +0 -84
- package/dist/fast-scaffold.js +0 -353
- package/dist/lanes-drain-hook.d.ts +0 -14
- package/dist/lanes-drain-hook.js +0 -203
- package/dist/lib/agent-kit/adopt-identity.d.ts +0 -27
- package/dist/lib/agent-kit/adopt-identity.js +0 -60
- package/dist/lib/agent-kit/attachment-download.d.ts +0 -24
- package/dist/lib/agent-kit/attachment-download.js +0 -47
- package/dist/lib/agent-kit/creds.d.ts +0 -106
- package/dist/lib/agent-kit/creds.js +0 -163
- package/dist/lib/agent-kit/fallback.d.ts +0 -78
- package/dist/lib/agent-kit/fallback.js +0 -210
- package/dist/lib/agent-kit/inbox-state.d.ts +0 -83
- package/dist/lib/agent-kit/inbox-state.js +0 -159
- package/dist/lib/agent-kit/kit-config.d.ts +0 -56
- package/dist/lib/agent-kit/kit-config.js +0 -65
- package/dist/lib/agent-kit/log.d.ts +0 -16
- package/dist/lib/agent-kit/log.js +0 -46
- package/dist/lib/agent-kit/mcp/attachments.d.ts +0 -126
- package/dist/lib/agent-kit/mcp/attachments.js +0 -222
- package/dist/lib/agent-kit/mcp/jsonrpc.d.ts +0 -75
- package/dist/lib/agent-kit/mcp/jsonrpc.js +0 -164
- package/dist/lib/agent-kit/mcp/tools.d.ts +0 -64
- package/dist/lib/agent-kit/mcp/tools.js +0 -397
- package/dist/lib/agent-kit/paths.d.ts +0 -65
- package/dist/lib/agent-kit/paths.js +0 -118
- package/dist/lib/agent-kit/private-file.d.ts +0 -29
- package/dist/lib/agent-kit/private-file.js +0 -91
- package/dist/lib/agent-kit/run/heartbeat.d.ts +0 -72
- package/dist/lib/agent-kit/run/heartbeat.js +0 -128
- package/dist/lib/agent-kit/run/inbox.d.ts +0 -76
- package/dist/lib/agent-kit/run/inbox.js +0 -205
- package/dist/lib/agent-kit/run/supervisor.d.ts +0 -35
- package/dist/lib/agent-kit/run/supervisor.js +0 -85
- package/dist/lib/agent-kit/run/sync.d.ts +0 -33
- package/dist/lib/agent-kit/run/sync.js +0 -58
- package/dist/lib/agent-kit/services.d.ts +0 -31
- package/dist/lib/agent-kit/services.js +0 -55
- package/dist/lib/agent-kit/skills.d.ts +0 -18
- package/dist/lib/agent-kit/skills.js +0 -151
- package/dist/lib/agent-kit/wake.d.ts +0 -83
- package/dist/lib/agent-kit/wake.js +0 -243
- package/dist/lib/agents/model-catalog.d.ts +0 -62
- package/dist/lib/agents/model-catalog.js +0 -275
- package/dist/lib/auth-login-provider-state.d.ts +0 -8
- package/dist/lib/auth-login-provider-state.js +0 -63
- package/dist/lib/aws-sdk-node-warning-output.d.ts +0 -12
- package/dist/lib/aws-sdk-node-warning-output.js +0 -22
- package/dist/lib/billing/free-month.d.ts +0 -18
- package/dist/lib/billing/free-month.js +0 -31
- package/dist/lib/billing/plan-limit-refusals.d.ts +0 -69
- package/dist/lib/billing/plan-limit-refusals.js +0 -187
- package/dist/lib/billing/plan-limit-upgrade-url.d.ts +0 -11
- package/dist/lib/billing/plan-limit-upgrade-url.js +0 -66
- package/dist/lib/billing/plan-lock.d.ts +0 -143
- package/dist/lib/billing/plan-lock.js +0 -439
- package/dist/lib/bot/api.d.ts +0 -349
- package/dist/lib/bot/api.js +0 -316
- package/dist/lib/bot/attachments.d.ts +0 -45
- package/dist/lib/bot/attachments.js +0 -89
- package/dist/lib/bot/cli-update.d.ts +0 -138
- package/dist/lib/bot/cli-update.js +0 -278
- package/dist/lib/bot/company-bind.d.ts +0 -27
- package/dist/lib/bot/company-bind.js +0 -62
- package/dist/lib/bot/config.d.ts +0 -153
- package/dist/lib/bot/config.js +0 -233
- package/dist/lib/bot/continuity-download.d.ts +0 -28
- package/dist/lib/bot/continuity-download.js +0 -75
- package/dist/lib/bot/continuity-install.d.ts +0 -14
- package/dist/lib/bot/continuity-install.js +0 -101
- package/dist/lib/bot/continuity.d.ts +0 -67
- package/dist/lib/bot/continuity.js +0 -301
- package/dist/lib/bot/creds.d.ts +0 -24
- package/dist/lib/bot/creds.js +0 -51
- package/dist/lib/bot/daemon.d.ts +0 -173
- package/dist/lib/bot/daemon.js +0 -552
- package/dist/lib/bot/inbox-poll-backoff-flag.d.ts +0 -24
- package/dist/lib/bot/inbox-poll-backoff-flag.js +0 -135
- package/dist/lib/bot/inbox-state.d.ts +0 -18
- package/dist/lib/bot/inbox-state.js +0 -51
- package/dist/lib/bot/index.d.ts +0 -23
- package/dist/lib/bot/index.js +0 -23
- package/dist/lib/bot/inflight.d.ts +0 -119
- package/dist/lib/bot/inflight.js +0 -83
- package/dist/lib/bot/job-completions.d.ts +0 -89
- package/dist/lib/bot/job-completions.js +0 -132
- package/dist/lib/bot/job-run.d.ts +0 -109
- package/dist/lib/bot/job-run.js +0 -246
- package/dist/lib/bot/local-config.d.ts +0 -61
- package/dist/lib/bot/local-config.js +0 -145
- package/dist/lib/bot/local-jobs.d.ts +0 -89
- package/dist/lib/bot/local-jobs.js +0 -459
- package/dist/lib/bot/local-name.d.ts +0 -54
- package/dist/lib/bot/local-name.js +0 -114
- package/dist/lib/bot/log.d.ts +0 -13
- package/dist/lib/bot/log.js +0 -59
- package/dist/lib/bot/owner-context.d.ts +0 -79
- package/dist/lib/bot/owner-context.js +0 -175
- package/dist/lib/bot/paths.d.ts +0 -76
- package/dist/lib/bot/paths.js +0 -131
- package/dist/lib/bot/progress.d.ts +0 -132
- package/dist/lib/bot/progress.js +0 -289
- package/dist/lib/bot/promote.d.ts +0 -16
- package/dist/lib/bot/promote.js +0 -106
- package/dist/lib/bot/promotion-hold.d.ts +0 -24
- package/dist/lib/bot/promotion-hold.js +0 -103
- package/dist/lib/bot/promotion-receipt.d.ts +0 -9
- package/dist/lib/bot/promotion-receipt.js +0 -56
- package/dist/lib/bot/promotion-upload.d.ts +0 -16
- package/dist/lib/bot/promotion-upload.js +0 -80
- package/dist/lib/bot/prompt.d.ts +0 -136
- package/dist/lib/bot/prompt.js +0 -433
- package/dist/lib/bot/room-policy.d.ts +0 -63
- package/dist/lib/bot/room-policy.js +0 -91
- package/dist/lib/bot/run.d.ts +0 -217
- package/dist/lib/bot/run.js +0 -1869
- package/dist/lib/bot/runnable.d.ts +0 -51
- package/dist/lib/bot/runnable.js +0 -65
- package/dist/lib/bot/runtime/claude.d.ts +0 -50
- package/dist/lib/bot/runtime/claude.js +0 -170
- package/dist/lib/bot/runtime/codex.d.ts +0 -28
- package/dist/lib/bot/runtime/codex.js +0 -153
- package/dist/lib/bot/runtime/grok-acp.d.ts +0 -40
- package/dist/lib/bot/runtime/grok-acp.js +0 -265
- package/dist/lib/bot/runtime/grok.d.ts +0 -41
- package/dist/lib/bot/runtime/grok.js +0 -169
- package/dist/lib/bot/runtime/index.d.ts +0 -36
- package/dist/lib/bot/runtime/index.js +0 -417
- package/dist/lib/bot/runtime/messages-stream.d.ts +0 -56
- package/dist/lib/bot/runtime/messages-stream.js +0 -194
- package/dist/lib/bot/runtime/sanitize.d.ts +0 -18
- package/dist/lib/bot/runtime/sanitize.js +0 -28
- package/dist/lib/bot/runtime/types.d.ts +0 -159
- package/dist/lib/bot/runtime/types.js +0 -51
- package/dist/lib/bot/runtime/windows.d.ts +0 -10
- package/dist/lib/bot/runtime/windows.js +0 -53
- package/dist/lib/bot/runtime-sign-in.d.ts +0 -24
- package/dist/lib/bot/runtime-sign-in.js +0 -31
- package/dist/lib/bot/scaffold.d.ts +0 -38
- package/dist/lib/bot/scaffold.js +0 -94
- package/dist/lib/bot/self-heal.d.ts +0 -52
- package/dist/lib/bot/self-heal.js +0 -79
- package/dist/lib/bot/self-process.d.ts +0 -19
- package/dist/lib/bot/self-process.js +0 -35
- package/dist/lib/bot/session.d.ts +0 -19
- package/dist/lib/bot/session.js +0 -39
- package/dist/lib/bot/setup-explain.d.ts +0 -64
- package/dist/lib/bot/setup-explain.js +0 -141
- package/dist/lib/bot/split.d.ts +0 -32
- package/dist/lib/bot/split.js +0 -241
- package/dist/lib/bot/status.d.ts +0 -57
- package/dist/lib/bot/status.js +0 -66
- package/dist/lib/bot/worker-source.d.ts +0 -66
- package/dist/lib/bot/worker-source.js +0 -283
- package/dist/lib/checkpoint-ontology/aliases.d.ts +0 -17
- package/dist/lib/checkpoint-ontology/aliases.js +0 -44
- package/dist/lib/checkpoint-ontology/apply.d.ts +0 -110
- package/dist/lib/checkpoint-ontology/apply.js +0 -777
- package/dist/lib/checkpoint-ontology/company-brief.d.ts +0 -18
- package/dist/lib/checkpoint-ontology/company-brief.js +0 -337
- package/dist/lib/checkpoint-ontology/company.d.ts +0 -44
- package/dist/lib/checkpoint-ontology/company.js +0 -118
- package/dist/lib/checkpoint-ontology/drop-aliases.d.ts +0 -41
- package/dist/lib/checkpoint-ontology/drop-aliases.js +0 -76
- package/dist/lib/checkpoint-ontology/entity-file.d.ts +0 -109
- package/dist/lib/checkpoint-ontology/entity-file.js +0 -371
- package/dist/lib/checkpoint-ontology/identity.d.ts +0 -38
- package/dist/lib/checkpoint-ontology/identity.js +0 -95
- package/dist/lib/checkpoint-ontology/merge-copies.d.ts +0 -199
- package/dist/lib/checkpoint-ontology/merge-copies.js +0 -1086
- package/dist/lib/checkpoint-ontology/multi-writer.d.ts +0 -101
- package/dist/lib/checkpoint-ontology/multi-writer.js +0 -394
- package/dist/lib/checkpoint-ontology/plan.d.ts +0 -193
- package/dist/lib/checkpoint-ontology/plan.js +0 -504
- package/dist/lib/checkpoint-ontology/queued-touches.d.ts +0 -29
- package/dist/lib/checkpoint-ontology/queued-touches.js +0 -193
- package/dist/lib/checkpoint-ontology/sync-client.d.ts +0 -38
- package/dist/lib/checkpoint-ontology/sync-client.js +0 -84
- package/dist/lib/checkpoint-ontology/tree.d.ts +0 -55
- package/dist/lib/checkpoint-ontology/tree.js +0 -198
- package/dist/lib/company-errors-sdk-warning-flag.d.ts +0 -5
- package/dist/lib/company-errors-sdk-warning-flag.js +0 -8
- package/dist/lib/core-utils/hook-timeout-debug-context-flag.d.ts +0 -20
- package/dist/lib/core-utils/hook-timeout-debug-context-flag.js +0 -81
- package/dist/lib/core-utils/jq-json-serializer.d.ts +0 -5
- package/dist/lib/core-utils/jq-json-serializer.js +0 -10
- package/dist/lib/core-utils/secret-patterns.d.ts +0 -43
- package/dist/lib/core-utils/secret-patterns.js +0 -34
- package/dist/lib/core-utils/sentry-report.d.ts +0 -114
- package/dist/lib/core-utils/sentry-report.js +0 -1034
- package/dist/lib/core-utils/timeout-guard-native.d.ts +0 -7
- package/dist/lib/core-utils/timeout-guard-native.js +0 -40
- package/dist/lib/core-utils/worktree-resume.d.ts +0 -20
- package/dist/lib/core-utils/worktree-resume.js +0 -1198
- package/dist/lib/daemon/catalog.d.ts +0 -134
- package/dist/lib/daemon/catalog.js +0 -358
- package/dist/lib/daemon/config.d.ts +0 -35
- package/dist/lib/daemon/config.js +0 -108
- package/dist/lib/daemon/flag.d.ts +0 -25
- package/dist/lib/daemon/flag.js +0 -59
- package/dist/lib/daemon/handoff.d.ts +0 -56
- package/dist/lib/daemon/handoff.js +0 -161
- package/dist/lib/daemon/hq-cloud.d.ts +0 -79
- package/dist/lib/daemon/hq-cloud.js +0 -183
- package/dist/lib/daemon/install.d.ts +0 -85
- package/dist/lib/daemon/install.js +0 -320
- package/dist/lib/daemon/legacy-sync-env.d.ts +0 -10
- package/dist/lib/daemon/legacy-sync-env.js +0 -58
- package/dist/lib/daemon/legacy.d.ts +0 -45
- package/dist/lib/daemon/legacy.js +0 -133
- package/dist/lib/daemon/lock.d.ts +0 -47
- package/dist/lib/daemon/lock.js +0 -138
- package/dist/lib/daemon/machine-type.d.ts +0 -50
- package/dist/lib/daemon/machine-type.js +0 -159
- package/dist/lib/daemon/migrate.d.ts +0 -77
- package/dist/lib/daemon/migrate.js +0 -265
- package/dist/lib/daemon/paths.d.ts +0 -24
- package/dist/lib/daemon/paths.js +0 -43
- package/dist/lib/daemon/protocol-tail.d.ts +0 -33
- package/dist/lib/daemon/protocol-tail.js +0 -131
- package/dist/lib/daemon/remote-control.d.ts +0 -74
- package/dist/lib/daemon/remote-control.js +0 -153
- package/dist/lib/daemon/requests.d.ts +0 -28
- package/dist/lib/daemon/requests.js +0 -65
- package/dist/lib/daemon/run.d.ts +0 -79
- package/dist/lib/daemon/run.js +0 -755
- package/dist/lib/daemon/succession.d.ts +0 -118
- package/dist/lib/daemon/succession.js +0 -263
- package/dist/lib/daemon/supervisor.d.ts +0 -132
- package/dist/lib/daemon/supervisor.js +0 -836
- package/dist/lib/daemon/sync-runner.d.ts +0 -58
- package/dist/lib/daemon/sync-runner.js +0 -277
- package/dist/lib/daemon/tools.d.ts +0 -52
- package/dist/lib/daemon/tools.js +0 -95
- package/dist/lib/daemon/updater.d.ts +0 -57
- package/dist/lib/daemon/updater.js +0 -163
- package/dist/lib/deploy-api.d.ts +0 -5
- package/dist/lib/deploy-api.js +0 -21
- package/dist/lib/deploy-apps.d.ts +0 -13
- package/dist/lib/deploy-apps.js +0 -29
- package/dist/lib/doctor/__testing__/run-doctor.d.ts +0 -8
- package/dist/lib/doctor/__testing__/run-doctor.js +0 -52
- package/dist/lib/doctor/checks/bots.d.ts +0 -13
- package/dist/lib/doctor/checks/bots.js +0 -189
- package/dist/lib/doctor/checks/scaffold-cli-floor.d.ts +0 -6
- package/dist/lib/doctor/checks/scaffold-cli-floor.js +0 -73
- package/dist/lib/doctor/checks/sync-runtime.d.ts +0 -11
- package/dist/lib/doctor/checks/sync-runtime.js +0 -216
- package/dist/lib/doctor/client-health-flag-token.d.ts +0 -15
- package/dist/lib/doctor/client-health-flag-token.js +0 -66
- package/dist/lib/doctor/client-health-reason-codes-flag.d.ts +0 -27
- package/dist/lib/doctor/client-health-reason-codes-flag.js +0 -106
- package/dist/lib/doctor/fix/json-output.d.ts +0 -28
- package/dist/lib/doctor/fix/json-output.js +0 -33
- package/dist/lib/doctor/fix/refresh-sync-outcome.d.ts +0 -12
- package/dist/lib/doctor/fix/refresh-sync-outcome.js +0 -25
- package/dist/lib/doctor/shared.d.ts +0 -8
- package/dist/lib/doctor/shared.js +0 -38
- package/dist/lib/doctor/stray-gate-entries.d.ts +0 -35
- package/dist/lib/doctor/stray-gate-entries.js +0 -83
- package/dist/lib/first-sync-next-step.d.ts +0 -37
- package/dist/lib/first-sync-next-step.js +0 -189
- package/dist/lib/flag-registry-endpoint.d.ts +0 -5
- package/dist/lib/flag-registry-endpoint.js +0 -9
- package/dist/lib/flag-registry-worker-source.generated.d.ts +0 -2
- package/dist/lib/flag-registry-worker-source.generated.js +0 -3
- package/dist/lib/flag-snapshot-file.d.ts +0 -20
- package/dist/lib/flag-snapshot-file.js +0 -91
- package/dist/lib/heartbeat-identity.d.ts +0 -30
- package/dist/lib/heartbeat-identity.js +0 -76
- package/dist/lib/lanes/account-home.d.ts +0 -8
- package/dist/lib/lanes/account-home.js +0 -10
- package/dist/lib/lanes/accounts.d.ts +0 -117
- package/dist/lib/lanes/accounts.js +0 -366
- package/dist/lib/lanes/admission-host.d.ts +0 -22
- package/dist/lib/lanes/admission-host.js +0 -37
- package/dist/lib/lanes/admission.d.ts +0 -26
- package/dist/lib/lanes/admission.js +0 -210
- package/dist/lib/lanes/approval-gate.d.ts +0 -8
- package/dist/lib/lanes/approval-gate.js +0 -90
- package/dist/lib/lanes/autopilot-metrics.d.ts +0 -99
- package/dist/lib/lanes/autopilot-metrics.js +0 -301
- package/dist/lib/lanes/autopilot-registry.d.ts +0 -62
- package/dist/lib/lanes/autopilot-registry.js +0 -192
- package/dist/lib/lanes/autopilot.d.ts +0 -120
- package/dist/lib/lanes/autopilot.js +0 -1061
- package/dist/lib/lanes/blocker-freshness.d.ts +0 -31
- package/dist/lib/lanes/blocker-freshness.js +0 -168
- package/dist/lib/lanes/checked-company-path.d.ts +0 -3
- package/dist/lib/lanes/checked-company-path.js +0 -39
- package/dist/lib/lanes/claude-balance.d.ts +0 -97
- package/dist/lib/lanes/claude-balance.js +0 -319
- package/dist/lib/lanes/compaction.d.ts +0 -110
- package/dist/lib/lanes/compaction.js +0 -293
- package/dist/lib/lanes/config.d.ts +0 -91
- package/dist/lib/lanes/config.js +0 -592
- package/dist/lib/lanes/constants.d.ts +0 -3
- package/dist/lib/lanes/constants.js +0 -3
- package/dist/lib/lanes/delivery-core.d.ts +0 -15
- package/dist/lib/lanes/delivery-core.js +0 -21
- package/dist/lib/lanes/delivery.d.ts +0 -180
- package/dist/lib/lanes/delivery.js +0 -443
- package/dist/lib/lanes/dropbox.d.ts +0 -129
- package/dist/lib/lanes/dropbox.js +0 -601
- package/dist/lib/lanes/effort.d.ts +0 -51
- package/dist/lib/lanes/effort.js +0 -113
- package/dist/lib/lanes/envelope-repair-dispatch.d.ts +0 -26
- package/dist/lib/lanes/envelope-repair-dispatch.js +0 -74
- package/dist/lib/lanes/errors.d.ts +0 -39
- package/dist/lib/lanes/errors.js +0 -72
- package/dist/lib/lanes/flag-keys.d.ts +0 -13
- package/dist/lib/lanes/flag-keys.js +0 -13
- package/dist/lib/lanes/grants.d.ts +0 -29
- package/dist/lib/lanes/grants.js +0 -166
- package/dist/lib/lanes/hire-grant-dispatch.d.ts +0 -29
- package/dist/lib/lanes/hire-grant-dispatch.js +0 -316
- package/dist/lib/lanes/hooks-install.d.ts +0 -82
- package/dist/lib/lanes/hooks-install.js +0 -479
- package/dist/lib/lanes/host-capacity.d.ts +0 -69
- package/dist/lib/lanes/host-capacity.js +0 -254
- package/dist/lib/lanes/hq-root.d.ts +0 -19
- package/dist/lib/lanes/hq-root.js +0 -28
- package/dist/lib/lanes/index.d.ts +0 -76
- package/dist/lib/lanes/index.js +0 -42
- package/dist/lib/lanes/keep-alive.d.ts +0 -68
- package/dist/lib/lanes/keep-alive.js +0 -343
- package/dist/lib/lanes/kr-freshness.d.ts +0 -76
- package/dist/lib/lanes/kr-freshness.js +0 -413
- package/dist/lib/lanes/lane-company.d.ts +0 -10
- package/dist/lib/lanes/lane-company.js +0 -41
- package/dist/lib/lanes/liveness.d.ts +0 -108
- package/dist/lib/lanes/liveness.js +0 -396
- package/dist/lib/lanes/machine-identity.d.ts +0 -34
- package/dist/lib/lanes/machine-identity.js +0 -92
- package/dist/lib/lanes/manager-status-gate.d.ts +0 -17
- package/dist/lib/lanes/manager-status-gate.js +0 -133
- package/dist/lib/lanes/merge-command.d.ts +0 -15
- package/dist/lib/lanes/merge-command.js +0 -629
- package/dist/lib/lanes/mesh-events.d.ts +0 -127
- package/dist/lib/lanes/mesh-events.js +0 -564
- package/dist/lib/lanes/message-replay.d.ts +0 -21
- package/dist/lib/lanes/message-replay.js +0 -122
- package/dist/lib/lanes/models.d.ts +0 -86
- package/dist/lib/lanes/models.js +0 -234
- package/dist/lib/lanes/monitor.d.ts +0 -48
- package/dist/lib/lanes/monitor.js +0 -428
- package/dist/lib/lanes/move-account.d.ts +0 -56
- package/dist/lib/lanes/move-account.js +0 -193
- package/dist/lib/lanes/orphans.d.ts +0 -25
- package/dist/lib/lanes/orphans.js +0 -102
- package/dist/lib/lanes/outpost-dispatch.d.ts +0 -147
- package/dist/lib/lanes/outpost-dispatch.js +0 -271
- package/dist/lib/lanes/outpost-hire-cache.d.ts +0 -22
- package/dist/lib/lanes/outpost-hire-cache.js +0 -153
- package/dist/lib/lanes/outpost-identity.d.ts +0 -33
- package/dist/lib/lanes/outpost-identity.js +0 -59
- package/dist/lib/lanes/outpost-profile-repin.d.ts +0 -17
- package/dist/lib/lanes/outpost-profile-repin.js +0 -84
- package/dist/lib/lanes/outpost-pruner-install.d.ts +0 -37
- package/dist/lib/lanes/outpost-pruner-install.js +0 -238
- package/dist/lib/lanes/outpost-registry-worker-approval.d.ts +0 -18
- package/dist/lib/lanes/outpost-registry-worker-approval.js +0 -109
- package/dist/lib/lanes/outpost-snapshot-memo.d.ts +0 -6
- package/dist/lib/lanes/outpost-snapshot-memo.js +0 -14
- package/dist/lib/lanes/outpost-worktree-pruner-flag.d.ts +0 -19
- package/dist/lib/lanes/outpost-worktree-pruner-flag.js +0 -86
- package/dist/lib/lanes/outpost-worktree-pruner.d.ts +0 -62
- package/dist/lib/lanes/outpost-worktree-pruner.js +0 -1201
- package/dist/lib/lanes/profile.d.ts +0 -69
- package/dist/lib/lanes/profile.js +0 -552
- package/dist/lib/lanes/provider-rejection.d.ts +0 -86
- package/dist/lib/lanes/provider-rejection.js +0 -286
- package/dist/lib/lanes/questions.d.ts +0 -90
- package/dist/lib/lanes/questions.js +0 -384
- package/dist/lib/lanes/quota.d.ts +0 -134
- package/dist/lib/lanes/quota.js +0 -471
- package/dist/lib/lanes/reconcile-install.d.ts +0 -90
- package/dist/lib/lanes/reconcile-install.js +0 -257
- package/dist/lib/lanes/reconcile.d.ts +0 -155
- package/dist/lib/lanes/reconcile.js +0 -3193
- package/dist/lib/lanes/registry-flag.d.ts +0 -29
- package/dist/lib/lanes/registry-flag.js +0 -139
- package/dist/lib/lanes/registry-persona.d.ts +0 -20
- package/dist/lib/lanes/registry-persona.js +0 -329
- package/dist/lib/lanes/registry.d.ts +0 -122
- package/dist/lib/lanes/registry.js +0 -570
- package/dist/lib/lanes/reviews.d.ts +0 -38
- package/dist/lib/lanes/reviews.js +0 -395
- package/dist/lib/lanes/runaway-tool-guard.d.ts +0 -38
- package/dist/lib/lanes/runaway-tool-guard.js +0 -284
- package/dist/lib/lanes/session-relink.d.ts +0 -25
- package/dist/lib/lanes/session-relink.js +0 -216
- package/dist/lib/lanes/spawn.d.ts +0 -350
- package/dist/lib/lanes/spawn.js +0 -2643
- package/dist/lib/lanes/ssm-command-context.d.ts +0 -12
- package/dist/lib/lanes/ssm-command-context.js +0 -52
- package/dist/lib/lanes/store.d.ts +0 -91
- package/dist/lib/lanes/store.js +0 -1811
- package/dist/lib/lanes/stories.d.ts +0 -23
- package/dist/lib/lanes/stories.js +0 -92
- package/dist/lib/lanes/story-ledger.d.ts +0 -80
- package/dist/lib/lanes/story-ledger.js +0 -815
- package/dist/lib/lanes/story-switch.d.ts +0 -21
- package/dist/lib/lanes/story-switch.js +0 -75
- package/dist/lib/lanes/text-scan.d.ts +0 -11
- package/dist/lib/lanes/text-scan.js +0 -103
- package/dist/lib/lanes/throttle.d.ts +0 -116
- package/dist/lib/lanes/throttle.js +0 -437
- package/dist/lib/lanes/timestamp.d.ts +0 -3
- package/dist/lib/lanes/timestamp.js +0 -26
- package/dist/lib/lanes/tracker-checks.d.ts +0 -77
- package/dist/lib/lanes/tracker-checks.js +0 -134
- package/dist/lib/lanes/tracker-report-state.d.ts +0 -10
- package/dist/lib/lanes/tracker-report-state.js +0 -124
- package/dist/lib/lanes/tracker-report.d.ts +0 -203
- package/dist/lib/lanes/tracker-report.js +0 -522
- package/dist/lib/lanes/tracker-store.d.ts +0 -18
- package/dist/lib/lanes/tracker-store.js +0 -106
- package/dist/lib/lanes/types.d.ts +0 -1020
- package/dist/lib/lanes/types.js +0 -417
- package/dist/lib/lanes/wait.d.ts +0 -39
- package/dist/lib/lanes/wait.js +0 -159
- package/dist/lib/lanes/watch.d.ts +0 -39
- package/dist/lib/lanes/watch.js +0 -249
- package/dist/lib/lanes/watcher-main.d.ts +0 -11
- package/dist/lib/lanes/watcher-main.js +0 -108
- package/dist/lib/lanes/watcher.d.ts +0 -287
- package/dist/lib/lanes/watcher.js +0 -1972
- package/dist/lib/mesh/live/daemon/config.d.ts +0 -36
- package/dist/lib/mesh/live/daemon/config.js +0 -120
- package/dist/lib/mesh/live/daemon/legacy-listen.d.ts +0 -43
- package/dist/lib/mesh/live/daemon/legacy-listen.js +0 -89
- package/dist/lib/mesh/live/daemon/live-cache.d.ts +0 -26
- package/dist/lib/mesh/live/daemon/live-cache.js +0 -116
- package/dist/lib/mesh/live/daemon/mqtt-events.d.ts +0 -7
- package/dist/lib/mesh/live/daemon/mqtt-events.js +0 -2
- package/dist/lib/mesh/live/daemon/mqtt-events.test-d.d.ts +0 -2
- package/dist/lib/mesh/live/daemon/mqtt-events.test-d.js +0 -10
- package/dist/lib/mesh/live/daemon/version-drift.d.ts +0 -5
- package/dist/lib/mesh/live/daemon/version-drift.js +0 -47
- package/dist/lib/mesh/live/daemon/work-subscribe.d.ts +0 -32
- package/dist/lib/mesh/live/daemon/work-subscribe.js +0 -262
- package/dist/lib/mesh/live/report-summary.d.ts +0 -45
- package/dist/lib/mesh/live/report-summary.js +0 -234
- package/dist/lib/mesh/live/session-seq.d.ts +0 -4
- package/dist/lib/mesh/live/session-seq.js +0 -33
- package/dist/lib/mesh/project-board.d.ts +0 -65
- package/dist/lib/mesh/project-board.js +0 -181
- package/dist/lib/mesh/story-status.d.ts +0 -22
- package/dist/lib/mesh/story-status.js +0 -49
- package/dist/lib/monitor.d.ts +0 -149
- package/dist/lib/monitor.js +0 -519
- package/dist/lib/node-binary.d.ts +0 -50
- package/dist/lib/node-binary.js +0 -133
- package/dist/lib/notify-recipient.d.ts +0 -7
- package/dist/lib/notify-recipient.js +0 -11
- package/dist/lib/onboarding/checkpoint.d.ts +0 -13
- package/dist/lib/onboarding/checkpoint.js +0 -44
- package/dist/lib/onboarding/cli/onboard.d.ts +0 -53
- package/dist/lib/onboarding/cli/onboard.js +0 -135
- package/dist/lib/onboarding/cli/prompts.d.ts +0 -28
- package/dist/lib/onboarding/cli/prompts.js +0 -83
- package/dist/lib/onboarding/errors.d.ts +0 -34
- package/dist/lib/onboarding/errors.js +0 -59
- package/dist/lib/onboarding/index.d.ts +0 -13
- package/dist/lib/onboarding/index.js +0 -13
- package/dist/lib/onboarding/orchestrator.d.ts +0 -47
- package/dist/lib/onboarding/orchestrator.js +0 -569
- package/dist/lib/onboarding/types.d.ts +0 -79
- package/dist/lib/onboarding/types.js +0 -8
- package/dist/lib/policy-validator.d.ts +0 -7
- package/dist/lib/policy-validator.js +0 -187
- package/dist/lib/process-flag-company-context.d.ts +0 -8
- package/dist/lib/process-flag-company-context.js +0 -67
- package/dist/lib/report-publish.d.ts +0 -175
- package/dist/lib/report-publish.js +0 -421
- package/dist/lib/report-run.d.ts +0 -62
- package/dist/lib/report-run.js +0 -123
- package/dist/lib/report-snapshot.d.ts +0 -12
- package/dist/lib/report-snapshot.js +0 -135
- package/dist/lib/report-templates.d.ts +0 -9
- package/dist/lib/report-templates.js +0 -21
- package/dist/lib/scaffold-cli-floor.d.ts +0 -8
- package/dist/lib/scaffold-cli-floor.js +0 -50
- package/dist/lib/search-index/collection-path-repair-flag.d.ts +0 -4
- package/dist/lib/search-index/collection-path-repair-flag.js +0 -7
- package/dist/lib/search-index/embed-lock.d.ts +0 -32
- package/dist/lib/search-index/embed-lock.js +0 -286
- package/dist/lib/search-index/load-gate.d.ts +0 -57
- package/dist/lib/search-index/load-gate.js +0 -270
- package/dist/lib/search-index/max-doc-bytes.d.ts +0 -219
- package/dist/lib/search-index/max-doc-bytes.js +0 -463
- package/dist/lib/search-index/qmd-exit-diagnostics.d.ts +0 -5
- package/dist/lib/search-index/qmd-exit-diagnostics.js +0 -40
- package/dist/lib/search-index/reindex-single-flight-flag.d.ts +0 -5
- package/dist/lib/search-index/reindex-single-flight-flag.js +0 -8
- package/dist/lib/service-manager/index.d.ts +0 -42
- package/dist/lib/service-manager/index.js +0 -105
- package/dist/lib/service-manager/launchd.d.ts +0 -81
- package/dist/lib/service-manager/launchd.js +0 -212
- package/dist/lib/service-manager/systemd.d.ts +0 -19
- package/dist/lib/service-manager/systemd.js +0 -72
- package/dist/lib/service-manager/types.d.ts +0 -34
- package/dist/lib/service-manager/types.js +0 -26
- package/dist/lib/test-utils/isolated-flag-company-context.d.ts +0 -3
- package/dist/lib/test-utils/isolated-flag-company-context.js +0 -18
- package/dist/lib/work-context/bind-best.d.ts +0 -66
- package/dist/lib/work-context/bind-best.js +0 -344
- package/dist/lib/work-context/bind-calling-session.d.ts +0 -26
- package/dist/lib/work-context/bind-calling-session.js +0 -63
- package/dist/lib/work-context/company-rebind.d.ts +0 -23
- package/dist/lib/work-context/company-rebind.js +0 -59
- package/dist/lib/work-context/default-company.d.ts +0 -43
- package/dist/lib/work-context/default-company.js +0 -83
- package/dist/lib/work-context/outbox-quarantine-status-flag.d.ts +0 -4
- package/dist/lib/work-context/outbox-quarantine-status-flag.js +0 -7
- package/dist/lib/work-context/prd-sync.d.ts +0 -56
- package/dist/lib/work-context/prd-sync.js +0 -197
- package/dist/lib/work-context/preflight-contract.d.ts +0 -28
- package/dist/lib/work-context/preflight-contract.js +0 -85
- package/dist/lib/work-context/prompt-rebind.d.ts +0 -25
- package/dist/lib/work-context/prompt-rebind.js +0 -85
- package/dist/lib/work-context/windows-acl.d.ts +0 -123
- package/dist/lib/work-context/windows-acl.js +0 -425
- package/dist/lib/workers-registry/read.d.ts +0 -15
- package/dist/lib/workers-registry/read.js +0 -17
- package/dist/native-fast-route.d.ts +0 -7
- package/dist/native-fast-route.js +0 -45
- package/dist/node-network-compat-core.d.ts +0 -12
- package/dist/node-network-compat-core.js +0 -41
- package/dist/node-network-compat-fast.d.ts +0 -7
- package/dist/node-network-compat-fast.js +0 -23
- package/dist/secrets-env-fast-path.d.ts +0 -5
- package/dist/secrets-env-fast-path.js +0 -16
- package/dist/secrets-env-fast-route.d.ts +0 -18
- package/dist/secrets-env-fast-route.js +0 -54
- package/dist/utils/checkpoint-stamp-write-error.d.ts +0 -28
- package/dist/utils/checkpoint-stamp-write-error.js +0 -99
- package/dist/utils/cli-network-lifecycle.d.ts +0 -4
- package/dist/utils/cli-network-lifecycle.js +0 -11
- package/dist/utils/cognito-refresh-sentry.d.ts +0 -3
- package/dist/utils/cognito-refresh-sentry.js +0 -49
- package/dist/utils/console-origin.d.ts +0 -9
- package/dist/utils/console-origin.js +0 -28
- package/dist/utils/exclusive-lock.d.ts +0 -32
- package/dist/utils/exclusive-lock.js +0 -75
- package/dist/utils/fast-stream-errors.d.ts +0 -12
- package/dist/utils/fast-stream-errors.js +0 -18
- package/dist/utils/files-browse-acl.d.ts +0 -5
- package/dist/utils/files-browse-acl.js +0 -11
- package/dist/utils/hq-core-yaml.d.ts +0 -10
- package/dist/utils/hq-core-yaml.js +0 -40
- package/dist/utils/hq-root-resolver.d.ts +0 -13
- package/dist/utils/hq-root-resolver.js +0 -103
- package/dist/utils/redact-url.d.ts +0 -14
- package/dist/utils/redact-url.js +0 -218
- package/dist/utils/scaffold-fast-import-guard.d.ts +0 -2
- package/dist/utils/scaffold-fast-import-guard.js +0 -40
- package/dist/utils/scaffold-packlist-guard.d.ts +0 -7
- package/dist/utils/scaffold-packlist-guard.js +0 -23
- package/dist/utils/scaffold-sibling-references.d.ts +0 -22
- package/dist/utils/scaffold-sibling-references.js +0 -156
- package/dist/utils/secret-load-availability.d.ts +0 -8
- package/dist/utils/secret-load-availability.js +0 -54
- package/dist/utils/staged-install.d.ts +0 -34
- package/dist/utils/staged-install.js +0 -346
- package/dist/utils/staged-npm-install.d.ts +0 -16
- package/dist/utils/staged-npm-install.js +0 -264
- package/dist/utils/sync-log-sources.d.ts +0 -15
- package/dist/utils/sync-log-sources.js +0 -36
- package/dist/utils/table-width.d.ts +0 -7
- package/dist/utils/table-width.js +0 -15
- package/dist/utils/update-command-supervisor.cjs +0 -247
- package/dist/utils/upload-author.d.ts +0 -15
- package/dist/utils/upload-author.js +0 -39
- package/dist/utils/version-report.d.ts +0 -27
- package/dist/utils/version-report.js +0 -105
- package/dist/version-request.d.ts +0 -14
- package/dist/version-request.js +0 -36
- package/scripts/mesh-daemon-if-stale.mjs +0 -20
- package/templates/reports/blank.md +0 -3
- package/templates/reports/daily-digest.md +0 -11
- package/templates/runbooks/update-report.md +0 -21
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* job-completions.json — run completions the cloud has not accepted yet.
|
|
3
|
-
*
|
|
4
|
-
* Reporting a finished run is MANDATORY: nothing else clears the job's
|
|
5
|
-
* in-progress flag, and until it is cleared every later fire of that job is
|
|
6
|
-
* skipped as an overlap for up to an hour. So when the completion call fails
|
|
7
|
-
* (the network was down, the token was stale), the bot logs it loudly, still
|
|
8
|
-
* acks the inbox item — the work is done and must never run twice — and keeps
|
|
9
|
-
* the completion here to retry.
|
|
10
|
-
*
|
|
11
|
-
* A retry only re-sends a small report; it never re-runs the work.
|
|
12
|
-
*
|
|
13
|
-
* Retries are spaced by EXPONENTIAL BACKOFF and given up on by WALL-CLOCK AGE,
|
|
14
|
-
* not by a count of attempts. The inbox polls every 2 seconds, so a fixed
|
|
15
|
-
* ten-attempt budget was spent in about twenty seconds — an ordinary sixty-
|
|
16
|
-
* second network drop permanently lost the completion and wedged that job for
|
|
17
|
-
* the rest of the server's in-progress hour. Giving up is pegged to that same
|
|
18
|
-
* hour, after which the cloud releases the slot by itself anyway.
|
|
19
|
-
*
|
|
20
|
-
* ── After a reinstall: restore, adopt, repair (decision, 2026-09-16) ─────────
|
|
21
|
-
*
|
|
22
|
-
* This file lives in the bot's own folder (~/.hq/bots/<name>/), which is never
|
|
23
|
-
* synced. What `hq bot restore` / `hq bot adopt` do to it decides what happens
|
|
24
|
-
* to a completion owed by a run on the OLD machine:
|
|
25
|
-
*
|
|
26
|
-
* - REPAIR (the folder is still here; only the credentials are re-issued): the
|
|
27
|
-
* file survives and its completions are still reported, with the new
|
|
28
|
-
* credentials. That is correct — it is the same agent, and the complete route
|
|
29
|
-
* authorizes by agent identity, not by machine.
|
|
30
|
-
* - ADOPT onto a fresh machine: there is no file, so nothing is reported from
|
|
31
|
-
* here. That is not a lost report: the old machine ACKED the run before it
|
|
32
|
-
* queued the completion (the work must never run twice), so the cloud will
|
|
33
|
-
* not redeliver it, and the job's in-progress slot is released by the cloud
|
|
34
|
-
* itself within the hour. Not duplicated, and not jammed for longer than the
|
|
35
|
-
* outage already cost.
|
|
36
|
-
* - ADOPT into a folder that SURVIVED (bot.json gone, the rest left behind):
|
|
37
|
-
* completions stamped with THIS bot's agentUid are reported as normal. A
|
|
38
|
-
* completion stamped with a DIFFERENT agentUid — a same-named bot that was
|
|
39
|
-
* deleted and re-created — is dropped, never sent: it belongs to another
|
|
40
|
-
* identity, and reporting it against this one would be a cross-identity
|
|
41
|
-
* write that can only fail or, worse, land on the wrong run.
|
|
42
|
-
*
|
|
43
|
-
* Per-job model SESSIONS (session-job-<jobId>.json) need no such care: a job
|
|
44
|
-
* that finds no session simply starts a fresh one, and a scheduled run carries
|
|
45
|
-
* everything it needs in its own prompt.
|
|
46
|
-
*/
|
|
47
|
-
import * as fs from "node:fs";
|
|
48
|
-
import * as path from "node:path";
|
|
49
|
-
const BOT_JOB_COMPLETIONS_NAME = "job-completions.json";
|
|
50
|
-
/** First retry gap; each failure doubles it. */
|
|
51
|
-
export const COMPLETION_RETRY_BASE_MS = 2_000;
|
|
52
|
-
/** Never wait longer than this between retries. */
|
|
53
|
-
export const COMPLETION_RETRY_MAX_MS = 5 * 60_000;
|
|
54
|
-
/**
|
|
55
|
-
* Stop retrying a completion older than this. Matches the server's
|
|
56
|
-
* DEFAULT_JOBS_MAX_IN_PROGRESS_SECONDS: past it the cloud reclaims the job's
|
|
57
|
-
* in-progress slot on its own, so a later report changes nothing.
|
|
58
|
-
*/
|
|
59
|
-
export const MAX_COMPLETION_AGE_MS = 60 * 60_000;
|
|
60
|
-
function botJobCompletionsPath(dir) {
|
|
61
|
-
return path.join(dir, BOT_JOB_COMPLETIONS_NAME);
|
|
62
|
-
}
|
|
63
|
-
function isPending(raw) {
|
|
64
|
-
const c = raw;
|
|
65
|
-
return c?.v === 1 && typeof c.jobId === "string" && typeof c.messageId === "string" && typeof c.status === "string";
|
|
66
|
-
}
|
|
67
|
-
export function readPendingJobCompletions(dir) {
|
|
68
|
-
try {
|
|
69
|
-
const raw = JSON.parse(fs.readFileSync(botJobCompletionsPath(dir), "utf8"));
|
|
70
|
-
if (raw?.v !== 1 || !Array.isArray(raw.completions))
|
|
71
|
-
return [];
|
|
72
|
-
return raw.completions.filter(isPending);
|
|
73
|
-
}
|
|
74
|
-
catch {
|
|
75
|
-
return [];
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
/** The gap before attempt N (1-based), doubling and capped. */
|
|
79
|
-
export function completionRetryDelayMs(attempts) {
|
|
80
|
-
const exponent = Math.max(0, attempts - 1);
|
|
81
|
-
// Bound the shift so a long-lived entry cannot overflow into Infinity.
|
|
82
|
-
const raw = COMPLETION_RETRY_BASE_MS * 2 ** Math.min(exponent, 20);
|
|
83
|
-
return Math.min(COMPLETION_RETRY_MAX_MS, raw);
|
|
84
|
-
}
|
|
85
|
-
/** True when this entry is due for another attempt. */
|
|
86
|
-
export function isCompletionDue(entry, nowMs) {
|
|
87
|
-
return nowMs >= (entry.nextAttemptAt ?? 0);
|
|
88
|
-
}
|
|
89
|
-
/** True when this entry was owed by a different bot identity than `agentUid`. */
|
|
90
|
-
export function isCompletionForOtherAgent(entry, agentUid) {
|
|
91
|
-
return typeof entry.agentUid === "string" && entry.agentUid !== "" && entry.agentUid !== agentUid;
|
|
92
|
-
}
|
|
93
|
-
/** True when the cloud has already reclaimed the slot; retrying changes nothing. */
|
|
94
|
-
export function isCompletionExpired(entry, nowMs) {
|
|
95
|
-
const first = new Date(entry.firstFailedAt).getTime();
|
|
96
|
-
if (Number.isNaN(first))
|
|
97
|
-
return false;
|
|
98
|
-
return nowMs - first >= MAX_COMPLETION_AGE_MS;
|
|
99
|
-
}
|
|
100
|
-
function write(dir, completions) {
|
|
101
|
-
if (completions.length === 0) {
|
|
102
|
-
fs.rmSync(botJobCompletionsPath(dir), { force: true });
|
|
103
|
-
return;
|
|
104
|
-
}
|
|
105
|
-
fs.mkdirSync(dir, { recursive: true, mode: 0o700 });
|
|
106
|
-
const tmp = path.join(dir, `.job-completions.tmp.${process.pid}.${Date.now()}`);
|
|
107
|
-
const file = { v: 1, completions };
|
|
108
|
-
fs.writeFileSync(tmp, `${JSON.stringify(file, null, 2)}\n`, { mode: 0o600 });
|
|
109
|
-
fs.renameSync(tmp, botJobCompletionsPath(dir));
|
|
110
|
-
}
|
|
111
|
-
/** Record (or back off) a completion the cloud has not taken. */
|
|
112
|
-
export function recordPendingJobCompletion(dir, entry, now) {
|
|
113
|
-
const rest = readPendingJobCompletions(dir);
|
|
114
|
-
const existing = rest.find((c) => c.messageId === entry.messageId);
|
|
115
|
-
const attempts = (existing?.attempts ?? 0) + 1;
|
|
116
|
-
const next = {
|
|
117
|
-
v: 1,
|
|
118
|
-
...entry,
|
|
119
|
-
firstFailedAt: existing?.firstFailedAt ?? now.toISOString(),
|
|
120
|
-
attempts,
|
|
121
|
-
nextAttemptAt: now.getTime() + completionRetryDelayMs(attempts),
|
|
122
|
-
};
|
|
123
|
-
write(dir, [...rest.filter((c) => c.messageId !== entry.messageId), next]);
|
|
124
|
-
return next;
|
|
125
|
-
}
|
|
126
|
-
export function clearPendingJobCompletion(dir, messageId) {
|
|
127
|
-
const rest = readPendingJobCompletions(dir);
|
|
128
|
-
const kept = rest.filter((c) => c.messageId !== messageId);
|
|
129
|
-
if (kept.length !== rest.length)
|
|
130
|
-
write(dir, kept);
|
|
131
|
-
}
|
|
132
|
-
//# sourceMappingURL=job-completions.js.map
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Scheduled job runs: the third kind of inbox item a bot can be handed.
|
|
3
|
-
*
|
|
4
|
-
* The cloud does all the scheduling. hq-pro-agents fires a job on an
|
|
5
|
-
* EventBridge schedule and writes a DURABLE inbox item for the agent
|
|
6
|
-
* (`channel: "job"`) carrying the job's own prompt. Nothing is scheduled on
|
|
7
|
-
* this computer — there is no crontab, no launchd timer, no local clock.
|
|
8
|
-
*
|
|
9
|
-
* Two rules shape everything here (owner decisions, 2026-09-15):
|
|
10
|
-
*
|
|
11
|
-
* - CATCH-UP, never skip. A run whose `staleAfter` has passed is still run,
|
|
12
|
-
* once, and the bot says in its report that it is a catch-up and names the
|
|
13
|
-
* time the run was originally due. A Mac that was asleep overnight wakes up
|
|
14
|
-
* and does the morning job late rather than silently dropping it.
|
|
15
|
-
* - ONE catch-up per job per wake. If several runs of the SAME job are pending
|
|
16
|
-
* (a long sleep over many fires), only the newest runs; the older ones are
|
|
17
|
-
* reported to the cloud as `skipped-precondition` with a plain disposition,
|
|
18
|
-
* so the job's in-progress flag is released and the history is honest.
|
|
19
|
-
*
|
|
20
|
-
* Everything in this file is pure so the rules are unit-testable.
|
|
21
|
-
*/
|
|
22
|
-
import type { InboxItem } from "./api.js";
|
|
23
|
-
/** The job fields an inbox item carries when `channel === "job"`. */
|
|
24
|
-
export interface JobRunFields {
|
|
25
|
-
jobId: string;
|
|
26
|
-
prompt: string;
|
|
27
|
-
/** Opaque metadata from the job record (an object on the wire). */
|
|
28
|
-
context?: Record<string, unknown> | string;
|
|
29
|
-
script?: string;
|
|
30
|
-
/** When the schedule fired (ISO-8601) — the time the run was due. */
|
|
31
|
-
firedAt?: string;
|
|
32
|
-
/** Delivery deadline (ISO-8601); past it, this is a catch-up. */
|
|
33
|
-
staleAfter?: string;
|
|
34
|
-
requestId?: string;
|
|
35
|
-
}
|
|
36
|
-
export declare function isJobItem(item: Pick<InboxItem, "channel">): boolean;
|
|
37
|
-
/**
|
|
38
|
-
* The job fields of an inbox item, or null when it is not a usable job run.
|
|
39
|
-
* A job item with no jobId or no prompt is nothing the bot can run; the caller
|
|
40
|
-
* acks it rather than looping on it forever.
|
|
41
|
-
*/
|
|
42
|
-
export declare function readJobRun(item: InboxItem): JobRunFields | null;
|
|
43
|
-
/** The run's extra context as text for the turn, or null when there is none. */
|
|
44
|
-
export declare function jobContextText(context: JobRunFields["context"]): string | null;
|
|
45
|
-
/** The zone this computer is in — where the owner scheduled the job. */
|
|
46
|
-
export declare function machineTimeZone(): string;
|
|
47
|
-
/**
|
|
48
|
-
* A readable instant for a person: "2026-09-15 09:00 EDT".
|
|
49
|
-
*
|
|
50
|
-
* Rendered in the OWNER's zone, not UTC. Schedules are created in the machine's
|
|
51
|
-
* zone ("every weekday at 9am" means 9am where the owner lives), so reporting
|
|
52
|
-
* the same run as "due 13:00 UTC" reads as the wrong time to the only person
|
|
53
|
-
* who sees it. The format is fixed (en-CA + explicit parts) rather than
|
|
54
|
-
* locale-default, so the bot reads the same on every machine and the output is
|
|
55
|
-
* testable.
|
|
56
|
-
*/
|
|
57
|
-
export declare function formatJobTime(iso: string | undefined, timeZone?: string): string;
|
|
58
|
-
/** True when the delivery deadline has passed: this run is late, not skipped. */
|
|
59
|
-
export declare function isCatchUpRun(job: JobRunFields, now: Date): boolean;
|
|
60
|
-
/**
|
|
61
|
-
* The user turn for a fired job. It says plainly that this is a scheduled run
|
|
62
|
-
* so the model does not answer as if a person had just spoken, and (for a late
|
|
63
|
-
* run) that it is a catch-up, naming the time the run was originally due.
|
|
64
|
-
*/
|
|
65
|
-
export declare function buildJobTurnPrompt(job: JobRunFields, opts: {
|
|
66
|
-
now: Date;
|
|
67
|
-
timeZone?: string;
|
|
68
|
-
}): string;
|
|
69
|
-
/**
|
|
70
|
-
* The line the bot's DM report starts with, so the owner sees at a glance that
|
|
71
|
-
* this is a scheduled run and not a reply to something they said.
|
|
72
|
-
*/
|
|
73
|
-
export declare function jobReportHeader(job: JobRunFields, catchUp: boolean, timeZone?: string): string;
|
|
74
|
-
/**
|
|
75
|
-
* Sort key for "which pending run of this job is the newest".
|
|
76
|
-
*
|
|
77
|
-
* A run with NO timestamp must sort LOWEST, never highest. Falling back to the
|
|
78
|
-
* messageId was a real bug: an id like `jobrun-…` sorts above any ISO timestamp
|
|
79
|
-
* (letters beat digits), so a run missing `firedAt` would win as "newest" and
|
|
80
|
-
* supersede a genuinely newer run — the newer work would be skipped and the
|
|
81
|
-
* older one would run.
|
|
82
|
-
*/
|
|
83
|
-
export declare function jobRunOrderKey(item: InboxItem): string;
|
|
84
|
-
/** The disposition reported for an older pending run of the same job. */
|
|
85
|
-
export declare const SUPERSEDED_DISPOSITION = "a newer pending run of this job ran instead (the computer was asleep through several fires)";
|
|
86
|
-
/**
|
|
87
|
-
* Decide which pending job runs to actually run. `handled` maps jobId to the
|
|
88
|
-
* newest run key this process has already picked up; it is UPDATED in place so
|
|
89
|
-
* a later poll cannot resurrect an older run of a job whose newer run already
|
|
90
|
-
* finished and was acked.
|
|
91
|
-
*
|
|
92
|
-
* Returns the message ids that must NOT be run — they are reported to the
|
|
93
|
-
* cloud as `skipped-precondition` instead.
|
|
94
|
-
*/
|
|
95
|
-
export declare function planJobRuns(items: InboxItem[], handled: Map<string, string>): {
|
|
96
|
-
superseded: Set<string>;
|
|
97
|
-
};
|
|
98
|
-
/**
|
|
99
|
-
* The most run output the cloud keeps (hq-pro-agents jobs/results.ts
|
|
100
|
-
* `MAX_JOB_RUN_OUTPUT_BYTES`). The server bounds it itself; the client sends up
|
|
101
|
-
* to the same bound rather than an arbitrary shorter cut, so a long report is
|
|
102
|
-
* recorded in full wherever the cloud can hold it.
|
|
103
|
-
*/
|
|
104
|
-
export declare const MAX_JOB_RUN_OUTPUT_BYTES: number;
|
|
105
|
-
/** Cut `text` to at most `maxBytes` of UTF-8 without splitting a character. */
|
|
106
|
-
export declare function jobRunOutput(text: string, maxBytes?: number): string;
|
|
107
|
-
/** A saved report body with the run's header taken back off, for the cloud's record. */
|
|
108
|
-
export declare function stripJobHeader(body: string, header: string | undefined): string;
|
|
109
|
-
//# sourceMappingURL=job-run.d.ts.map
|
package/dist/lib/bot/job-run.js
DELETED
|
@@ -1,246 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Scheduled job runs: the third kind of inbox item a bot can be handed.
|
|
3
|
-
*
|
|
4
|
-
* The cloud does all the scheduling. hq-pro-agents fires a job on an
|
|
5
|
-
* EventBridge schedule and writes a DURABLE inbox item for the agent
|
|
6
|
-
* (`channel: "job"`) carrying the job's own prompt. Nothing is scheduled on
|
|
7
|
-
* this computer — there is no crontab, no launchd timer, no local clock.
|
|
8
|
-
*
|
|
9
|
-
* Two rules shape everything here (owner decisions, 2026-09-15):
|
|
10
|
-
*
|
|
11
|
-
* - CATCH-UP, never skip. A run whose `staleAfter` has passed is still run,
|
|
12
|
-
* once, and the bot says in its report that it is a catch-up and names the
|
|
13
|
-
* time the run was originally due. A Mac that was asleep overnight wakes up
|
|
14
|
-
* and does the morning job late rather than silently dropping it.
|
|
15
|
-
* - ONE catch-up per job per wake. If several runs of the SAME job are pending
|
|
16
|
-
* (a long sleep over many fires), only the newest runs; the older ones are
|
|
17
|
-
* reported to the cloud as `skipped-precondition` with a plain disposition,
|
|
18
|
-
* so the job's in-progress flag is released and the history is honest.
|
|
19
|
-
*
|
|
20
|
-
* Everything in this file is pure so the rules are unit-testable.
|
|
21
|
-
*/
|
|
22
|
-
export function isJobItem(item) {
|
|
23
|
-
return item.channel === "job";
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* The job fields of an inbox item, or null when it is not a usable job run.
|
|
27
|
-
* A job item with no jobId or no prompt is nothing the bot can run; the caller
|
|
28
|
-
* acks it rather than looping on it forever.
|
|
29
|
-
*/
|
|
30
|
-
export function readJobRun(item) {
|
|
31
|
-
if (!isJobItem(item))
|
|
32
|
-
return null;
|
|
33
|
-
const jobId = typeof item.jobId === "string" ? item.jobId.trim() : "";
|
|
34
|
-
const prompt = typeof item.prompt === "string" ? item.prompt.trim() : "";
|
|
35
|
-
if (!jobId || !prompt)
|
|
36
|
-
return null;
|
|
37
|
-
return {
|
|
38
|
-
jobId,
|
|
39
|
-
prompt,
|
|
40
|
-
...(item.context !== undefined && item.context !== null ? { context: item.context } : {}),
|
|
41
|
-
...(typeof item.script === "string" && item.script.trim() ? { script: item.script } : {}),
|
|
42
|
-
...(typeof item.firedAt === "string" && item.firedAt.trim() ? { firedAt: item.firedAt.trim() } : {}),
|
|
43
|
-
...(typeof item.staleAfter === "string" && item.staleAfter.trim() ? { staleAfter: item.staleAfter.trim() } : {}),
|
|
44
|
-
...(typeof item.requestId === "string" && item.requestId.trim() ? { requestId: item.requestId.trim() } : {}),
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
/** The run's extra context as text for the turn, or null when there is none. */
|
|
48
|
-
export function jobContextText(context) {
|
|
49
|
-
if (context === undefined || context === null)
|
|
50
|
-
return null;
|
|
51
|
-
if (typeof context === "string")
|
|
52
|
-
return context.trim() || null;
|
|
53
|
-
try {
|
|
54
|
-
const keys = Object.keys(context);
|
|
55
|
-
if (keys.length === 0)
|
|
56
|
-
return null;
|
|
57
|
-
return JSON.stringify(context, null, 2);
|
|
58
|
-
}
|
|
59
|
-
catch {
|
|
60
|
-
return null;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
/** The zone this computer is in — where the owner scheduled the job. */
|
|
64
|
-
export function machineTimeZone() {
|
|
65
|
-
try {
|
|
66
|
-
return Intl.DateTimeFormat().resolvedOptions().timeZone || "UTC";
|
|
67
|
-
}
|
|
68
|
-
catch {
|
|
69
|
-
return "UTC";
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* A readable instant for a person: "2026-09-15 09:00 EDT".
|
|
74
|
-
*
|
|
75
|
-
* Rendered in the OWNER's zone, not UTC. Schedules are created in the machine's
|
|
76
|
-
* zone ("every weekday at 9am" means 9am where the owner lives), so reporting
|
|
77
|
-
* the same run as "due 13:00 UTC" reads as the wrong time to the only person
|
|
78
|
-
* who sees it. The format is fixed (en-CA + explicit parts) rather than
|
|
79
|
-
* locale-default, so the bot reads the same on every machine and the output is
|
|
80
|
-
* testable.
|
|
81
|
-
*/
|
|
82
|
-
export function formatJobTime(iso, timeZone = machineTimeZone()) {
|
|
83
|
-
if (!iso)
|
|
84
|
-
return "an unknown time";
|
|
85
|
-
const d = new Date(iso);
|
|
86
|
-
if (Number.isNaN(d.getTime()))
|
|
87
|
-
return iso;
|
|
88
|
-
try {
|
|
89
|
-
const parts = new Intl.DateTimeFormat("en-CA", {
|
|
90
|
-
timeZone,
|
|
91
|
-
year: "numeric",
|
|
92
|
-
month: "2-digit",
|
|
93
|
-
day: "2-digit",
|
|
94
|
-
hour: "2-digit",
|
|
95
|
-
minute: "2-digit",
|
|
96
|
-
hour12: false,
|
|
97
|
-
timeZoneName: "short",
|
|
98
|
-
}).formatToParts(d);
|
|
99
|
-
const get = (type) => parts.find((p) => p.type === type)?.value ?? "";
|
|
100
|
-
const [year, month, day, hour, minute, zone] = [
|
|
101
|
-
get("year"),
|
|
102
|
-
get("month"),
|
|
103
|
-
get("day"),
|
|
104
|
-
get("hour"),
|
|
105
|
-
get("minute"),
|
|
106
|
-
get("timeZoneName"),
|
|
107
|
-
];
|
|
108
|
-
if (!year || !month || !day || !hour || !minute)
|
|
109
|
-
throw new Error("incomplete");
|
|
110
|
-
// Intl renders midnight as "24" in some hourCycles; normalise to 00.
|
|
111
|
-
const h = hour === "24" ? "00" : hour;
|
|
112
|
-
return `${year}-${month}-${day} ${h}:${minute}${zone ? ` ${zone}` : ""}`;
|
|
113
|
-
}
|
|
114
|
-
catch {
|
|
115
|
-
return `${d.toISOString().slice(0, 16).replace("T", " ")} UTC`;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
/** True when the delivery deadline has passed: this run is late, not skipped. */
|
|
119
|
-
export function isCatchUpRun(job, now) {
|
|
120
|
-
if (!job.staleAfter)
|
|
121
|
-
return false;
|
|
122
|
-
const deadline = new Date(job.staleAfter);
|
|
123
|
-
if (Number.isNaN(deadline.getTime()))
|
|
124
|
-
return false;
|
|
125
|
-
return now.getTime() > deadline.getTime();
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* The user turn for a fired job. It says plainly that this is a scheduled run
|
|
129
|
-
* so the model does not answer as if a person had just spoken, and (for a late
|
|
130
|
-
* run) that it is a catch-up, naming the time the run was originally due.
|
|
131
|
-
*/
|
|
132
|
-
export function buildJobTurnPrompt(job, opts) {
|
|
133
|
-
const catchUp = isCatchUpRun(job, opts.now);
|
|
134
|
-
const due = formatJobTime(job.firedAt, opts.timeZone);
|
|
135
|
-
const lines = [];
|
|
136
|
-
// The due time is stated EXACTLY once: in the late sentence for a catch-up,
|
|
137
|
-
// in the opening sentence otherwise. Saying it twice reads as two times.
|
|
138
|
-
lines.push(`[Scheduled job · ${job.jobId}]`);
|
|
139
|
-
lines.push(`This is a scheduled run that fired on its own${catchUp ? "" : `, due at ${due}`}. Nobody just sent you a ` +
|
|
140
|
-
"message and nobody is waiting in a chat. Do the work described below, then finish with a short " +
|
|
141
|
-
"plain-language report of what you did and what you found — that report is what your owner reads.");
|
|
142
|
-
if (catchUp) {
|
|
143
|
-
lines.push(`This run is late: it was due at ${due} and is only running now because this computer was asleep ` +
|
|
144
|
-
"or switched off. Do it as a catch-up, skip anything that no longer makes sense at this hour, " +
|
|
145
|
-
"and say in your report that it ran late.");
|
|
146
|
-
}
|
|
147
|
-
const body = [lines.join("\n"), job.prompt];
|
|
148
|
-
const context = jobContextText(job.context);
|
|
149
|
-
if (context)
|
|
150
|
-
body.push(`Extra context for this run:\n${context}`);
|
|
151
|
-
return body.join("\n\n");
|
|
152
|
-
}
|
|
153
|
-
/**
|
|
154
|
-
* The line the bot's DM report starts with, so the owner sees at a glance that
|
|
155
|
-
* this is a scheduled run and not a reply to something they said.
|
|
156
|
-
*/
|
|
157
|
-
export function jobReportHeader(job, catchUp, timeZone) {
|
|
158
|
-
const base = `⏰ Scheduled job \`${job.jobId}\``;
|
|
159
|
-
return catchUp
|
|
160
|
-
? `${base} — catch-up for the run due ${formatJobTime(job.firedAt, timeZone)}\n\n`
|
|
161
|
-
: `${base}\n\n`;
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Sort key for "which pending run of this job is the newest".
|
|
165
|
-
*
|
|
166
|
-
* A run with NO timestamp must sort LOWEST, never highest. Falling back to the
|
|
167
|
-
* messageId was a real bug: an id like `jobrun-…` sorts above any ISO timestamp
|
|
168
|
-
* (letters beat digits), so a run missing `firedAt` would win as "newest" and
|
|
169
|
-
* supersede a genuinely newer run — the newer work would be skipped and the
|
|
170
|
-
* older one would run.
|
|
171
|
-
*/
|
|
172
|
-
export function jobRunOrderKey(item) {
|
|
173
|
-
const fired = typeof item.firedAt === "string" ? item.firedAt.trim() : "";
|
|
174
|
-
if (fired)
|
|
175
|
-
return fired;
|
|
176
|
-
const received = typeof item.receivedAt === "string" ? item.receivedAt.trim() : "";
|
|
177
|
-
if (received)
|
|
178
|
-
return received;
|
|
179
|
-
return "";
|
|
180
|
-
}
|
|
181
|
-
/** The disposition reported for an older pending run of the same job. */
|
|
182
|
-
export const SUPERSEDED_DISPOSITION = "a newer pending run of this job ran instead (the computer was asleep through several fires)";
|
|
183
|
-
/**
|
|
184
|
-
* Decide which pending job runs to actually run. `handled` maps jobId to the
|
|
185
|
-
* newest run key this process has already picked up; it is UPDATED in place so
|
|
186
|
-
* a later poll cannot resurrect an older run of a job whose newer run already
|
|
187
|
-
* finished and was acked.
|
|
188
|
-
*
|
|
189
|
-
* Returns the message ids that must NOT be run — they are reported to the
|
|
190
|
-
* cloud as `skipped-precondition` instead.
|
|
191
|
-
*/
|
|
192
|
-
export function planJobRuns(items, handled) {
|
|
193
|
-
const superseded = new Set();
|
|
194
|
-
const byJob = new Map();
|
|
195
|
-
for (const item of items) {
|
|
196
|
-
const job = readJobRun(item);
|
|
197
|
-
if (!job)
|
|
198
|
-
continue;
|
|
199
|
-
const list = byJob.get(job.jobId);
|
|
200
|
-
if (list)
|
|
201
|
-
list.push(item);
|
|
202
|
-
else
|
|
203
|
-
byJob.set(job.jobId, [item]);
|
|
204
|
-
}
|
|
205
|
-
for (const [jobId, runs] of byJob) {
|
|
206
|
-
let newest = handled.get(jobId) ?? "";
|
|
207
|
-
for (const run of runs) {
|
|
208
|
-
const key = jobRunOrderKey(run);
|
|
209
|
-
if (key > newest)
|
|
210
|
-
newest = key;
|
|
211
|
-
}
|
|
212
|
-
handled.set(jobId, newest);
|
|
213
|
-
let keptNewest = false;
|
|
214
|
-
for (const run of runs) {
|
|
215
|
-
if (jobRunOrderKey(run) === newest && !keptNewest) {
|
|
216
|
-
keptNewest = true;
|
|
217
|
-
continue;
|
|
218
|
-
}
|
|
219
|
-
superseded.add(run.messageId);
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
return { superseded };
|
|
223
|
-
}
|
|
224
|
-
/**
|
|
225
|
-
* The most run output the cloud keeps (hq-pro-agents jobs/results.ts
|
|
226
|
-
* `MAX_JOB_RUN_OUTPUT_BYTES`). The server bounds it itself; the client sends up
|
|
227
|
-
* to the same bound rather than an arbitrary shorter cut, so a long report is
|
|
228
|
-
* recorded in full wherever the cloud can hold it.
|
|
229
|
-
*/
|
|
230
|
-
export const MAX_JOB_RUN_OUTPUT_BYTES = 64 * 1024;
|
|
231
|
-
/** Cut `text` to at most `maxBytes` of UTF-8 without splitting a character. */
|
|
232
|
-
export function jobRunOutput(text, maxBytes = MAX_JOB_RUN_OUTPUT_BYTES) {
|
|
233
|
-
const bytes = Buffer.from(text, "utf8");
|
|
234
|
-
if (bytes.byteLength <= maxBytes)
|
|
235
|
-
return text;
|
|
236
|
-
let end = maxBytes;
|
|
237
|
-
// Step back over UTF-8 continuation bytes (10xxxxxx) to a character boundary.
|
|
238
|
-
while (end > 0 && (bytes[end] & 0xc0) === 0x80)
|
|
239
|
-
end -= 1;
|
|
240
|
-
return bytes.subarray(0, end).toString("utf8");
|
|
241
|
-
}
|
|
242
|
-
/** A saved report body with the run's header taken back off, for the cloud's record. */
|
|
243
|
-
export function stripJobHeader(body, header) {
|
|
244
|
-
return header && body.startsWith(header) ? body.slice(header.length) : body;
|
|
245
|
-
}
|
|
246
|
-
//# sourceMappingURL=job-run.js.map
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `localConfig` — the non-secret shape of a bot's bot.json that the cloud
|
|
3
|
-
* stores alongside the agent record, so a reinstall (or a second Mac) can
|
|
4
|
-
* rebuild the same bot instead of re-creating it.
|
|
5
|
-
*
|
|
6
|
-
* The server treats it as opaque, caps it at 8 KB, and refuses any value that
|
|
7
|
-
* carries a key named secret/token/password/creds (case-insensitive). The CLI
|
|
8
|
-
* therefore builds it from an explicit allow-list of bot.json fields and
|
|
9
|
-
* checks the result before it leaves this machine: a bot's machine credentials
|
|
10
|
-
* live only in ~/.hq/bots/<name>/machine-creds.json and never travel here.
|
|
11
|
-
*/
|
|
12
|
-
import { type BotConfig, type BotKind, type BotMemoryMode, type BotRuntimeId } from "./config.js";
|
|
13
|
-
/**
|
|
14
|
-
* Everything needed to rebuild a bot here, minus anything secret. Written on
|
|
15
|
-
* create, returned by `GET /v1/agents/mine?local=1` and by the credential
|
|
16
|
-
* re-issue route.
|
|
17
|
-
*/
|
|
18
|
-
export interface BotLocalConfig {
|
|
19
|
-
v: 1;
|
|
20
|
-
runtime?: BotRuntimeId;
|
|
21
|
-
/** "scaffold" (its own personal/workers/<name>) or "worker" (an HQ worker). */
|
|
22
|
-
workerSource?: "scaffold" | "worker";
|
|
23
|
-
workerId?: string;
|
|
24
|
-
companySlug?: string;
|
|
25
|
-
model?: string;
|
|
26
|
-
effort?: string;
|
|
27
|
-
kind?: BotKind;
|
|
28
|
-
/** Company bots: the company slugs it is a member of. */
|
|
29
|
-
companies?: string[];
|
|
30
|
-
autoApprove?: boolean;
|
|
31
|
-
/** Only the memory *kind* travels — never an absolute path from another Mac. */
|
|
32
|
-
memory?: BotMemoryMode;
|
|
33
|
-
displayName?: string;
|
|
34
|
-
intro?: string;
|
|
35
|
-
kickoff?: string;
|
|
36
|
-
}
|
|
37
|
-
/** Walks a value and throws when any key looks like it could carry a secret. */
|
|
38
|
-
export declare function assertNoSecretKeys(value: unknown, path?: string): void;
|
|
39
|
-
/** The bot.json fields a localConfig is built from — nothing else is read. */
|
|
40
|
-
export type BotLocalConfigSource = Pick<BotConfig, "runtime" | "workerSource" | "workerId" | "companySlug" | "model" | "effort" | "kind" | "companies" | "autoApprove" | "memoryDir" | "displayName" | "intro" | "kickoff">;
|
|
41
|
-
/**
|
|
42
|
-
* The non-secret settings of a bot, for the cloud to keep. Absolute paths
|
|
43
|
-
* (hqRoot, memoryDir, workerDir) are deliberately left out: they belong to the
|
|
44
|
-
* machine the bot was created on, and a restore rebuilds them locally.
|
|
45
|
-
*/
|
|
46
|
-
export declare function buildBotLocalConfig(config: BotLocalConfigSource): BotLocalConfig;
|
|
47
|
-
/**
|
|
48
|
-
* Tolerant read of whatever the server handed back: an older bot has no
|
|
49
|
-
* localConfig at all, and a field HQ no longer understands is dropped rather
|
|
50
|
-
* than losing the bot. Returns null when nothing usable was stored.
|
|
51
|
-
*/
|
|
52
|
-
export declare function parseBotLocalConfig(value: unknown): BotLocalConfig | null;
|
|
53
|
-
/** What a restore falls back to for a bot created before localConfig existed. */
|
|
54
|
-
export declare const BOT_RESTORE_DEFAULTS: {
|
|
55
|
-
runtime: BotRuntimeId;
|
|
56
|
-
memory: BotMemoryMode;
|
|
57
|
-
kind: BotKind;
|
|
58
|
-
};
|
|
59
|
-
/** Human summary of the settings a restore is about to apply. */
|
|
60
|
-
export declare function describeBotLocalConfig(local: BotLocalConfig | null): string;
|
|
61
|
-
//# sourceMappingURL=local-config.d.ts.map
|