@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,463 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Document size cap for the local HQ search index.
|
|
3
|
-
*
|
|
4
|
-
* WHY THIS EXISTS
|
|
5
|
-
*
|
|
6
|
-
* qmd indexes a collection by globbing its mask and reading every match — there
|
|
7
|
-
* is no size check anywhere on that path (`reindexCollection` in @tobilu/qmd
|
|
8
|
-
* 2.5.3 goes straight from the glob to `readFileSync`). HQ's project
|
|
9
|
-
* collections are registered with a `md`/`json` mask, which sweeps in build
|
|
10
|
-
* artifacts nobody would ever search as prose: browser trace dumps, perf
|
|
11
|
-
* captures, scraped datasets, lockfiles.
|
|
12
|
-
*
|
|
13
|
-
* Embedding is the consumer that makes this expensive. `qmd embed` runs under a
|
|
14
|
-
* hard 30-minute session cap; once the corpus stops fitting inside that budget
|
|
15
|
-
* the run aborts and discards its work, so an oversized corpus does not merely
|
|
16
|
-
* cost CPU — it stops the index ever converging.
|
|
17
|
-
*
|
|
18
|
-
* HOW IT WORKS
|
|
19
|
-
*
|
|
20
|
-
* qmd has no size option, but it does honour a per-collection `ignore` list of
|
|
21
|
-
* globs, applied at glob time, so an ignored file is never read, never chunked
|
|
22
|
-
* and never embedded. That list is not reachable through `qmd collection add`
|
|
23
|
-
* (there is no flag) and qmd's own YAML writer drops the key — but qmd's READER
|
|
24
|
-
* passes the parsed YAML collection object straight through to the store, and
|
|
25
|
-
* `syncConfigToDb` treats external config as authoritative ("External config
|
|
26
|
-
* always wins"). Writing an `ignore:` key into qmd's `index.yml` is therefore a
|
|
27
|
-
* durable way to express the cap, and it survives qmd's config resync.
|
|
28
|
-
*
|
|
29
|
-
* So: resolve the configured cap, walk each collection the way qmd would, and
|
|
30
|
-
* rewrite its `ignore` list to the files currently over the cap. The list is
|
|
31
|
-
* recomputed every run, so a file that shrinks or is deleted stops being
|
|
32
|
-
* ignored with no manual cleanup.
|
|
33
|
-
*
|
|
34
|
-
* OWNERSHIP
|
|
35
|
-
*
|
|
36
|
-
* The `ignore` list is shared with whatever an operator hand-wrote into
|
|
37
|
-
* `index.yml`. We therefore never treat "looks like our output" as proof of
|
|
38
|
-
* provenance: entries this module INTRODUCED are recorded in
|
|
39
|
-
* `<hqRoot>/.hq/index-size-ignores.json`, and only entries named in that record
|
|
40
|
-
* are removed on a later run. Anything else in `ignore` is left untouched.
|
|
41
|
-
*
|
|
42
|
-
* "Introduced" is doing real work in that sentence. An operator who already
|
|
43
|
-
* wrote `big.md` by hand keeps owning it even when our scan independently finds
|
|
44
|
-
* the same file oversized, so lowering the cap later can never delete their
|
|
45
|
-
* line. The record is also written BEFORE the config: an entry whose provenance
|
|
46
|
-
* failed to persist would read as foreign forever, which is to say permanently
|
|
47
|
-
* un-removable, and skipping the change is the cheaper mistake.
|
|
48
|
-
*/
|
|
49
|
-
import * as fs from "node:fs";
|
|
50
|
-
import * as path from "node:path";
|
|
51
|
-
import YAML from "js-yaml";
|
|
52
|
-
/**
|
|
53
|
-
* Default cap: 100 KB. Chosen against a real HQ corpus where the median indexed
|
|
54
|
-
* document is ~1.2 KB — a 100 KB document is three orders of magnitude off the
|
|
55
|
-
* median and is, in practice, always generated output rather than prose.
|
|
56
|
-
*/
|
|
57
|
-
export const DEFAULT_INDEX_MAX_DOC_BYTES = 100 * 1024;
|
|
58
|
-
/**
|
|
59
|
-
* Directories qmd's own reindex never descends into. Mirrored here so our scan
|
|
60
|
-
* sees exactly the files qmd would index — an ignore entry for a file qmd never
|
|
61
|
-
* reads is harmless, but it makes the generated list misleading to read.
|
|
62
|
-
*/
|
|
63
|
-
const EXCLUDED_DIRECTORIES = new Set([
|
|
64
|
-
"node_modules",
|
|
65
|
-
".git",
|
|
66
|
-
".cache",
|
|
67
|
-
"vendor",
|
|
68
|
-
"dist",
|
|
69
|
-
"build",
|
|
70
|
-
]);
|
|
71
|
-
/** Where this module records the ignore entries it generated. */
|
|
72
|
-
function sizeIgnoreRecordPath(hqRoot) {
|
|
73
|
-
return path.join(hqRoot, ".hq", "index-size-ignores.json");
|
|
74
|
-
}
|
|
75
|
-
/** qmd's default index name; the config file and store are both named after it. */
|
|
76
|
-
const QMD_INDEX_NAME = "index";
|
|
77
|
-
/**
|
|
78
|
-
* qmd's config file, resolved the way qmd's own CLI resolves it.
|
|
79
|
-
*
|
|
80
|
-
* Mirrors `dist/cli/qmd.js`: with no `--index` flag, a project-local
|
|
81
|
-
* `.qmd/index.yaml` (then `.qmd/index.yml`), found by walking up from the
|
|
82
|
-
* directory qmd runs in, overrides the global config entirely. Otherwise the
|
|
83
|
-
* global ladder applies: `QMD_CONFIG_DIR`, then `XDG_CONFIG_HOME/qmd`, then
|
|
84
|
-
* `$HOME/.config/qmd`.
|
|
85
|
-
*
|
|
86
|
-
* Getting this wrong fails silently in the worst way: we would write a correct
|
|
87
|
-
* `ignore` list into a file qmd never reads, every test asserting the key would
|
|
88
|
-
* pass, and nothing would actually be skipped. A `$HOME`-only version of this
|
|
89
|
-
* function shipped to CI and did exactly that, because GitHub runners set
|
|
90
|
-
* `XDG_CONFIG_HOME` — the e2e positive control is what caught it.
|
|
91
|
-
*
|
|
92
|
-
* Returns undefined when no rung resolves, which callers treat as "no config to
|
|
93
|
-
* update" rather than inventing a path.
|
|
94
|
-
*/
|
|
95
|
-
export function resolveQmdConfigPath(opts) {
|
|
96
|
-
const exists = opts.existsFile ?? fs.existsSync;
|
|
97
|
-
if (opts.startDir) {
|
|
98
|
-
const local = findLocalQmdConfig(path.resolve(opts.startDir), exists);
|
|
99
|
-
if (local)
|
|
100
|
-
return local;
|
|
101
|
-
}
|
|
102
|
-
const configDir = opts.env.QMD_CONFIG_DIR?.trim();
|
|
103
|
-
if (configDir)
|
|
104
|
-
return path.join(configDir, `${QMD_INDEX_NAME}.yml`);
|
|
105
|
-
const xdg = opts.env.XDG_CONFIG_HOME?.trim();
|
|
106
|
-
if (xdg)
|
|
107
|
-
return path.join(xdg, "qmd", `${QMD_INDEX_NAME}.yml`);
|
|
108
|
-
const home = opts.env.HOME?.trim();
|
|
109
|
-
if (home)
|
|
110
|
-
return path.join(home, ".config", "qmd", `${QMD_INDEX_NAME}.yml`);
|
|
111
|
-
return undefined;
|
|
112
|
-
}
|
|
113
|
-
/** Nearest `.qmd/index.{yaml,yml}` at or above `startDir`, matching qmd's walk. */
|
|
114
|
-
function findLocalQmdConfig(startDir, exists) {
|
|
115
|
-
let dir = startDir;
|
|
116
|
-
for (;;) {
|
|
117
|
-
for (const name of ["index.yaml", "index.yml"]) {
|
|
118
|
-
const candidate = path.join(dir, ".qmd", name);
|
|
119
|
-
if (exists(candidate))
|
|
120
|
-
return candidate;
|
|
121
|
-
}
|
|
122
|
-
const parent = path.dirname(dir);
|
|
123
|
-
if (parent === dir)
|
|
124
|
-
return undefined;
|
|
125
|
-
dir = parent;
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
/**
|
|
129
|
-
* Resolve the per-document size cap in bytes. Precedence, first match wins:
|
|
130
|
-
*
|
|
131
|
-
* 1. `HQ_INDEX_MAX_DOC_BYTES` env var (integer bytes),
|
|
132
|
-
* 2. `<hqRoot>/.hq/config.json` → `indexMaxDocBytes` (integer bytes),
|
|
133
|
-
* 3. `DEFAULT_INDEX_MAX_DOC_BYTES` (100 KB).
|
|
134
|
-
*
|
|
135
|
-
* `0` disables the cap — and is honoured rather than ignored, so turning the
|
|
136
|
-
* setting off also clears any ignore entries a previous run wrote.
|
|
137
|
-
*
|
|
138
|
-
* A negative, non-integer or otherwise unparseable override falls through to
|
|
139
|
-
* the next source rather than throwing: this is operator-facing config and a
|
|
140
|
-
* typo must not break an index run.
|
|
141
|
-
*/
|
|
142
|
-
export function resolveIndexMaxDocBytes(opts = {}) {
|
|
143
|
-
const fromEnv = parseNonNegativeInt(opts.envValue !== undefined ? opts.envValue : process.env.HQ_INDEX_MAX_DOC_BYTES);
|
|
144
|
-
if (fromEnv !== null)
|
|
145
|
-
return fromEnv;
|
|
146
|
-
if (opts.hqRoot) {
|
|
147
|
-
const configPath = path.join(opts.hqRoot, ".hq", "config.json");
|
|
148
|
-
const exists = opts.existsFile ?? fs.existsSync;
|
|
149
|
-
const read = opts.readFile ?? ((p) => fs.readFileSync(p, "utf-8"));
|
|
150
|
-
if (exists(configPath)) {
|
|
151
|
-
try {
|
|
152
|
-
const cfg = JSON.parse(read(configPath));
|
|
153
|
-
const fromCfg = parseNonNegativeInt(cfg.indexMaxDocBytes);
|
|
154
|
-
if (fromCfg !== null)
|
|
155
|
-
return fromCfg;
|
|
156
|
-
}
|
|
157
|
-
catch {
|
|
158
|
-
// Malformed config → fall through to the default.
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
return DEFAULT_INDEX_MAX_DOC_BYTES;
|
|
163
|
-
}
|
|
164
|
-
/** A finite, non-negative integer parsed from a string/number, else null. */
|
|
165
|
-
function parseNonNegativeInt(value) {
|
|
166
|
-
if (typeof value === "number") {
|
|
167
|
-
return Number.isInteger(value) && value >= 0 ? value : null;
|
|
168
|
-
}
|
|
169
|
-
if (typeof value !== "string")
|
|
170
|
-
return null;
|
|
171
|
-
const trimmed = value.trim();
|
|
172
|
-
if (!/^\d+$/.test(trimmed))
|
|
173
|
-
return null;
|
|
174
|
-
const n = Number(trimmed);
|
|
175
|
-
return Number.isSafeInteger(n) ? n : null;
|
|
176
|
-
}
|
|
177
|
-
/**
|
|
178
|
-
* Extensions a qmd mask selects, lowercased and without the dot.
|
|
179
|
-
*
|
|
180
|
-
* HQ registers exactly two mask shapes today (see `deriveCollections`), but an
|
|
181
|
-
* operator's own collection may carry anything. An unrecognised mask returns
|
|
182
|
-
* `null`, meaning "match every file" — the cap then applies to the whole
|
|
183
|
-
* collection, which is the safe direction: we may ignore a file qmd would not
|
|
184
|
-
* have indexed (a no-op) rather than miss one it would.
|
|
185
|
-
*/
|
|
186
|
-
export function maskExtensions(mask) {
|
|
187
|
-
const braced = /^\*\*\/\*\.\{([^}]+)\}$/.exec(mask);
|
|
188
|
-
if (braced) {
|
|
189
|
-
return new Set(braced[1].split(",").map((ext) => ext.trim().toLowerCase()).filter(Boolean));
|
|
190
|
-
}
|
|
191
|
-
const single = /^\*\*\/\*\.([A-Za-z0-9]+)$/.exec(mask);
|
|
192
|
-
if (single)
|
|
193
|
-
return new Set([single[1].toLowerCase()]);
|
|
194
|
-
return null;
|
|
195
|
-
}
|
|
196
|
-
const defaultScanIo = {
|
|
197
|
-
readdirSync: (directory) => fs.readdirSync(directory, { withFileTypes: true }),
|
|
198
|
-
statSync: (file) => fs.statSync(file),
|
|
199
|
-
};
|
|
200
|
-
/**
|
|
201
|
-
* Characters picomatch (via fast-glob, which is what qmd globs with) treats as
|
|
202
|
-
* pattern syntax rather than literal text. `^` and `$` are deliberately absent:
|
|
203
|
-
* they are regex syntax, not glob syntax, and escaping them would be a guess.
|
|
204
|
-
*/
|
|
205
|
-
const GLOB_META = /[\\*?[\]{}()!+@|]/g;
|
|
206
|
-
/** Same set, without the `g` flag, so `.test()` carries no `lastIndex` state. */
|
|
207
|
-
const HAS_GLOB_META = /[\\*?[\]{}()!+@|]/;
|
|
208
|
-
/**
|
|
209
|
-
* Escape a relative path so qmd's glob matcher treats it as a literal filename.
|
|
210
|
-
*
|
|
211
|
-
* Without this, a file genuinely named `reports/[final].json` becomes a
|
|
212
|
-
* character class: it fails to ignore itself (so the oversized document is
|
|
213
|
-
* still indexed) while matching unrelated paths like `reports/f.json` (so a
|
|
214
|
-
* small document silently disappears from search). Both halves of that are
|
|
215
|
-
* worse than not having the cap.
|
|
216
|
-
*/
|
|
217
|
-
export function escapeGlobLiteral(relativePath) {
|
|
218
|
-
return relativePath.replace(GLOB_META, (character) => `\\${character}`);
|
|
219
|
-
}
|
|
220
|
-
/**
|
|
221
|
-
* Walk `collectionPath` for files the mask selects whose size exceeds `maxBytes`.
|
|
222
|
-
*
|
|
223
|
-
* Mirrors qmd's own walk: excluded directories are skipped, dot-prefixed files
|
|
224
|
-
* and directories are skipped at every level, and symlinks are never followed.
|
|
225
|
-
*
|
|
226
|
-
* `prunePrefixes` carries directory prefixes already excluded by the
|
|
227
|
-
* collection's own ignore globs. Descending into them would burn exactly the
|
|
228
|
-
* CPU this cap exists to save, and qmd is not going to read them anyway.
|
|
229
|
-
*
|
|
230
|
-
* A failure to read a directory or stat a file sets `complete = false` rather
|
|
231
|
-
* than being silently treated as "not oversized". The difference matters: an
|
|
232
|
-
* unreadable file that is still on disk must keep its existing ignore entry,
|
|
233
|
-
* because dropping it would let the next update read the very document the cap
|
|
234
|
-
* was protecting against.
|
|
235
|
-
*/
|
|
236
|
-
export function findOversizedFiles(collectionPath, mask, maxBytes, io = defaultScanIo, prunePrefixes = []) {
|
|
237
|
-
const evaluated = new Set();
|
|
238
|
-
if (maxBytes <= 0)
|
|
239
|
-
return { oversized: [], evaluated, complete: true };
|
|
240
|
-
const extensions = maskExtensions(mask);
|
|
241
|
-
const pruned = new Set(prunePrefixes);
|
|
242
|
-
const found = [];
|
|
243
|
-
let complete = true;
|
|
244
|
-
const walk = (directory, relative) => {
|
|
245
|
-
let entries;
|
|
246
|
-
try {
|
|
247
|
-
entries = io.readdirSync(directory);
|
|
248
|
-
}
|
|
249
|
-
catch {
|
|
250
|
-
complete = false; // A gap, not an absence.
|
|
251
|
-
return;
|
|
252
|
-
}
|
|
253
|
-
for (const entry of entries) {
|
|
254
|
-
if (entry.name.startsWith("."))
|
|
255
|
-
continue;
|
|
256
|
-
const childRelative = relative ? `${relative}/${entry.name}` : entry.name;
|
|
257
|
-
if (entry.isDirectory()) {
|
|
258
|
-
if (EXCLUDED_DIRECTORIES.has(entry.name))
|
|
259
|
-
continue;
|
|
260
|
-
if (pruned.has(childRelative))
|
|
261
|
-
continue;
|
|
262
|
-
walk(path.join(directory, entry.name), childRelative);
|
|
263
|
-
continue;
|
|
264
|
-
}
|
|
265
|
-
if (!entry.isFile())
|
|
266
|
-
continue;
|
|
267
|
-
if (extensions) {
|
|
268
|
-
const ext = path.extname(entry.name).slice(1).toLowerCase();
|
|
269
|
-
if (!extensions.has(ext))
|
|
270
|
-
continue;
|
|
271
|
-
}
|
|
272
|
-
const literal = escapeGlobLiteral(childRelative);
|
|
273
|
-
try {
|
|
274
|
-
const { size } = io.statSync(path.join(directory, entry.name));
|
|
275
|
-
evaluated.add(literal);
|
|
276
|
-
if (size > maxBytes)
|
|
277
|
-
found.push(literal);
|
|
278
|
-
}
|
|
279
|
-
catch {
|
|
280
|
-
complete = false; // Unreadable now; it may still be oversized.
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
};
|
|
284
|
-
walk(collectionPath, "");
|
|
285
|
-
return {
|
|
286
|
-
oversized: found.sort((left, right) => left.localeCompare(right)),
|
|
287
|
-
evaluated,
|
|
288
|
-
complete,
|
|
289
|
-
};
|
|
290
|
-
}
|
|
291
|
-
/**
|
|
292
|
-
* Directory prefixes an operator's own ignore globs already exclude.
|
|
293
|
-
*
|
|
294
|
-
* Only the `dir/**` and `dir/**\/*` shapes are recognised. Any other glob stays
|
|
295
|
-
* unpruned, which costs a walk we did not need but never changes the result —
|
|
296
|
-
* the conservative direction for a heuristic whose only job is saving work.
|
|
297
|
-
*/
|
|
298
|
-
export function prunablePrefixes(patterns) {
|
|
299
|
-
const prefixes = [];
|
|
300
|
-
for (const pattern of patterns) {
|
|
301
|
-
const match = /^(.+?)\/\*\*(?:\/\*)?$/.exec(pattern);
|
|
302
|
-
if (match && !HAS_GLOB_META.test(match[1]))
|
|
303
|
-
prefixes.push(match[1]);
|
|
304
|
-
}
|
|
305
|
-
return prefixes;
|
|
306
|
-
}
|
|
307
|
-
/** How many times to re-read and re-merge when the config moves under us. */
|
|
308
|
-
const CONFIG_WRITE_ATTEMPTS = 3;
|
|
309
|
-
/**
|
|
310
|
-
* Apply the size cap to every collection in qmd's config.
|
|
311
|
-
*
|
|
312
|
-
* Runs BEFORE `qmd update`, so the update that follows never reads an oversized
|
|
313
|
-
* file. Rewrites the config only when the resulting ignore lists differ from
|
|
314
|
-
* what is already on disk, so a steady-state HQ does no config churn.
|
|
315
|
-
*
|
|
316
|
-
* ## Concurrency
|
|
317
|
-
*
|
|
318
|
-
* qmd's config is shared with `qmd collection add` and with any other HQ
|
|
319
|
-
* process running an index pass. A naive read, long scan, then full-file dump
|
|
320
|
-
* would erase a collection registered while the scan was running.
|
|
321
|
-
*
|
|
322
|
-
* The order here is read, scan, RE-READ, then write. That re-read is the part
|
|
323
|
-
* that matters: the scan is slow (it walks every collection), so the config can
|
|
324
|
-
* easily move while it runs, and comparing the fresh bytes against the ones the
|
|
325
|
-
* merge was computed from catches exactly that. On a mismatch the whole merge is
|
|
326
|
-
* recomputed against the newer config, up to {@link CONFIG_WRITE_ATTEMPTS}
|
|
327
|
-
* times, after which we decline to write rather than guess. The write itself is
|
|
328
|
-
* a temp-file rename, so no reader ever sees a half-written config.
|
|
329
|
-
*
|
|
330
|
-
* This narrows the window to the microseconds between the re-read and the
|
|
331
|
-
* rename; it is not a mutex. A writer that lands inside that gap still loses.
|
|
332
|
-
* A lockfile would not close it either, because qmd's own writers would not
|
|
333
|
-
* take the lock, so the residual race is documented rather than papered over.
|
|
334
|
-
*/
|
|
335
|
-
export function applyIndexSizeLimit(hqRoot, options = {}) {
|
|
336
|
-
const env = options.env ?? process.env;
|
|
337
|
-
const maxBytes = options.maxBytes ?? resolveIndexMaxDocBytes({ hqRoot, envValue: env.HQ_INDEX_MAX_DOC_BYTES });
|
|
338
|
-
const exists = options.existsFile ?? fs.existsSync;
|
|
339
|
-
const read = options.readFile ?? ((p) => fs.readFileSync(p, "utf-8"));
|
|
340
|
-
const write = options.writeFile ?? atomicWrite;
|
|
341
|
-
const mkdir = options.mkdir ?? ((p) => fs.mkdirSync(p, { recursive: true }));
|
|
342
|
-
const configPath = resolveQmdConfigPath({ env, startDir: hqRoot, existsFile: exists });
|
|
343
|
-
if (!configPath)
|
|
344
|
-
return { maxBytes, collections: [], changed: false };
|
|
345
|
-
if (!exists(configPath))
|
|
346
|
-
return { maxBytes, configPath, collections: [], changed: false };
|
|
347
|
-
const previouslyOwned = readIgnoreRecord(hqRoot, { exists, read });
|
|
348
|
-
for (let attempt = 0; attempt < CONFIG_WRITE_ATTEMPTS; attempt++) {
|
|
349
|
-
let original;
|
|
350
|
-
let config;
|
|
351
|
-
try {
|
|
352
|
-
original = read(configPath);
|
|
353
|
-
config = YAML.load(original) ?? {};
|
|
354
|
-
}
|
|
355
|
-
catch {
|
|
356
|
-
// A config we cannot parse is a config we must not rewrite.
|
|
357
|
-
return { maxBytes, configPath, collections: [], changed: false };
|
|
358
|
-
}
|
|
359
|
-
const collections = config.collections;
|
|
360
|
-
if (!collections || typeof collections !== "object") {
|
|
361
|
-
return { maxBytes, configPath, collections: [], changed: false };
|
|
362
|
-
}
|
|
363
|
-
const nowOwned = {};
|
|
364
|
-
const capped = [];
|
|
365
|
-
for (const [name, entry] of Object.entries(collections)) {
|
|
366
|
-
if (!entry || typeof entry !== "object")
|
|
367
|
-
continue;
|
|
368
|
-
const collectionPath = typeof entry.path === "string" ? entry.path : undefined;
|
|
369
|
-
if (!collectionPath)
|
|
370
|
-
continue;
|
|
371
|
-
const mask = typeof entry.pattern === "string" ? entry.pattern : "**/*.md";
|
|
372
|
-
const existing = Array.isArray(entry.ignore)
|
|
373
|
-
? entry.ignore.filter((value) => typeof value === "string")
|
|
374
|
-
: [];
|
|
375
|
-
// Provenance: an entry is ours only if a previous run recorded writing it.
|
|
376
|
-
const ours = new Set(previouslyOwned[name] ?? []);
|
|
377
|
-
const foreign = existing.filter((value) => !ours.has(value));
|
|
378
|
-
const foreignSet = new Set(foreign);
|
|
379
|
-
const scan = exists(collectionPath)
|
|
380
|
-
? findOversizedFiles(collectionPath, mask, maxBytes, options.scanIo, prunablePrefixes(foreign))
|
|
381
|
-
: { oversized: [], evaluated: new Set(), complete: false };
|
|
382
|
-
// Keep an owned entry the scan could not positively re-evaluate. Dropping
|
|
383
|
-
// it on an incomplete walk would silently re-expose an oversized file.
|
|
384
|
-
const unverified = scan.complete
|
|
385
|
-
? []
|
|
386
|
-
: [...ours].filter((value) => !scan.evaluated.has(value));
|
|
387
|
-
const mine = [...new Set([...scan.oversized, ...unverified])]
|
|
388
|
-
// Never claim an entry the operator already had: if we recorded it as
|
|
389
|
-
// ours, a later shrink would delete their line, not ours.
|
|
390
|
-
.filter((value) => !foreignSet.has(value))
|
|
391
|
-
.sort((left, right) => left.localeCompare(right));
|
|
392
|
-
const merged = [...new Set([...foreign, ...scan.oversized, ...unverified])].sort((left, right) => left.localeCompare(right));
|
|
393
|
-
if (merged.length > 0)
|
|
394
|
-
entry.ignore = merged;
|
|
395
|
-
else
|
|
396
|
-
delete entry.ignore;
|
|
397
|
-
if (mine.length > 0)
|
|
398
|
-
nowOwned[name] = mine;
|
|
399
|
-
if (scan.oversized.length > 0)
|
|
400
|
-
capped.push({ name, ignored: scan.oversized });
|
|
401
|
-
}
|
|
402
|
-
const updated = YAML.dump(config, { lineWidth: 0 });
|
|
403
|
-
if (updated === original)
|
|
404
|
-
return { maxBytes, configPath, collections: capped, changed: false };
|
|
405
|
-
// Provenance first. A config mutation whose record is lost leaves entries
|
|
406
|
-
// that look foreign forever, so neither a shrinking file nor `0` can clear
|
|
407
|
-
// them. Better to skip the mutation than to strand it.
|
|
408
|
-
if (!writeIgnoreRecord(hqRoot, nowOwned, { mkdir, write })) {
|
|
409
|
-
return { maxBytes, configPath, collections: capped, changed: false };
|
|
410
|
-
}
|
|
411
|
-
// Re-read immediately before writing: if another writer landed since the
|
|
412
|
-
// read above, recompute against their version rather than erasing it.
|
|
413
|
-
let current;
|
|
414
|
-
try {
|
|
415
|
-
current = read(configPath);
|
|
416
|
-
}
|
|
417
|
-
catch {
|
|
418
|
-
return { maxBytes, configPath, collections: capped, changed: false };
|
|
419
|
-
}
|
|
420
|
-
if (current !== original)
|
|
421
|
-
continue;
|
|
422
|
-
write(configPath, updated);
|
|
423
|
-
return { maxBytes, configPath, collections: capped, changed: true };
|
|
424
|
-
}
|
|
425
|
-
return { maxBytes, configPath, collections: [], changed: false };
|
|
426
|
-
}
|
|
427
|
-
/** Write via temp file + rename, so a concurrent reader never sees a partial config. */
|
|
428
|
-
function atomicWrite(target, contents) {
|
|
429
|
-
const temporary = `${target}.hq-${process.pid}.tmp`;
|
|
430
|
-
fs.writeFileSync(temporary, contents, "utf-8");
|
|
431
|
-
fs.renameSync(temporary, target);
|
|
432
|
-
}
|
|
433
|
-
function readIgnoreRecord(hqRoot, io) {
|
|
434
|
-
const recordPath = sizeIgnoreRecordPath(hqRoot);
|
|
435
|
-
if (!io.exists(recordPath))
|
|
436
|
-
return {};
|
|
437
|
-
try {
|
|
438
|
-
const parsed = JSON.parse(io.read(recordPath));
|
|
439
|
-
const result = {};
|
|
440
|
-
for (const [name, value] of Object.entries(parsed)) {
|
|
441
|
-
if (Array.isArray(value)) {
|
|
442
|
-
result[name] = value.filter((v) => typeof v === "string");
|
|
443
|
-
}
|
|
444
|
-
}
|
|
445
|
-
return result;
|
|
446
|
-
}
|
|
447
|
-
catch {
|
|
448
|
-
return {}; // A corrupt record means we claim nothing, and clobber nothing.
|
|
449
|
-
}
|
|
450
|
-
}
|
|
451
|
-
/** True when the record landed; false tells the caller not to mutate the config. */
|
|
452
|
-
function writeIgnoreRecord(hqRoot, owned, io) {
|
|
453
|
-
const recordPath = sizeIgnoreRecordPath(hqRoot);
|
|
454
|
-
try {
|
|
455
|
-
io.mkdir(path.dirname(recordPath));
|
|
456
|
-
io.write(recordPath, `${JSON.stringify(owned, null, 2)}\n`);
|
|
457
|
-
return true;
|
|
458
|
-
}
|
|
459
|
-
catch {
|
|
460
|
-
return false;
|
|
461
|
-
}
|
|
462
|
-
}
|
|
463
|
-
//# sourceMappingURL=max-doc-bytes.js.map
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { QmdExitError } from "./index.js";
|
|
2
|
-
const QMD_ERROR_CODE_TOKENS = [
|
|
3
|
-
"SQLITE_BUSY",
|
|
4
|
-
"SQLITE_CORRUPT",
|
|
5
|
-
"SQLITE_FULL",
|
|
6
|
-
"ENOSPC",
|
|
7
|
-
"EACCES",
|
|
8
|
-
"EPERM",
|
|
9
|
-
"ENOENT",
|
|
10
|
-
"ECONNRESET",
|
|
11
|
-
"ETIMEDOUT",
|
|
12
|
-
];
|
|
13
|
-
const QMD_UPDATE_ENTRY_PATHS = new Set(["index-sync"]);
|
|
14
|
-
/** Bounded Sentry tags for qmd exits; never return captured streams or full argv. */
|
|
15
|
-
export function qmdExitCaptureContext(err) {
|
|
16
|
-
if (!(err instanceof QmdExitError))
|
|
17
|
-
return undefined;
|
|
18
|
-
const output = err.stderr + "\n" + err.stdout;
|
|
19
|
-
const errorCode = QMD_ERROR_CODE_TOKENS.find((token) => new RegExp("(^|[^A-Za-z0-9_])" + token + "(?=$|[^A-Za-z0-9_])").test(output)) ?? "none";
|
|
20
|
-
const firstArg = err.args[0];
|
|
21
|
-
const subcommand = typeof firstArg === "string" && /^[a-z][a-z0-9_-]{0,31}$/.test(firstArg)
|
|
22
|
-
? firstArg
|
|
23
|
-
: "unknown";
|
|
24
|
-
const exitStatus = typeof err.status === "number" && Number.isSafeInteger(err.status)
|
|
25
|
-
? String(err.status)
|
|
26
|
-
: "unknown";
|
|
27
|
-
const tags = {
|
|
28
|
-
qmd_error_code: errorCode,
|
|
29
|
-
qmd_subcommand: subcommand,
|
|
30
|
-
qmd_exit_status: exitStatus,
|
|
31
|
-
};
|
|
32
|
-
if (typeof err.qmdVersion === "string" && /^\d+\.\d+\.\d+(?:[-+][0-9A-Za-z.-]+)?$/.test(err.qmdVersion)) {
|
|
33
|
-
tags.qmd_version = err.qmdVersion;
|
|
34
|
-
}
|
|
35
|
-
if (typeof err.entryPath === "string" && QMD_UPDATE_ENTRY_PATHS.has(err.entryPath)) {
|
|
36
|
-
tags.qmd_entry_path = err.entryPath;
|
|
37
|
-
}
|
|
38
|
-
return { tags };
|
|
39
|
-
}
|
|
40
|
-
//# sourceMappingURL=qmd-exit-diagnostics.js.map
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export declare const QMD_REINDEX_SINGLE_FLIGHT_FLAG = "qmd.reindex-single-flight";
|
|
2
|
-
export declare const QMD_REINDEX_SINGLE_FLIGHT_FLAG_FALLBACK = false;
|
|
3
|
-
/** Keep all HQ-managed QMD writers coordinated only for explicitly enabled canaries. */
|
|
4
|
-
export declare function qmdReindexSingleFlightEnabled(): boolean;
|
|
5
|
-
//# sourceMappingURL=reindex-single-flight-flag.d.ts.map
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { resolveProcessFlagGate } from "../flag-registry.js";
|
|
2
|
-
export const QMD_REINDEX_SINGLE_FLIGHT_FLAG = "qmd.reindex-single-flight";
|
|
3
|
-
export const QMD_REINDEX_SINGLE_FLIGHT_FLAG_FALLBACK = false;
|
|
4
|
-
/** Keep all HQ-managed QMD writers coordinated only for explicitly enabled canaries. */
|
|
5
|
-
export function qmdReindexSingleFlightEnabled() {
|
|
6
|
-
return resolveProcessFlagGate(QMD_REINDEX_SINGLE_FLIGHT_FLAG, { fallback: QMD_REINDEX_SINGLE_FLIGHT_FLAG_FALLBACK }, () => QMD_REINDEX_SINGLE_FLIGHT_FLAG_FALLBACK);
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=reindex-single-flight-flag.js.map
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Install / uninstall / status for a SET of user-level services, dispatching
|
|
3
|
-
* to launchd or systemd. All filesystem and process-control effects are
|
|
4
|
-
* injectable so the kit tests exercise the real rendering and dispatch
|
|
5
|
-
* without touching the host's service manager.
|
|
6
|
-
*/
|
|
7
|
-
import * as fs from "node:fs";
|
|
8
|
-
import { type RunCommand } from "./launchd.js";
|
|
9
|
-
import { type ServiceHostPaths, type ServicePlatform, type ServiceSpec } from "./types.js";
|
|
10
|
-
export type { ServiceSpec, ServiceHostPaths, ServicePlatform } from "./types.js";
|
|
11
|
-
export { detectServicePlatform } from "./types.js";
|
|
12
|
-
export { defaultRunCommand, renderLaunchdPlist } from "./launchd.js";
|
|
13
|
-
export { renderSystemdUserUnit, systemdUnitName } from "./systemd.js";
|
|
14
|
-
export interface ServiceManagerDeps {
|
|
15
|
-
platform?: ServicePlatform;
|
|
16
|
-
run?: RunCommand;
|
|
17
|
-
writeFileSync?: typeof fs.writeFileSync;
|
|
18
|
-
mkdirSync?: typeof fs.mkdirSync;
|
|
19
|
-
unlinkSync?: typeof fs.unlinkSync;
|
|
20
|
-
existsSync?: typeof fs.existsSync;
|
|
21
|
-
/** When false, render + write units but do not (de)activate them. */
|
|
22
|
-
activate?: boolean;
|
|
23
|
-
}
|
|
24
|
-
export interface ServiceUnitResult {
|
|
25
|
-
name: string;
|
|
26
|
-
unitPath: string;
|
|
27
|
-
rendered?: string;
|
|
28
|
-
installed: boolean;
|
|
29
|
-
running?: boolean;
|
|
30
|
-
error?: string;
|
|
31
|
-
}
|
|
32
|
-
export interface ServiceSetResult {
|
|
33
|
-
platform: ServicePlatform;
|
|
34
|
-
units: ServiceUnitResult[];
|
|
35
|
-
/** Human hint when the platform has no service manager integration. */
|
|
36
|
-
manualCommands?: string[];
|
|
37
|
-
}
|
|
38
|
-
export declare function renderUnit(platform: ServicePlatform, spec: ServiceSpec, host: ServiceHostPaths): string;
|
|
39
|
-
export declare function installServices(specs: ServiceSpec[], host: ServiceHostPaths, deps?: ServiceManagerDeps): ServiceSetResult;
|
|
40
|
-
export declare function uninstallServices(specs: ServiceSpec[], host: ServiceHostPaths, deps?: ServiceManagerDeps): ServiceSetResult;
|
|
41
|
-
export declare function servicesStatus(specs: ServiceSpec[], host: ServiceHostPaths, deps?: ServiceManagerDeps): ServiceSetResult;
|
|
42
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Install / uninstall / status for a SET of user-level services, dispatching
|
|
3
|
-
* to launchd or systemd. All filesystem and process-control effects are
|
|
4
|
-
* injectable so the kit tests exercise the real rendering and dispatch
|
|
5
|
-
* without touching the host's service manager.
|
|
6
|
-
*/
|
|
7
|
-
import * as fs from "node:fs";
|
|
8
|
-
import { activateLaunchd, deactivateLaunchd, defaultRunCommand, launchAgentsDir, launchdIsLoaded, launchdPlistPath, renderLaunchdPlist, } from "./launchd.js";
|
|
9
|
-
import { activateSystemd, deactivateSystemd, renderSystemdUserUnit, systemdIsActive, systemdUnitName, systemdUnitPath, systemdUserDir, } from "./systemd.js";
|
|
10
|
-
import { detectServicePlatform, } from "./types.js";
|
|
11
|
-
export { detectServicePlatform } from "./types.js";
|
|
12
|
-
export { defaultRunCommand, renderLaunchdPlist } from "./launchd.js";
|
|
13
|
-
export { renderSystemdUserUnit, systemdUnitName } from "./systemd.js";
|
|
14
|
-
function unitPathFor(platform, home, spec) {
|
|
15
|
-
return platform === "darwin" ? launchdPlistPath(home, spec) : systemdUnitPath(home, spec);
|
|
16
|
-
}
|
|
17
|
-
export function renderUnit(platform, spec, host) {
|
|
18
|
-
return platform === "darwin"
|
|
19
|
-
? renderLaunchdPlist(spec, host)
|
|
20
|
-
: renderSystemdUserUnit(spec, host);
|
|
21
|
-
}
|
|
22
|
-
export function installServices(specs, host, deps = {}) {
|
|
23
|
-
const platform = deps.platform ?? detectServicePlatform();
|
|
24
|
-
const run = deps.run ?? defaultRunCommand;
|
|
25
|
-
const writeFileSync = deps.writeFileSync ?? fs.writeFileSync;
|
|
26
|
-
const mkdirSync = deps.mkdirSync ?? fs.mkdirSync;
|
|
27
|
-
const activate = deps.activate ?? true;
|
|
28
|
-
if (platform === "other") {
|
|
29
|
-
return {
|
|
30
|
-
platform,
|
|
31
|
-
units: specs.map((s) => ({ name: s.name, unitPath: "", installed: false })),
|
|
32
|
-
manualCommands: specs.map((s) => `${host.nodeBinary} ${host.hqBinary} ${s.args.join(" ")} # >> ${s.logPath}`),
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
const dir = platform === "darwin" ? launchAgentsDir(host.home) : systemdUserDir(host.home);
|
|
36
|
-
mkdirSync(dir, { recursive: true });
|
|
37
|
-
const units = [];
|
|
38
|
-
for (const spec of specs) {
|
|
39
|
-
const unitPath = unitPathFor(platform, host.home, spec);
|
|
40
|
-
const rendered = renderUnit(platform, spec, host);
|
|
41
|
-
writeFileSync(unitPath, rendered, { mode: 0o600 });
|
|
42
|
-
const unit = { name: spec.name, unitPath, rendered, installed: true };
|
|
43
|
-
if (activate) {
|
|
44
|
-
try {
|
|
45
|
-
if (platform === "darwin")
|
|
46
|
-
activateLaunchd(unitPath, run);
|
|
47
|
-
else
|
|
48
|
-
activateSystemd(systemdUnitName(spec), run);
|
|
49
|
-
unit.running = true;
|
|
50
|
-
}
|
|
51
|
-
catch (err) {
|
|
52
|
-
unit.running = false;
|
|
53
|
-
unit.error = err instanceof Error ? err.message : String(err);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
units.push(unit);
|
|
57
|
-
}
|
|
58
|
-
return { platform, units };
|
|
59
|
-
}
|
|
60
|
-
export function uninstallServices(specs, host, deps = {}) {
|
|
61
|
-
const platform = deps.platform ?? detectServicePlatform();
|
|
62
|
-
const run = deps.run ?? defaultRunCommand;
|
|
63
|
-
const unlinkSync = deps.unlinkSync ?? fs.unlinkSync;
|
|
64
|
-
const existsSync = deps.existsSync ?? fs.existsSync;
|
|
65
|
-
const activate = deps.activate ?? true;
|
|
66
|
-
if (platform === "other") {
|
|
67
|
-
return { platform, units: specs.map((s) => ({ name: s.name, unitPath: "", installed: false })) };
|
|
68
|
-
}
|
|
69
|
-
const units = [];
|
|
70
|
-
for (const spec of specs) {
|
|
71
|
-
const unitPath = unitPathFor(platform, host.home, spec);
|
|
72
|
-
const present = existsSync(unitPath);
|
|
73
|
-
if (present) {
|
|
74
|
-
if (activate) {
|
|
75
|
-
if (platform === "darwin")
|
|
76
|
-
deactivateLaunchd(unitPath, run);
|
|
77
|
-
else
|
|
78
|
-
deactivateSystemd(systemdUnitName(spec), run);
|
|
79
|
-
}
|
|
80
|
-
unlinkSync(unitPath);
|
|
81
|
-
}
|
|
82
|
-
units.push({ name: spec.name, unitPath, installed: false, running: false });
|
|
83
|
-
}
|
|
84
|
-
return { platform, units };
|
|
85
|
-
}
|
|
86
|
-
export function servicesStatus(specs, host, deps = {}) {
|
|
87
|
-
const platform = deps.platform ?? detectServicePlatform();
|
|
88
|
-
const run = deps.run ?? defaultRunCommand;
|
|
89
|
-
const existsSync = deps.existsSync ?? fs.existsSync;
|
|
90
|
-
if (platform === "other") {
|
|
91
|
-
return { platform, units: specs.map((s) => ({ name: s.name, unitPath: "", installed: false })) };
|
|
92
|
-
}
|
|
93
|
-
const units = specs.map((spec) => {
|
|
94
|
-
const unitPath = unitPathFor(platform, host.home, spec);
|
|
95
|
-
const installed = existsSync(unitPath);
|
|
96
|
-
const running = installed
|
|
97
|
-
? platform === "darwin"
|
|
98
|
-
? launchdIsLoaded(spec.label, run)
|
|
99
|
-
: systemdIsActive(systemdUnitName(spec), run)
|
|
100
|
-
: false;
|
|
101
|
-
return { name: spec.name, unitPath, installed, running };
|
|
102
|
-
});
|
|
103
|
-
return { platform, units };
|
|
104
|
-
}
|
|
105
|
-
//# sourceMappingURL=index.js.map
|