@aligndottech/cli 0.49.0 → 0.50.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/README.md +4 -3
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +26 -8
- package/dist/cli.js.map +1 -1
- package/dist/commands/agents.d.ts.map +1 -1
- package/dist/commands/agents.js +4 -1
- package/dist/commands/agents.js.map +1 -1
- package/dist/commands/check.d.ts.map +1 -1
- package/dist/commands/check.js +18 -2
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/connect.d.ts +5 -0
- package/dist/commands/connect.d.ts.map +1 -1
- package/dist/commands/connect.js +24 -0
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/import/confluence.d.ts.map +1 -1
- package/dist/commands/import/confluence.js +24 -5
- package/dist/commands/import/confluence.js.map +1 -1
- package/dist/commands/import/docs.js +2 -2
- package/dist/commands/import/git.d.ts.map +1 -1
- package/dist/commands/import/git.js +15 -5
- package/dist/commands/import/git.js.map +1 -1
- package/dist/commands/import/github.d.ts.map +1 -1
- package/dist/commands/import/github.js +34 -7
- package/dist/commands/import/github.js.map +1 -1
- package/dist/commands/import/gitlab.d.ts.map +1 -1
- package/dist/commands/import/gitlab.js +10 -5
- package/dist/commands/import/gitlab.js.map +1 -1
- package/dist/commands/import/jira.d.ts.map +1 -1
- package/dist/commands/import/jira.js +10 -5
- package/dist/commands/import/jira.js.map +1 -1
- package/dist/commands/import/linear.d.ts.map +1 -1
- package/dist/commands/import/linear.js +10 -5
- package/dist/commands/import/linear.js.map +1 -1
- package/dist/commands/import/notion.d.ts.map +1 -1
- package/dist/commands/import/notion.js +10 -5
- package/dist/commands/import/notion.js.map +1 -1
- package/dist/commands/import/sessions.js +2 -2
- package/dist/commands/import/slack.d.ts.map +1 -1
- package/dist/commands/import/slack.js +12 -7
- package/dist/commands/import/slack.js.map +1 -1
- package/dist/commands/import/teams.d.ts.map +1 -1
- package/dist/commands/import/teams.js +10 -5
- package/dist/commands/import/teams.js.map +1 -1
- package/dist/commands/import/zoom.d.ts.map +1 -1
- package/dist/commands/import/zoom.js +10 -5
- package/dist/commands/import/zoom.js.map +1 -1
- package/dist/commands/import.d.ts.map +1 -1
- package/dist/commands/import.js +43 -1
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/local.d.ts.map +1 -1
- package/dist/commands/local.js +76 -4
- package/dist/commands/local.js.map +1 -1
- package/dist/commands/mark.d.ts +37 -0
- package/dist/commands/mark.d.ts.map +1 -0
- package/dist/commands/mark.js +105 -0
- package/dist/commands/mark.js.map +1 -0
- package/dist/commands/mcp.d.ts +141 -2
- package/dist/commands/mcp.d.ts.map +1 -1
- package/dist/commands/mcp.js +72 -14
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/registry.d.ts.map +1 -1
- package/dist/commands/registry.js +8 -2
- package/dist/commands/registry.js.map +1 -1
- package/dist/commands/setup.d.ts +39 -0
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +65 -50
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/share.d.ts +7 -0
- package/dist/commands/share.d.ts.map +1 -0
- package/dist/commands/share.js +60 -0
- package/dist/commands/share.js.map +1 -0
- package/dist/commands/sync.d.ts +55 -0
- package/dist/commands/sync.d.ts.map +1 -0
- package/dist/commands/sync.js +278 -0
- package/dist/commands/sync.js.map +1 -0
- package/dist/commands/telemetry.d.ts +3 -3
- package/dist/commands/telemetry.js +6 -6
- package/dist/commands/telemetry.js.map +1 -1
- package/dist/commands/why.d.ts.map +1 -1
- package/dist/commands/why.js +6 -1
- package/dist/commands/why.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/backfill-state.d.ts +116 -0
- package/dist/lib/backfill-state.d.ts.map +1 -0
- package/dist/lib/backfill-state.js +342 -0
- package/dist/lib/backfill-state.js.map +1 -0
- package/dist/lib/backup-copy.d.ts +17 -0
- package/dist/lib/backup-copy.d.ts.map +1 -0
- package/dist/lib/backup-copy.js +13 -0
- package/dist/lib/backup-copy.js.map +1 -0
- package/dist/lib/capture-report.d.ts +22 -18
- package/dist/lib/capture-report.d.ts.map +1 -1
- package/dist/lib/capture-report.js +64 -2
- package/dist/lib/capture-report.js.map +1 -1
- package/dist/lib/config.d.ts +31 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +139 -0
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/confirm-timeout.d.ts +8 -0
- package/dist/lib/confirm-timeout.d.ts.map +1 -0
- package/dist/lib/confirm-timeout.js +18 -0
- package/dist/lib/confirm-timeout.js.map +1 -0
- package/dist/lib/curation/check-marks.d.ts +48 -0
- package/dist/lib/curation/check-marks.d.ts.map +1 -0
- package/dist/lib/curation/check-marks.js +81 -0
- package/dist/lib/curation/check-marks.js.map +1 -0
- package/dist/lib/curation/guardrail.d.ts +39 -0
- package/dist/lib/curation/guardrail.d.ts.map +1 -0
- package/dist/lib/curation/guardrail.js +93 -0
- package/dist/lib/curation/guardrail.js.map +1 -0
- package/dist/lib/curation/judge.d.ts +3 -0
- package/dist/lib/curation/judge.d.ts.map +1 -0
- package/dist/lib/curation/judge.js +9 -0
- package/dist/lib/curation/judge.js.map +1 -0
- package/dist/lib/curation/judgements-db.d.ts +96 -0
- package/dist/lib/curation/judgements-db.d.ts.map +1 -0
- package/dist/lib/curation/judgements-db.js +200 -0
- package/dist/lib/curation/judgements-db.js.map +1 -0
- package/dist/lib/curation/last-check.d.ts +32 -0
- package/dist/lib/curation/last-check.d.ts.map +1 -0
- package/dist/lib/curation/last-check.js +81 -0
- package/dist/lib/curation/last-check.js.map +1 -0
- package/dist/lib/curation/mark.d.ts +76 -0
- package/dist/lib/curation/mark.d.ts.map +1 -0
- package/dist/lib/curation/mark.js +359 -0
- package/dist/lib/curation/mark.js.map +1 -0
- package/dist/lib/curation/text.d.ts +6 -0
- package/dist/lib/curation/text.d.ts.map +1 -0
- package/dist/lib/curation/text.js +35 -0
- package/dist/lib/curation/text.js.map +1 -0
- package/dist/lib/fetchers/capture.d.ts +49 -2
- package/dist/lib/fetchers/capture.d.ts.map +1 -1
- package/dist/lib/fetchers/capture.js +7 -1
- package/dist/lib/fetchers/capture.js.map +1 -1
- package/dist/lib/fetchers/confluence.d.ts +2 -2
- package/dist/lib/fetchers/confluence.d.ts.map +1 -1
- package/dist/lib/fetchers/confluence.js.map +1 -1
- package/dist/lib/fetchers/git.d.ts +1 -0
- package/dist/lib/fetchers/git.d.ts.map +1 -1
- package/dist/lib/fetchers/git.js +3 -1
- package/dist/lib/fetchers/git.js.map +1 -1
- package/dist/lib/fetchers/github.d.ts +44 -5
- package/dist/lib/fetchers/github.d.ts.map +1 -1
- package/dist/lib/fetchers/github.js +122 -5
- package/dist/lib/fetchers/github.js.map +1 -1
- package/dist/lib/fetchers/gitlab.d.ts +2 -2
- package/dist/lib/fetchers/gitlab.d.ts.map +1 -1
- package/dist/lib/fetchers/gitlab.js.map +1 -1
- package/dist/lib/fetchers/jira.d.ts +2 -2
- package/dist/lib/fetchers/jira.d.ts.map +1 -1
- package/dist/lib/fetchers/jira.js.map +1 -1
- package/dist/lib/fetchers/linear.d.ts +2 -2
- package/dist/lib/fetchers/linear.d.ts.map +1 -1
- package/dist/lib/fetchers/linear.js.map +1 -1
- package/dist/lib/fetchers/notion.d.ts +2 -2
- package/dist/lib/fetchers/notion.d.ts.map +1 -1
- package/dist/lib/fetchers/notion.js.map +1 -1
- package/dist/lib/fetchers/slack.d.ts +2 -3
- package/dist/lib/fetchers/slack.d.ts.map +1 -1
- package/dist/lib/fetchers/slack.js.map +1 -1
- package/dist/lib/fetchers/teams.d.ts +2 -2
- package/dist/lib/fetchers/teams.d.ts.map +1 -1
- package/dist/lib/fetchers/teams.js.map +1 -1
- package/dist/lib/fetchers/zoom.d.ts +2 -2
- package/dist/lib/fetchers/zoom.d.ts.map +1 -1
- package/dist/lib/fetchers/zoom.js.map +1 -1
- package/dist/lib/gateway-client.d.ts +34 -0
- package/dist/lib/gateway-client.d.ts.map +1 -1
- package/dist/lib/gateway-client.js +19 -1
- package/dist/lib/gateway-client.js.map +1 -1
- package/dist/lib/github-text.d.ts +3 -0
- package/dist/lib/github-text.d.ts.map +1 -0
- package/dist/lib/github-text.js +18 -0
- package/dist/lib/github-text.js.map +1 -0
- package/dist/lib/hook-context.d.ts +10 -0
- package/dist/lib/hook-context.d.ts.map +1 -1
- package/dist/lib/hook-context.js +14 -0
- package/dist/lib/hook-context.js.map +1 -1
- package/dist/lib/import-defaults.d.ts +39 -23
- package/dist/lib/import-defaults.d.ts.map +1 -1
- package/dist/lib/import-defaults.js +28 -26
- package/dist/lib/import-defaults.js.map +1 -1
- package/dist/lib/launch/adapters/aider.d.ts +17 -0
- package/dist/lib/launch/adapters/aider.d.ts.map +1 -0
- package/dist/lib/launch/adapters/aider.js +30 -0
- package/dist/lib/launch/adapters/aider.js.map +1 -0
- package/dist/lib/launch/adapters/auggie.d.ts +18 -0
- package/dist/lib/launch/adapters/auggie.d.ts.map +1 -0
- package/dist/lib/launch/adapters/auggie.js +34 -0
- package/dist/lib/launch/adapters/auggie.js.map +1 -0
- package/dist/lib/launch/adapters/cline.d.ts +10 -0
- package/dist/lib/launch/adapters/cline.d.ts.map +1 -0
- package/dist/lib/launch/adapters/cline.js +41 -0
- package/dist/lib/launch/adapters/cline.js.map +1 -0
- package/dist/lib/launch/adapters/continue.d.ts +22 -0
- package/dist/lib/launch/adapters/continue.d.ts.map +1 -0
- package/dist/lib/launch/adapters/continue.js +46 -0
- package/dist/lib/launch/adapters/continue.js.map +1 -0
- package/dist/lib/launch/adapters/gemini-cli.d.ts +13 -14
- package/dist/lib/launch/adapters/gemini-cli.d.ts.map +1 -1
- package/dist/lib/launch/adapters/gemini-cli.js +38 -53
- package/dist/lib/launch/adapters/gemini-cli.js.map +1 -1
- package/dist/lib/launch/adapters/goose.d.ts +20 -0
- package/dist/lib/launch/adapters/goose.d.ts.map +1 -0
- package/dist/lib/launch/adapters/goose.js +47 -0
- package/dist/lib/launch/adapters/goose.js.map +1 -0
- package/dist/lib/launch/adapters/notes.d.ts +7 -0
- package/dist/lib/launch/adapters/notes.d.ts.map +1 -0
- package/dist/lib/launch/adapters/notes.js +5 -0
- package/dist/lib/launch/adapters/notes.js.map +1 -0
- package/dist/lib/launch/agents.d.ts +2 -0
- package/dist/lib/launch/agents.d.ts.map +1 -1
- package/dist/lib/launch/agents.js +3 -1
- package/dist/lib/launch/agents.js.map +1 -1
- package/dist/lib/launch/auggie-state.d.ts +25 -0
- package/dist/lib/launch/auggie-state.d.ts.map +1 -0
- package/dist/lib/launch/auggie-state.js +74 -0
- package/dist/lib/launch/auggie-state.js.map +1 -0
- package/dist/lib/launch/cline-state.d.ts +32 -0
- package/dist/lib/launch/cline-state.d.ts.map +1 -0
- package/dist/lib/launch/cline-state.js +108 -0
- package/dist/lib/launch/cline-state.js.map +1 -0
- package/dist/lib/launch/config-writes.d.ts +4 -0
- package/dist/lib/launch/config-writes.d.ts.map +1 -1
- package/dist/lib/launch/config-writes.js +8 -3
- package/dist/lib/launch/config-writes.js.map +1 -1
- package/dist/lib/launch/continue-state.d.ts +41 -0
- package/dist/lib/launch/continue-state.d.ts.map +1 -0
- package/dist/lib/launch/continue-state.js +142 -0
- package/dist/lib/launch/continue-state.js.map +1 -0
- package/dist/lib/launch/detect.d.ts.map +1 -1
- package/dist/lib/launch/detect.js +3 -1
- package/dist/lib/launch/detect.js.map +1 -1
- package/dist/lib/launch/gemini-state.d.ts +26 -20
- package/dist/lib/launch/gemini-state.d.ts.map +1 -1
- package/dist/lib/launch/gemini-state.js +95 -37
- package/dist/lib/launch/gemini-state.js.map +1 -1
- package/dist/lib/launch/gemini-system-file.d.ts +17 -0
- package/dist/lib/launch/gemini-system-file.d.ts.map +1 -0
- package/dist/lib/launch/gemini-system-file.js +55 -0
- package/dist/lib/launch/gemini-system-file.js.map +1 -0
- package/dist/lib/launch/gemini-trust.d.ts +3 -1
- package/dist/lib/launch/gemini-trust.d.ts.map +1 -1
- package/dist/lib/launch/gemini-trust.js +10 -3
- package/dist/lib/launch/gemini-trust.js.map +1 -1
- package/dist/lib/launch/goose-state.d.ts +53 -0
- package/dist/lib/launch/goose-state.d.ts.map +1 -0
- package/dist/lib/launch/goose-state.js +137 -0
- package/dist/lib/launch/goose-state.js.map +1 -0
- package/dist/lib/launch/launch-files.d.ts.map +1 -1
- package/dist/lib/launch/launch-files.js +3 -2
- package/dist/lib/launch/launch-files.js.map +1 -1
- package/dist/lib/launch/launch.d.ts +17 -2
- package/dist/lib/launch/launch.d.ts.map +1 -1
- package/dist/lib/launch/launch.js +36 -3
- package/dist/lib/launch/launch.js.map +1 -1
- package/dist/lib/launch/mcp-child-env.d.ts +30 -0
- package/dist/lib/launch/mcp-child-env.d.ts.map +1 -0
- package/dist/lib/launch/mcp-child-env.js +151 -0
- package/dist/lib/launch/mcp-child-env.js.map +1 -0
- package/dist/lib/launch/pick-agent.d.ts.map +1 -1
- package/dist/lib/launch/pick-agent.js +4 -4
- package/dist/lib/launch/pick-agent.js.map +1 -1
- package/dist/lib/launch/picker-options.d.ts.map +1 -1
- package/dist/lib/launch/picker-options.js +7 -2
- package/dist/lib/launch/picker-options.js.map +1 -1
- package/dist/lib/launch/registry/agents/aider.d.ts +3 -0
- package/dist/lib/launch/registry/agents/aider.d.ts.map +1 -0
- package/dist/lib/launch/registry/agents/aider.js +13 -0
- package/dist/lib/launch/registry/agents/aider.js.map +1 -0
- package/dist/lib/launch/registry/agents/auggie.d.ts +3 -0
- package/dist/lib/launch/registry/agents/auggie.d.ts.map +1 -0
- package/dist/lib/launch/registry/agents/auggie.js +11 -0
- package/dist/lib/launch/registry/agents/auggie.js.map +1 -0
- package/dist/lib/launch/registry/agents/cline.d.ts +3 -0
- package/dist/lib/launch/registry/agents/cline.d.ts.map +1 -0
- package/dist/lib/launch/registry/agents/cline.js +19 -0
- package/dist/lib/launch/registry/agents/cline.js.map +1 -0
- package/dist/lib/launch/registry/agents/continue.d.ts +3 -0
- package/dist/lib/launch/registry/agents/continue.d.ts.map +1 -0
- package/dist/lib/launch/registry/agents/continue.js +20 -0
- package/dist/lib/launch/registry/agents/continue.js.map +1 -0
- package/dist/lib/launch/registry/agents/gemini-cli.js +2 -2
- package/dist/lib/launch/registry/agents/gemini-cli.js.map +1 -1
- package/dist/lib/launch/registry/agents/goose.d.ts +3 -0
- package/dist/lib/launch/registry/agents/goose.d.ts.map +1 -0
- package/dist/lib/launch/registry/agents/goose.js +20 -0
- package/dist/lib/launch/registry/agents/goose.js.map +1 -0
- package/dist/lib/launch/registry/index.d.ts +1 -1
- package/dist/lib/launch/registry/index.d.ts.map +1 -1
- package/dist/lib/launch/registry/index.js +7 -2
- package/dist/lib/launch/registry/index.js.map +1 -1
- package/dist/lib/launch/registry/types.d.ts +12 -1
- package/dist/lib/launch/registry/types.d.ts.map +1 -1
- package/dist/lib/launch/strict-entry.d.ts +22 -2
- package/dist/lib/launch/strict-entry.d.ts.map +1 -1
- package/dist/lib/launch/strict-entry.js +80 -2
- package/dist/lib/launch/strict-entry.js.map +1 -1
- package/dist/lib/launch/yaml-scan.d.ts +59 -0
- package/dist/lib/launch/yaml-scan.d.ts.map +1 -0
- package/dist/lib/launch/yaml-scan.js +275 -0
- package/dist/lib/launch/yaml-scan.js.map +1 -0
- package/dist/lib/local-db-epoch.d.ts +4 -0
- package/dist/lib/local-db-epoch.d.ts.map +1 -0
- package/dist/lib/local-db-epoch.js +19 -0
- package/dist/lib/local-db-epoch.js.map +1 -0
- package/dist/lib/local-db-migrate.d.ts +85 -0
- package/dist/lib/local-db-migrate.d.ts.map +1 -0
- package/dist/lib/local-db-migrate.js +484 -0
- package/dist/lib/local-db-migrate.js.map +1 -0
- package/dist/lib/local-db-v10.d.ts +28 -0
- package/dist/lib/local-db-v10.d.ts.map +1 -0
- package/dist/lib/local-db-v10.js +49 -0
- package/dist/lib/local-db-v10.js.map +1 -0
- package/dist/lib/local-db-v11.d.ts +24 -0
- package/dist/lib/local-db-v11.d.ts.map +1 -0
- package/dist/lib/local-db-v11.js +25 -0
- package/dist/lib/local-db-v11.js.map +1 -0
- package/dist/lib/local-db-v7.d.ts +30 -0
- package/dist/lib/local-db-v7.d.ts.map +1 -0
- package/dist/lib/local-db-v7.js +285 -0
- package/dist/lib/local-db-v7.js.map +1 -0
- package/dist/lib/local-db-v8.d.ts +22 -0
- package/dist/lib/local-db-v8.d.ts.map +1 -0
- package/dist/lib/local-db-v8.js +33 -0
- package/dist/lib/local-db-v8.js.map +1 -0
- package/dist/lib/local-db-v9.d.ts +10 -0
- package/dist/lib/local-db-v9.d.ts.map +1 -0
- package/dist/lib/local-db-v9.js +8 -0
- package/dist/lib/local-db-v9.js.map +1 -0
- package/dist/lib/local-db.d.ts +61 -11
- package/dist/lib/local-db.d.ts.map +1 -1
- package/dist/lib/local-db.js +186 -371
- package/dist/lib/local-db.js.map +1 -1
- package/dist/lib/local-embeddings.d.ts.map +1 -1
- package/dist/lib/local-embeddings.js +2 -2
- package/dist/lib/local-embeddings.js.map +1 -1
- package/dist/lib/local-gateway-client.d.ts +30 -87
- package/dist/lib/local-gateway-client.d.ts.map +1 -1
- package/dist/lib/local-gateway-client.js +182 -171
- package/dist/lib/local-gateway-client.js.map +1 -1
- package/dist/lib/local-ingest.d.ts +129 -0
- package/dist/lib/local-ingest.d.ts.map +1 -0
- package/dist/lib/local-ingest.js +81 -0
- package/dist/lib/local-ingest.js.map +1 -0
- package/dist/lib/local-link-pass.d.ts +15 -0
- package/dist/lib/local-link-pass.d.ts.map +1 -0
- package/dist/lib/local-link-pass.js +61 -0
- package/dist/lib/local-link-pass.js.map +1 -0
- package/dist/lib/local-mode.d.ts +4 -1
- package/dist/lib/local-mode.d.ts.map +1 -1
- package/dist/lib/local-mode.js +16 -1
- package/dist/lib/local-mode.js.map +1 -1
- package/dist/lib/local-provenance.d.ts +14 -0
- package/dist/lib/local-provenance.d.ts.map +1 -0
- package/dist/lib/local-provenance.js +14 -0
- package/dist/lib/local-provenance.js.map +1 -0
- package/dist/lib/local-thresholds.d.ts +70 -0
- package/dist/lib/local-thresholds.d.ts.map +1 -0
- package/dist/lib/local-thresholds.js +79 -0
- package/dist/lib/local-thresholds.js.map +1 -0
- package/dist/lib/mcp/mark-tool.d.ts +27 -0
- package/dist/lib/mcp/mark-tool.d.ts.map +1 -0
- package/dist/lib/mcp/mark-tool.js +103 -0
- package/dist/lib/mcp/mark-tool.js.map +1 -0
- package/dist/lib/mcp/share-tool.d.ts +46 -0
- package/dist/lib/mcp/share-tool.d.ts.map +1 -0
- package/dist/lib/mcp/share-tool.js +68 -0
- package/dist/lib/mcp/share-tool.js.map +1 -0
- package/dist/lib/mcp/tool-rules.d.ts +30 -0
- package/dist/lib/mcp/tool-rules.d.ts.map +1 -0
- package/dist/lib/mcp/tool-rules.js +84 -0
- package/dist/lib/mcp/tool-rules.js.map +1 -0
- package/dist/lib/mcp-backfill.d.ts +89 -0
- package/dist/lib/mcp-backfill.d.ts.map +1 -0
- package/dist/lib/mcp-backfill.js +194 -0
- package/dist/lib/mcp-backfill.js.map +1 -0
- package/dist/lib/mcp-scope.d.ts +90 -0
- package/dist/lib/mcp-scope.d.ts.map +1 -0
- package/dist/lib/mcp-scope.js +125 -0
- package/dist/lib/mcp-scope.js.map +1 -0
- package/dist/lib/mcp-sync.d.ts +64 -0
- package/dist/lib/mcp-sync.d.ts.map +1 -0
- package/dist/lib/mcp-sync.js +183 -0
- package/dist/lib/mcp-sync.js.map +1 -0
- package/dist/lib/personal-import.d.ts +7 -0
- package/dist/lib/personal-import.d.ts.map +1 -1
- package/dist/lib/personal-import.js +13 -1
- package/dist/lib/personal-import.js.map +1 -1
- package/dist/lib/safe-config-write.d.ts.map +1 -1
- package/dist/lib/safe-config-write.js +39 -2
- package/dist/lib/safe-config-write.js.map +1 -1
- package/dist/lib/scope-choices.d.ts +51 -0
- package/dist/lib/scope-choices.d.ts.map +1 -0
- package/dist/lib/scope-choices.js +193 -0
- package/dist/lib/scope-choices.js.map +1 -0
- package/dist/lib/scope-connect.d.ts +82 -0
- package/dist/lib/scope-connect.d.ts.map +1 -0
- package/dist/lib/scope-connect.js +258 -0
- package/dist/lib/scope-connect.js.map +1 -0
- package/dist/lib/scope-defaults.d.ts +3 -0
- package/dist/lib/scope-defaults.d.ts.map +1 -0
- package/dist/lib/scope-defaults.js +42 -0
- package/dist/lib/scope-defaults.js.map +1 -0
- package/dist/lib/scope-real.d.ts +223 -0
- package/dist/lib/scope-real.d.ts.map +1 -0
- package/dist/lib/scope-real.js +58 -0
- package/dist/lib/scope-real.js.map +1 -0
- package/dist/lib/scope-values.d.ts +76 -0
- package/dist/lib/scope-values.d.ts.map +1 -0
- package/dist/lib/scope-values.js +169 -0
- package/dist/lib/scope-values.js.map +1 -0
- package/dist/lib/scope.d.ts +161 -0
- package/dist/lib/scope.d.ts.map +1 -0
- package/dist/lib/scope.js +323 -0
- package/dist/lib/scope.js.map +1 -0
- package/dist/lib/share/command.d.ts +32 -0
- package/dist/lib/share/command.d.ts.map +1 -0
- package/dist/lib/share/command.js +136 -0
- package/dist/lib/share/command.js.map +1 -0
- package/dist/lib/share/ledger.d.ts +59 -0
- package/dist/lib/share/ledger.d.ts.map +1 -0
- package/dist/lib/share/ledger.js +135 -0
- package/dist/lib/share/ledger.js.map +1 -0
- package/dist/lib/share/payload.d.ts +92 -0
- package/dist/lib/share/payload.d.ts.map +1 -0
- package/dist/lib/share/payload.js +138 -0
- package/dist/lib/share/payload.js.map +1 -0
- package/dist/lib/share/pending.d.ts +48 -0
- package/dist/lib/share/pending.d.ts.map +1 -0
- package/dist/lib/share/pending.js +130 -0
- package/dist/lib/share/pending.js.map +1 -0
- package/dist/lib/share/preview.d.ts +18 -0
- package/dist/lib/share/preview.d.ts.map +1 -0
- package/dist/lib/share/preview.js +72 -0
- package/dist/lib/share/preview.js.map +1 -0
- package/dist/lib/share/run.d.ts +115 -0
- package/dist/lib/share/run.d.ts.map +1 -0
- package/dist/lib/share/run.js +261 -0
- package/dist/lib/share/run.js.map +1 -0
- package/dist/lib/share/salt.d.ts +2 -0
- package/dist/lib/share/salt.d.ts.map +1 -0
- package/dist/lib/share/salt.js +44 -0
- package/dist/lib/share/salt.js.map +1 -0
- package/dist/lib/share/secret-patterns.json +100 -0
- package/dist/lib/share/secret-scan.d.ts +19 -0
- package/dist/lib/share/secret-scan.d.ts.map +1 -0
- package/dist/lib/share/secret-scan.js +75 -0
- package/dist/lib/share/secret-scan.js.map +1 -0
- package/dist/lib/share/tty.d.ts +4 -0
- package/dist/lib/share/tty.d.ts.map +1 -0
- package/dist/lib/share/tty.js +57 -0
- package/dist/lib/share/tty.js.map +1 -0
- package/dist/lib/share/visible.d.ts +4 -0
- package/dist/lib/share/visible.d.ts.map +1 -0
- package/dist/lib/share/visible.js +30 -0
- package/dist/lib/share/visible.js.map +1 -0
- package/dist/lib/share/wire.d.ts +98 -0
- package/dist/lib/share/wire.d.ts.map +1 -0
- package/dist/lib/share/wire.js +43 -0
- package/dist/lib/share/wire.js.map +1 -0
- package/dist/lib/similarity/embedding-matrix.d.ts +64 -0
- package/dist/lib/similarity/embedding-matrix.d.ts.map +1 -0
- package/dist/lib/similarity/embedding-matrix.js +119 -0
- package/dist/lib/similarity/embedding-matrix.js.map +1 -0
- package/dist/lib/since-flag.d.ts +11 -0
- package/dist/lib/since-flag.d.ts.map +1 -0
- package/dist/lib/since-flag.js +24 -0
- package/dist/lib/since-flag.js.map +1 -0
- package/dist/lib/since.d.ts +59 -0
- package/dist/lib/since.d.ts.map +1 -0
- package/dist/lib/since.js +86 -0
- package/dist/lib/since.js.map +1 -0
- package/dist/lib/source-key.d.ts +13 -0
- package/dist/lib/source-key.d.ts.map +1 -0
- package/dist/lib/source-key.js +60 -0
- package/dist/lib/source-key.js.map +1 -0
- package/dist/lib/source-sync-state.d.ts +12 -0
- package/dist/lib/source-sync-state.d.ts.map +1 -0
- package/dist/lib/source-sync-state.js +43 -0
- package/dist/lib/source-sync-state.js.map +1 -0
- package/dist/lib/startup-backfill-track.d.ts +2 -0
- package/dist/lib/startup-backfill-track.d.ts.map +1 -0
- package/dist/lib/startup-backfill-track.js +6 -0
- package/dist/lib/startup-backfill-track.js.map +1 -0
- package/dist/lib/startup-xdg.d.ts +2 -0
- package/dist/lib/startup-xdg.d.ts.map +1 -0
- package/dist/lib/startup-xdg.js +9 -0
- package/dist/lib/startup-xdg.js.map +1 -0
- package/dist/lib/sync/after-connect.d.ts +2 -0
- package/dist/lib/sync/after-connect.d.ts.map +1 -0
- package/dist/lib/sync/after-connect.js +18 -0
- package/dist/lib/sync/after-connect.js.map +1 -0
- package/dist/lib/sync/bg-claim.d.ts +14 -0
- package/dist/lib/sync/bg-claim.d.ts.map +1 -0
- package/dist/lib/sync/bg-claim.js +97 -0
- package/dist/lib/sync/bg-claim.js.map +1 -0
- package/dist/lib/sync/blocked.d.ts +8 -0
- package/dist/lib/sync/blocked.d.ts.map +1 -0
- package/dist/lib/sync/blocked.js +44 -0
- package/dist/lib/sync/blocked.js.map +1 -0
- package/dist/lib/sync/classify.d.ts +34 -0
- package/dist/lib/sync/classify.d.ts.map +1 -0
- package/dist/lib/sync/classify.js +91 -0
- package/dist/lib/sync/classify.js.map +1 -0
- package/dist/lib/sync/drain.d.ts +16 -0
- package/dist/lib/sync/drain.d.ts.map +1 -0
- package/dist/lib/sync/drain.js +33 -0
- package/dist/lib/sync/drain.js.map +1 -0
- package/dist/lib/sync/forget.d.ts +12 -0
- package/dist/lib/sync/forget.d.ts.map +1 -0
- package/dist/lib/sync/forget.js +32 -0
- package/dist/lib/sync/forget.js.map +1 -0
- package/dist/lib/sync/launch-hook.d.ts +42 -0
- package/dist/lib/sync/launch-hook.d.ts.map +1 -0
- package/dist/lib/sync/launch-hook.js +117 -0
- package/dist/lib/sync/launch-hook.js.map +1 -0
- package/dist/lib/sync/lock.d.ts +35 -0
- package/dist/lib/sync/lock.d.ts.map +1 -0
- package/dist/lib/sync/lock.js +175 -0
- package/dist/lib/sync/lock.js.map +1 -0
- package/dist/lib/sync/purge.d.ts +38 -0
- package/dist/lib/sync/purge.d.ts.map +1 -0
- package/dist/lib/sync/purge.js +61 -0
- package/dist/lib/sync/purge.js.map +1 -0
- package/dist/lib/sync/real-env.d.ts +208 -0
- package/dist/lib/sync/real-env.d.ts.map +1 -0
- package/dist/lib/sync/real-env.js +47 -0
- package/dist/lib/sync/real-env.js.map +1 -0
- package/dist/lib/sync/relink.d.ts +14 -0
- package/dist/lib/sync/relink.d.ts.map +1 -0
- package/dist/lib/sync/relink.js +36 -0
- package/dist/lib/sync/relink.js.map +1 -0
- package/dist/lib/sync/report.d.ts +3 -0
- package/dist/lib/sync/report.d.ts.map +1 -0
- package/dist/lib/sync/report.js +54 -0
- package/dist/lib/sync/report.js.map +1 -0
- package/dist/lib/sync/run-all.d.ts +23 -0
- package/dist/lib/sync/run-all.d.ts.map +1 -0
- package/dist/lib/sync/run-all.js +30 -0
- package/dist/lib/sync/run-all.js.map +1 -0
- package/dist/lib/sync/run-source.d.ts +73 -0
- package/dist/lib/sync/run-source.d.ts.map +1 -0
- package/dist/lib/sync/run-source.js +262 -0
- package/dist/lib/sync/run-source.js.map +1 -0
- package/dist/lib/sync/safe-read.d.ts +4 -0
- package/dist/lib/sync/safe-read.d.ts.map +1 -0
- package/dist/lib/sync/safe-read.js +40 -0
- package/dist/lib/sync/safe-read.js.map +1 -0
- package/dist/lib/sync/should-background-sync.d.ts +31 -0
- package/dist/lib/sync/should-background-sync.d.ts.map +1 -0
- package/dist/lib/sync/should-background-sync.js +69 -0
- package/dist/lib/sync/should-background-sync.js.map +1 -0
- package/dist/lib/sync/source-ids.d.ts +10 -0
- package/dist/lib/sync/source-ids.d.ts.map +1 -0
- package/dist/lib/sync/source-ids.js +9 -0
- package/dist/lib/sync/source-ids.js.map +1 -0
- package/dist/lib/sync/sources.d.ts +33 -0
- package/dist/lib/sync/sources.d.ts.map +1 -0
- package/dist/lib/sync/sources.js +37 -0
- package/dist/lib/sync/sources.js.map +1 -0
- package/dist/lib/sync/spawn-background.d.ts +27 -0
- package/dist/lib/sync/spawn-background.d.ts.map +1 -0
- package/dist/lib/sync/spawn-background.js +66 -0
- package/dist/lib/sync/spawn-background.js.map +1 -0
- package/dist/lib/sync/status.d.ts +57 -0
- package/dist/lib/sync/status.d.ts.map +1 -0
- package/dist/lib/sync/status.js +166 -0
- package/dist/lib/sync/status.js.map +1 -0
- package/dist/lib/sync/summary-read.d.ts +19 -0
- package/dist/lib/sync/summary-read.d.ts.map +1 -0
- package/dist/lib/sync/summary-read.js +39 -0
- package/dist/lib/sync/summary-read.js.map +1 -0
- package/dist/lib/sync/summary.d.ts +10 -0
- package/dist/lib/sync/summary.d.ts.map +1 -0
- package/dist/lib/sync/summary.js +80 -0
- package/dist/lib/sync/summary.js.map +1 -0
- package/dist/lib/sync/sync-state.d.ts +128 -0
- package/dist/lib/sync/sync-state.d.ts.map +1 -0
- package/dist/lib/sync/sync-state.js +253 -0
- package/dist/lib/sync/sync-state.js.map +1 -0
- package/dist/lib/sync/telemetry.d.ts +20 -0
- package/dist/lib/sync/telemetry.d.ts.map +1 -0
- package/dist/lib/sync/telemetry.js +31 -0
- package/dist/lib/sync/telemetry.js.map +1 -0
- package/dist/lib/sync/threads.d.ts +48 -0
- package/dist/lib/sync/threads.d.ts.map +1 -0
- package/dist/lib/sync/threads.js +82 -0
- package/dist/lib/sync/threads.js.map +1 -0
- package/dist/lib/sync/window.d.ts +72 -0
- package/dist/lib/sync/window.d.ts.map +1 -0
- package/dist/lib/sync/window.js +112 -0
- package/dist/lib/sync/window.js.map +1 -0
- package/dist/lib/team-cta.d.ts +11 -0
- package/dist/lib/team-cta.d.ts.map +1 -0
- package/dist/lib/team-cta.js +16 -0
- package/dist/lib/team-cta.js.map +1 -0
- package/dist/lib/telemetry-ci.d.ts +2 -0
- package/dist/lib/telemetry-ci.d.ts.map +1 -0
- package/dist/lib/telemetry-ci.js +21 -0
- package/dist/lib/telemetry-ci.js.map +1 -0
- package/dist/lib/telemetry-consent.d.ts +44 -23
- package/dist/lib/telemetry-consent.d.ts.map +1 -1
- package/dist/lib/telemetry-consent.js +74 -35
- package/dist/lib/telemetry-consent.js.map +1 -1
- package/dist/lib/telemetry-env.d.ts +1 -1
- package/dist/lib/usage-telemetry.d.ts +87 -22
- package/dist/lib/usage-telemetry.d.ts.map +1 -1
- package/dist/lib/usage-telemetry.js +263 -74
- package/dist/lib/usage-telemetry.js.map +1 -1
- package/dist/lib/xdg.d.ts +27 -0
- package/dist/lib/xdg.d.ts.map +1 -0
- package/dist/lib/xdg.js +56 -0
- package/dist/lib/xdg.js.map +1 -0
- package/package.json +3 -2
- package/dist/commands/push.d.ts +0 -25
- package/dist/commands/push.d.ts.map +0 -1
- package/dist/commands/push.js +0 -98
- package/dist/commands/push.js.map +0 -1
|
@@ -1,3 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ALI-827: what an import fetched, and what it could not reach.
|
|
3
|
+
*
|
|
4
|
+
* A thin connector looks like a thin tool. `align setup --local` produced 39 Slack
|
|
5
|
+
* decisions on 2026-09-02 and nothing said why; the number this prints is the number the
|
|
6
|
+
* user was about to ask about, and printing it costs nothing - no model call, no extra
|
|
7
|
+
* request, only the counts the fetch already had in its hands.
|
|
8
|
+
*
|
|
9
|
+
* Pure: a sort and a string builder over plain numbers and strings, no I/O and no chalk,
|
|
10
|
+
* so it is unit-testable without a graph or a terminal (the found-summary.ts shape).
|
|
11
|
+
*
|
|
12
|
+
* It never states a REASON it did not measure. "30 of up to 50 requested" is derived and
|
|
13
|
+
* true; "Zoom caps a page at 30" is a fact owned by the fetcher, and duplicating it here
|
|
14
|
+
* would be a second writer of it (code-style.md). A skip line arrives from whoever
|
|
15
|
+
* measured it and is printed verbatim.
|
|
16
|
+
*/
|
|
17
|
+
import { INCOMPLETE_SKIP_KINDS } from '@aligndottech/connector-core';
|
|
18
|
+
/**
|
|
19
|
+
* L3: the line for a windowed read. Complete: what was imported and over which window.
|
|
20
|
+
* Incomplete: the date actually reached and the skip that stopped it (Decision 5), so a thin
|
|
21
|
+
* result is never mistaken for a quiet six months. The reason is the fetcher's own words
|
|
22
|
+
* (verbatim, never a raw URL: the SDK redacts them and this adds nothing back).
|
|
23
|
+
*/
|
|
24
|
+
function storedNote(s) {
|
|
25
|
+
const stored = s.stored ?? s.fetched;
|
|
26
|
+
const n = s.failedBatches ?? 0;
|
|
27
|
+
return {
|
|
28
|
+
count: stored < s.fetched || n > 0 ? `${stored} of ${s.fetched}` : String(s.fetched),
|
|
29
|
+
failed: n > 0 ? ` (${n === 1 ? 'a batch' : `${n} batches`} failed)` : '',
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
function windowedLine(s, window) {
|
|
33
|
+
const { count, failed } = storedNote(s);
|
|
34
|
+
const head = `${s.label}: imported ${count} ${s.unit}${failed}`;
|
|
35
|
+
// Said as a count, and promising nothing: the items the request budget did not reach stay thin
|
|
36
|
+
// until `align sync` finishes them. Until the background refresh exists (L6) the person runs it.
|
|
37
|
+
const tail = s.discussionPending !== undefined && s.discussionPending > 0 && s.discussionTotal !== undefined
|
|
38
|
+
? `; discussion fetched for ${s.discussionTotal - s.discussionPending} of ${s.discussionTotal}, the rest stay thin until align sync reads them (run it now)`
|
|
39
|
+
: '';
|
|
40
|
+
if (s.complete !== false)
|
|
41
|
+
return `${head} from ${window}${tail}`;
|
|
42
|
+
const cut = s.skips.find((k) => k.kind !== undefined && INCOMPLETE_SKIP_KINDS.has(k.kind));
|
|
43
|
+
const refused = s.fetched === 0 ? s.skips.find((k) => k.kind === 'shape') : undefined;
|
|
44
|
+
const atCeiling = s.requested !== undefined && Math.max(s.fetched, s.scanned ?? 0) >= s.requested;
|
|
45
|
+
const reason = (cut ?? refused)?.detail
|
|
46
|
+
?? (atCeiling ? `stopped at the ceiling of ${s.requested}` : 'the read did not reach the end of the window');
|
|
47
|
+
const reached = s.oldestReached !== undefined ? `back to ${s.oldestReached.slice(0, 10)}` : 'read stopped early';
|
|
48
|
+
return `${head}, ${reached} (not ${window}): ${reason}${tail}`;
|
|
49
|
+
}
|
|
1
50
|
export function renderCaptureReport(sources) {
|
|
2
51
|
// Never a bare header over nothing.
|
|
3
52
|
if (sources.length === 0)
|
|
@@ -29,7 +78,10 @@ export function renderCaptureReport(sources) {
|
|
|
29
78
|
? ' (0 scanned)'
|
|
30
79
|
: ` (0 kept of ${s.scanned} scanned)`;
|
|
31
80
|
}
|
|
32
|
-
|
|
81
|
+
const stored = storedNote(s);
|
|
82
|
+
lines.push(` ${s.window !== undefined ? windowedLine(s, s.window) : `${s.label}: ${stored.count} ${s.unit}${stored.failed}${shortfall}${scannedNote}`}`);
|
|
83
|
+
if (s.scopeNote !== undefined)
|
|
84
|
+
lines.push(` reads ${s.scopeNote}`);
|
|
33
85
|
for (const skip of s.skips)
|
|
34
86
|
lines.push(` ${skip.count} ${skip.detail}`);
|
|
35
87
|
}
|
|
@@ -37,7 +89,7 @@ export function renderCaptureReport(sources) {
|
|
|
37
89
|
}
|
|
38
90
|
/** The report line's inputs, from one wrapper result. `fetched` is what came BACK, not
|
|
39
91
|
* what was scanned: the user is counting decisions in their graph, not API rows. */
|
|
40
|
-
export function toCaptureSource(source, result) {
|
|
92
|
+
export function toCaptureSource(source, result, window, imported) {
|
|
41
93
|
return {
|
|
42
94
|
label: source.label,
|
|
43
95
|
unit: source.unit,
|
|
@@ -45,6 +97,14 @@ export function toCaptureSource(source, result) {
|
|
|
45
97
|
scanned: result.report.scanned,
|
|
46
98
|
...(result.report.requested !== undefined ? { requested: result.report.requested } : {}),
|
|
47
99
|
skips: result.report.skips,
|
|
100
|
+
...(window !== undefined ? { window } : {}),
|
|
101
|
+
...(imported?.stored !== undefined ? { stored: imported.stored } : {}),
|
|
102
|
+
...(imported?.failedBatches !== undefined ? { failedBatches: imported.failedBatches } : {}),
|
|
103
|
+
...(result.report.complete !== undefined ? { complete: result.report.complete } : {}),
|
|
104
|
+
...(result.report.oldestReached !== undefined ? { oldestReached: result.report.oldestReached } : {}),
|
|
105
|
+
...(result.report.discussionPending !== undefined ? { discussionPending: result.report.discussionPending } : {}),
|
|
106
|
+
...(result.report.scopeNote !== undefined ? { scopeNote: result.report.scopeNote } : {}),
|
|
107
|
+
...(result.report.discussionTotal !== undefined ? { discussionTotal: result.report.discussionTotal } : {}),
|
|
48
108
|
};
|
|
49
109
|
}
|
|
50
110
|
/**
|
|
@@ -56,8 +116,10 @@ export function toCaptureSource(source, result) {
|
|
|
56
116
|
export function createCaptureCollector() {
|
|
57
117
|
const sources = [];
|
|
58
118
|
return {
|
|
119
|
+
/** Returns the same object, so the import that follows can fill in what it stored (L3). */
|
|
59
120
|
add(source) {
|
|
60
121
|
sources.push(source);
|
|
122
|
+
return source;
|
|
61
123
|
},
|
|
62
124
|
render() {
|
|
63
125
|
return renderCaptureReport(sources);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capture-report.js","sourceRoot":"","sources":["../../src/lib/capture-report.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"capture-report.js","sourceRoot":"","sources":["../../src/lib/capture-report.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/config.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type WrittenConfig } from './safe-config-write.js';
|
|
2
2
|
import { type StoredProviderId } from './llm-providers.js';
|
|
3
|
+
import type { StoredScope } from './scope-values.js';
|
|
3
4
|
export type EnvName = 'local' | 'preview' | 'prod';
|
|
4
5
|
export interface EnvironmentConfig {
|
|
5
6
|
gatewayUrl: string;
|
|
@@ -9,6 +10,8 @@ export interface EnvironmentConfig {
|
|
|
9
10
|
mode: 'demo' | 'auth' | 'local-embedded';
|
|
10
11
|
localDbPath?: string;
|
|
11
12
|
}
|
|
13
|
+
/** The gateway URL an environment uses when nothing overrides it (ALIGN_GATEWAY_URL, a saved value). */
|
|
14
|
+
export declare function defaultGatewayUrlFor(env: string): string;
|
|
12
15
|
/**
|
|
13
16
|
* ALI-618: local-embedded mode never makes an HTTP call for its own operations (it reads a
|
|
14
17
|
* local embedded DB - see gateway-client.ts's `createLocalGatewayClient` branch), so the
|
|
@@ -99,6 +102,19 @@ export declare function createConfigStore(): {
|
|
|
99
102
|
setConnectorCloudId(env: EnvName, connectorKey: string, cloudId: string): void;
|
|
100
103
|
getConnectorSiteBase(env: EnvName, connectorKey: string): string | null;
|
|
101
104
|
setConnectorSiteBase(env: EnvName, connectorKey: string, siteBase: string): void;
|
|
105
|
+
/**
|
|
106
|
+
* L4: what the person chose to read for a source, kept beside its token under `<env>:<source>:scope` so forgetting the
|
|
107
|
+
* connector removes it too. Non-secret, and not a `:field:` key, so no fetch is ever handed it as a credential.
|
|
108
|
+
* An entry that is PRESENT but unreadable (truncated, or written by a newer CLI) reads as yours, never as "no choice": for GitHub
|
|
109
|
+
* and GitLab "no choice" means "widen from the folder", and a damaged record must not do that. Only an absent entry is null.
|
|
110
|
+
*/
|
|
111
|
+
getConnectorScope(env: EnvName, connectorKey: string): StoredScope | null;
|
|
112
|
+
setConnectorScope(env: EnvName, connectorKey: string, scope: StoredScope): void;
|
|
113
|
+
clearConnectorScope(env: EnvName, connectorKey: string): void;
|
|
114
|
+
clearTeamScopeDisclosed(source: string): void;
|
|
115
|
+
getTeamScopeDisclosedFor(): string[];
|
|
116
|
+
isTeamScopeDisclosed(source: string, scopeKey: string): boolean;
|
|
117
|
+
markTeamScopeDisclosed(source: string, scopeKey: string): void;
|
|
102
118
|
setLocalMode(dbPath: string): void;
|
|
103
119
|
clearLocalMode(): void;
|
|
104
120
|
clear(env: EnvName): void;
|
|
@@ -108,6 +124,12 @@ export declare function createConfigStore(): {
|
|
|
108
124
|
isLaunchOff(): boolean;
|
|
109
125
|
setLaunchOff(off: boolean): void;
|
|
110
126
|
clearAgent(): void;
|
|
127
|
+
isBackgroundSyncOff(): boolean;
|
|
128
|
+
setBackgroundSyncOff(off: boolean): void;
|
|
129
|
+
backgroundSyncNoticeShown(): boolean;
|
|
130
|
+
markBackgroundSyncNoticeShown(at: string): void;
|
|
131
|
+
getReauthLineShownAt(): string | undefined;
|
|
132
|
+
markReauthLineShown(at: string): void;
|
|
111
133
|
getWrittenConfigs(): Record<string, WrittenConfig>;
|
|
112
134
|
recordWrittenConfig(file: string, entry: WrittenConfig): void;
|
|
113
135
|
/** Forget only the files whose undo finished; a skipped file keeps its record. */
|
|
@@ -118,6 +140,13 @@ export declare function createConfigStore(): {
|
|
|
118
140
|
markWriteRefused(file: string): void;
|
|
119
141
|
getTelemetryConsent(): TelemetryConsent | undefined;
|
|
120
142
|
setTelemetryConsent(value: TelemetryConsent): void;
|
|
143
|
+
setTelemetryOffByEnv(via: string, now?: Date): void;
|
|
144
|
+
getTelemetryOffByEnv(): {
|
|
145
|
+
via: string;
|
|
146
|
+
at: string;
|
|
147
|
+
} | undefined;
|
|
148
|
+
getTelemetryNoticeShownAt(): string | undefined;
|
|
149
|
+
markTelemetryNoticeShown(): void;
|
|
121
150
|
getProviderKey(provider: GuidedProviderKey): string | null;
|
|
122
151
|
setProviderKey(provider: GuidedProviderKey, key: string): void;
|
|
123
152
|
clearProviderKey(provider: GuidedProviderKey): void;
|
|
@@ -127,6 +156,8 @@ export declare function createConfigStore(): {
|
|
|
127
156
|
isAskKeyOfferDismissed(): boolean;
|
|
128
157
|
setAskKeyOfferDismissed(dismissed: boolean): void;
|
|
129
158
|
wasFunnelStageRecorded(stage: string): boolean;
|
|
159
|
+
claimFunnelStage(stage: string): boolean;
|
|
160
|
+
releaseFunnelStage(stage: string): boolean;
|
|
130
161
|
markFunnelStageRecorded(stage: string): void;
|
|
131
162
|
};
|
|
132
163
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/lib/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAIA,OAAO,EAAsB,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAsB,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/config.js
CHANGED
|
@@ -9,6 +9,10 @@ const DEFAULTS = {
|
|
|
9
9
|
preview: { gatewayUrl: 'https://api.preview.align.tech', authToken: null, tenantId: null, mode: 'auth' },
|
|
10
10
|
prod: { gatewayUrl: 'https://api.align.tech', authToken: null, tenantId: null, mode: 'auth' },
|
|
11
11
|
};
|
|
12
|
+
/** The gateway URL an environment uses when nothing overrides it (ALIGN_GATEWAY_URL, a saved value). */
|
|
13
|
+
export function defaultGatewayUrlFor(env) {
|
|
14
|
+
return DEFAULTS[env]?.gatewayUrl ?? '';
|
|
15
|
+
}
|
|
12
16
|
/**
|
|
13
17
|
* ALI-618: local-embedded mode never makes an HTTP call for its own operations (it reads a
|
|
14
18
|
* local embedded DB - see gateway-client.ts's `createLocalGatewayClient` branch), so the
|
|
@@ -159,11 +163,17 @@ export function createConfigStore() {
|
|
|
159
163
|
/** Drops every key this connector owns - token, extra fields, and any OAuth cloudId/siteBase. */
|
|
160
164
|
forgetConnector(env, connectorKey) {
|
|
161
165
|
const owned = `${env}:${connectorKey}`;
|
|
166
|
+
if (env === 'local') {
|
|
167
|
+
const told = store.get('teamScopeDisclosedFor') ?? [];
|
|
168
|
+
store.set('teamScopeDisclosedFor', told.filter((e) => !e.startsWith(`${connectorKey}|`)));
|
|
169
|
+
}
|
|
162
170
|
const kept = Object.fromEntries(Object.entries(getTokens()).filter(([key]) => key !== owned && !key.startsWith(`${owned}:`)));
|
|
163
171
|
store.set('connectorTokens', kept);
|
|
164
172
|
},
|
|
165
173
|
/** Every connector in one environment. The other environments' credentials are untouched. */
|
|
166
174
|
forgetAllConnectors(env) {
|
|
175
|
+
if (env === 'local')
|
|
176
|
+
store.set('teamScopeDisclosedFor', []);
|
|
167
177
|
const kept = Object.fromEntries(Object.entries(getTokens()).filter(([key]) => !key.startsWith(`${env}:`)));
|
|
168
178
|
store.set('connectorTokens', kept);
|
|
169
179
|
},
|
|
@@ -183,6 +193,66 @@ export function createConfigStore() {
|
|
|
183
193
|
const tokens = store.get('connectorTokens');
|
|
184
194
|
store.set('connectorTokens', { ...tokens, [`${env}:${connectorKey}:siteBase`]: siteBase });
|
|
185
195
|
},
|
|
196
|
+
/**
|
|
197
|
+
* L4: what the person chose to read for a source, kept beside its token under `<env>:<source>:scope` so forgetting the
|
|
198
|
+
* connector removes it too. Non-secret, and not a `:field:` key, so no fetch is ever handed it as a credential.
|
|
199
|
+
* An entry that is PRESENT but unreadable (truncated, or written by a newer CLI) reads as yours, never as "no choice": for GitHub
|
|
200
|
+
* and GitLab "no choice" means "widen from the folder", and a damaged record must not do that. Only an absent entry is null.
|
|
201
|
+
*/
|
|
202
|
+
// KNOWN LIMIT (lost updates): this store reads the whole file and writes the whole file, and every setter here is a read-modify-write of
|
|
203
|
+
// one key. Two Align processes writing at the same instant can lose one write. Re-reading just before each set (as the setters do) keeps the
|
|
204
|
+
// window to milliseconds; a lock was judged not worth its cost for a settings file. The visible failure for a scope is the old scope staying in force.
|
|
205
|
+
getConnectorScope(env, connectorKey) {
|
|
206
|
+
const raw = getTokens()[`${env}:${connectorKey}:scope`];
|
|
207
|
+
if (raw === undefined)
|
|
208
|
+
return null;
|
|
209
|
+
try {
|
|
210
|
+
const v = JSON.parse(raw);
|
|
211
|
+
if (v.kind === 'yours')
|
|
212
|
+
return { kind: 'yours' };
|
|
213
|
+
const strings = (x) => Array.isArray(x) && x.length > 0 && x.every((e) => typeof e === 'string');
|
|
214
|
+
if (v.kind === 'team' && strings(v.values) && strings(v.labels)) {
|
|
215
|
+
const p = v.pending;
|
|
216
|
+
if (p === undefined)
|
|
217
|
+
return { kind: 'team', values: v.values, labels: v.labels };
|
|
218
|
+
// A waiting team scope whose "previous" cannot be read stays waiting on yours: never an active team read.
|
|
219
|
+
const prev = p.previous;
|
|
220
|
+
const previous = prev === null || prev === undefined ? null
|
|
221
|
+
: prev.kind === 'team' && strings(prev.values) && strings(prev.labels) ? { kind: 'team', values: prev.values, labels: prev.labels } : { kind: 'yours' };
|
|
222
|
+
return { kind: 'team', values: v.values, labels: v.labels, pending: { previous } };
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
catch { /* damaged: falls through to yours */ }
|
|
226
|
+
return { kind: 'yours' };
|
|
227
|
+
},
|
|
228
|
+
setConnectorScope(env, connectorKey, scope) {
|
|
229
|
+
store.set('connectorTokens', { ...getTokens(), [`${env}:${connectorKey}:scope`]: JSON.stringify(scope) });
|
|
230
|
+
},
|
|
231
|
+
clearConnectorScope(env, connectorKey) {
|
|
232
|
+
const { [`${env}:${connectorKey}:scope`]: _gone, ...kept } = getTokens();
|
|
233
|
+
store.set('connectorTokens', kept);
|
|
234
|
+
},
|
|
235
|
+
// L4: the one-time team-scope disclosure, remembered per source and scope so it prints before the FIRST team read of each.
|
|
236
|
+
// Forgetting a connector, or narrowing it to yours, forgets that its scopes were told: a wider one later is announced again.
|
|
237
|
+
clearTeamScopeDisclosed(source) {
|
|
238
|
+
const existing = store.get('teamScopeDisclosedFor') ?? [];
|
|
239
|
+
const kept = existing.filter((e) => !e.startsWith(`${source}|`));
|
|
240
|
+
if (kept.length !== existing.length)
|
|
241
|
+
store.set('teamScopeDisclosedFor', kept);
|
|
242
|
+
},
|
|
243
|
+
getTeamScopeDisclosedFor() {
|
|
244
|
+
return store.get('teamScopeDisclosedFor') ?? [];
|
|
245
|
+
},
|
|
246
|
+
// Per (source, scope): told about repo A is not told about a wider scope set later.
|
|
247
|
+
isTeamScopeDisclosed(source, scopeKey) {
|
|
248
|
+
return (store.get('teamScopeDisclosedFor') ?? []).includes(`${source}|${scopeKey}`);
|
|
249
|
+
},
|
|
250
|
+
markTeamScopeDisclosed(source, scopeKey) {
|
|
251
|
+
const existing = store.get('teamScopeDisclosedFor') ?? [];
|
|
252
|
+
const entry = `${source}|${scopeKey}`;
|
|
253
|
+
if (!existing.includes(entry))
|
|
254
|
+
store.set('teamScopeDisclosedFor', [...existing, entry]);
|
|
255
|
+
},
|
|
186
256
|
setLocalMode(dbPath) {
|
|
187
257
|
const envs = getEnvs();
|
|
188
258
|
store.set('environments', { ...envs, local: { ...(envs['local'] ?? {}), mode: 'local-embedded', localDbPath: dbPath } });
|
|
@@ -234,6 +304,30 @@ export function createConfigStore() {
|
|
|
234
304
|
clearAgent() {
|
|
235
305
|
store.delete('agent');
|
|
236
306
|
},
|
|
307
|
+
// L6: `align sync --off` / `--on`. Read at launch; the background refresh never starts while it is set.
|
|
308
|
+
isBackgroundSyncOff() {
|
|
309
|
+
return store.get('backgroundSyncOff') === true;
|
|
310
|
+
},
|
|
311
|
+
setBackgroundSyncOff(off) {
|
|
312
|
+
if (off)
|
|
313
|
+
store.set('backgroundSyncOff', true);
|
|
314
|
+
else
|
|
315
|
+
store.delete('backgroundSyncOff');
|
|
316
|
+
},
|
|
317
|
+
// L6: the one-time disclosure line before the first background refresh. Its presence is the "shown" flag.
|
|
318
|
+
backgroundSyncNoticeShown() {
|
|
319
|
+
return typeof store.get('backgroundSyncNoticeShownAt') === 'string';
|
|
320
|
+
},
|
|
321
|
+
markBackgroundSyncNoticeShown(at) {
|
|
322
|
+
store.set('backgroundSyncNoticeShownAt', at);
|
|
323
|
+
},
|
|
324
|
+
// L6: when the "reconnect this source" line last printed, so it is not repeated on every launch.
|
|
325
|
+
getReauthLineShownAt() {
|
|
326
|
+
return store.get('reauthLineShownAt');
|
|
327
|
+
},
|
|
328
|
+
markReauthLineShown(at) {
|
|
329
|
+
store.set('reauthLineShownAt', at);
|
|
330
|
+
},
|
|
237
331
|
// C4: every other-product config file align wrote (safe-config-write.ts), so
|
|
238
332
|
// `align use --undo` can put each one back. Keyed by absolute path; the whole map is
|
|
239
333
|
// read and set as one value because conf treats a dot in a key as a path separator.
|
|
@@ -276,8 +370,34 @@ export function createConfigStore() {
|
|
|
276
370
|
getTelemetryConsent() {
|
|
277
371
|
return store.get('telemetryConsent');
|
|
278
372
|
},
|
|
373
|
+
// Any explicit choice clears a sticky env opt-out: `align telemetry on` must really turn it back on.
|
|
279
374
|
setTelemetryConsent(value) {
|
|
280
375
|
store.set('telemetryConsent', value);
|
|
376
|
+
store.delete('telemetryOffReason');
|
|
377
|
+
store.delete('telemetryOffVia');
|
|
378
|
+
store.delete('telemetryOffAt');
|
|
379
|
+
},
|
|
380
|
+
// A DO_NOT_TRACK / ALIGN_TELEMETRY opt-out, made sticky: stored as 'off' so processes that do
|
|
381
|
+
// not inherit the variable (an MCP server with a trimmed env, the background sync child) honour it.
|
|
382
|
+
setTelemetryOffByEnv(via, now = new Date()) {
|
|
383
|
+
store.set('telemetryConsent', 'off');
|
|
384
|
+
store.set('telemetryOffReason', 'env');
|
|
385
|
+
store.set('telemetryOffVia', via);
|
|
386
|
+
store.set('telemetryOffAt', now.toISOString());
|
|
387
|
+
},
|
|
388
|
+
getTelemetryOffByEnv() {
|
|
389
|
+
const via = store.get('telemetryOffVia');
|
|
390
|
+
const at = store.get('telemetryOffAt');
|
|
391
|
+
return store.get('telemetryOffReason') === 'env' && via && at ? { via, at } : undefined;
|
|
392
|
+
},
|
|
393
|
+
// C6: when the one-time telemetry notice printed (telemetry-consent.ts). Its presence is the
|
|
394
|
+
// disclosure local-mode sends wait on; the timestamp says when, for `align telemetry status`.
|
|
395
|
+
getTelemetryNoticeShownAt() {
|
|
396
|
+
return store.get('telemetryNoticeShownAt');
|
|
397
|
+
},
|
|
398
|
+
markTelemetryNoticeShown() {
|
|
399
|
+
if (!store.get('telemetryNoticeShownAt'))
|
|
400
|
+
store.set('telemetryNoticeShownAt', new Date().toISOString());
|
|
281
401
|
},
|
|
282
402
|
// ALI-1284: the key `align setup`'s guided free-tier path collected, persisted the same
|
|
283
403
|
// way a local connector's read-only token already is (saveConnectorFields above) - one
|
|
@@ -326,6 +446,25 @@ export function createConfigStore() {
|
|
|
326
446
|
wasFunnelStageRecorded(stage) {
|
|
327
447
|
return (store.get('funnelStagesRecorded') ?? []).includes(stage);
|
|
328
448
|
},
|
|
449
|
+
// C6: check and mark in one call, re-reading the store, so the install beacon is marked
|
|
450
|
+
// before it is sent. Narrows the double-send window between two first runs; it is not a
|
|
451
|
+
// lock (see recordInstallBeacon).
|
|
452
|
+
claimFunnelStage(stage) {
|
|
453
|
+
const existing = store.get('funnelStagesRecorded') ?? [];
|
|
454
|
+
if (existing.includes(stage))
|
|
455
|
+
return false;
|
|
456
|
+
store.set('funnelStagesRecorded', [...existing, stage]);
|
|
457
|
+
return true;
|
|
458
|
+
},
|
|
459
|
+
// The undo of claimFunnelStage, for a claimed send that was not delivered: removes the stage
|
|
460
|
+
// only if it is there, re-reading the store, so the next run can claim it again.
|
|
461
|
+
releaseFunnelStage(stage) {
|
|
462
|
+
const existing = store.get('funnelStagesRecorded') ?? [];
|
|
463
|
+
if (!existing.includes(stage))
|
|
464
|
+
return false;
|
|
465
|
+
store.set('funnelStagesRecorded', existing.filter((s) => s !== stage));
|
|
466
|
+
return true;
|
|
467
|
+
},
|
|
329
468
|
markFunnelStageRecorded(stage) {
|
|
330
469
|
const existing = store.get('funnelStagesRecorded') ?? [];
|
|
331
470
|
if (!existing.includes(stage))
|
package/dist/lib/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A question nobody answers must not hold anything. A terminal that exists but has nobody behind it (a pty an agent opened and never
|
|
3
|
+
* typed into) would wait on a confirm forever, and a sync holding its lock while it waits blocks every other sync for 30 minutes. After
|
|
4
|
+
* `ms` the answer is No, the same as a closed stdin.
|
|
5
|
+
*/
|
|
6
|
+
export declare const CONFIRM_TIMEOUT_MS = 60000;
|
|
7
|
+
export declare function askWithTimeout(ask: () => Promise<boolean>, ms?: number): Promise<boolean>;
|
|
8
|
+
//# sourceMappingURL=confirm-timeout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"confirm-timeout.d.ts","sourceRoot":"","sources":["../../src/lib/confirm-timeout.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,QAAS,CAAC;AAEzC,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,GAAE,MAA2B,GAAG,OAAO,CAAC,OAAO,CAAC,CAQnH"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A question nobody answers must not hold anything. A terminal that exists but has nobody behind it (a pty an agent opened and never
|
|
3
|
+
* typed into) would wait on a confirm forever, and a sync holding its lock while it waits blocks every other sync for 30 minutes. After
|
|
4
|
+
* `ms` the answer is No, the same as a closed stdin.
|
|
5
|
+
*/
|
|
6
|
+
export const CONFIRM_TIMEOUT_MS = 60_000;
|
|
7
|
+
export async function askWithTimeout(ask, ms = CONFIRM_TIMEOUT_MS) {
|
|
8
|
+
let timer;
|
|
9
|
+
const no = new Promise((resolve) => { timer = setTimeout(() => resolve(false), ms); timer.unref?.(); });
|
|
10
|
+
try {
|
|
11
|
+
return await Promise.race([ask().catch(() => false), no]);
|
|
12
|
+
}
|
|
13
|
+
finally {
|
|
14
|
+
if (timer !== undefined)
|
|
15
|
+
clearTimeout(timer);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=confirm-timeout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"confirm-timeout.js","sourceRoot":"","sources":["../../src/lib/confirm-timeout.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAEzC,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAA2B,EAAE,KAAa,kBAAkB;IAC/F,IAAI,KAAgD,CAAC;IACrD,MAAM,EAAE,GAAG,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,EAAE,GAAG,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACjH,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC5D,CAAC;YAAS,CAAC;QACT,IAAI,KAAK,KAAK,SAAS;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { MarkMeta } from './judgements-db.js';
|
|
2
|
+
export interface Retrieved {
|
|
3
|
+
decisionId: string;
|
|
4
|
+
}
|
|
5
|
+
/** What a retrieval left out because of marks, and when each AGENT-made mark that did it was made. */
|
|
6
|
+
export interface Dropped {
|
|
7
|
+
dropped: number;
|
|
8
|
+
notes: string[];
|
|
9
|
+
agentApplied: string[];
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Walk the ranked rows, keeping up to `limit` that are not hidden. A hidden row counts as dropped
|
|
13
|
+
* only if it ranked inside the cut: a hidden decision that would not have been returned anyway
|
|
14
|
+
* is not "left out of" anything. `scope` is the word the note uses for what was left out of
|
|
15
|
+
* ("check" or "answer").
|
|
16
|
+
*/
|
|
17
|
+
export declare function splitRetrieved<T extends Retrieved>(raw: readonly T[], hidden: ReadonlyMap<string, MarkMeta>, limit: number, titleOf: (id: string) => string | undefined, scope?: 'check' | 'answer'): Dropped & {
|
|
18
|
+
kept: T[];
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* The line every check carries while an AGENT's mark changed what it returned: it hid a hit for this
|
|
22
|
+
* file set, left a decision out, or declared one replaced. A mark that did not apply to this check
|
|
23
|
+
* says nothing, so the banner does not become noise that is read past.
|
|
24
|
+
*/
|
|
25
|
+
export declare function bannerFor(agentApplied: readonly string[]): string[];
|
|
26
|
+
/** The answer when nothing is left to check. With drops it carries the reason; without, it is the plain empty answer. */
|
|
27
|
+
export declare function emptyCheck(d: Dropped): {
|
|
28
|
+
status: 'no-context';
|
|
29
|
+
confidence: number;
|
|
30
|
+
relevant_decisions: [];
|
|
31
|
+
conflicts: [];
|
|
32
|
+
message: string;
|
|
33
|
+
notes?: string[];
|
|
34
|
+
};
|
|
35
|
+
/** Every note a check carries beyond the conflicts themselves, the banner first. */
|
|
36
|
+
export declare function checkNotes(dbPath: string, judgeId: string | undefined, left: Dropped, decisions: ReadonlyArray<{
|
|
37
|
+
id: string;
|
|
38
|
+
title: string;
|
|
39
|
+
successor?: {
|
|
40
|
+
title: string;
|
|
41
|
+
};
|
|
42
|
+
}>, reviewed: {
|
|
43
|
+
notes: string[];
|
|
44
|
+
agentApplied: string[];
|
|
45
|
+
}, files: readonly string[]): string[];
|
|
46
|
+
/** The file list a check offers for marking, or undefined when the set has no key (none, too many, or an unnameable path). */
|
|
47
|
+
export declare function offeredFiles(files: readonly string[]): readonly string[] | undefined;
|
|
48
|
+
//# sourceMappingURL=check-marks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-marks.d.ts","sourceRoot":"","sources":["../../../src/lib/curation/check-marks.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAInD,MAAM,WAAW,SAAS;IAAG,UAAU,EAAE,MAAM,CAAA;CAAE;AAEjD,sGAAsG;AACtG,MAAM,WAAW,OAAO;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAE;AAErF;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,SAAS,EAChD,GAAG,EAAE,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,EAAE,KAAK,GAAE,OAAO,GAAG,QAAkB,GACxJ,OAAO,GAAG;IAAE,IAAI,EAAE,CAAC,EAAE,CAAA;CAAE,CAYzB;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAKnE;AAED,yHAAyH;AACzH,wBAAgB,UAAU,CAAC,CAAC,EAAE,OAAO,GAAG;IACtC,MAAM,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,EAAE,CAAC;IAAC,SAAS,EAAE,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CACpH,CAIA;AAED,oFAAoF;AACpF,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,OAAO,EAC1D,SAAS,EAAE,aAAa,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,EACtF,QAAQ,EAAE;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAE,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAC9E,MAAM,EAAE,CAeV;AAED,8HAA8H;AAC9H,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,GAAG,SAAS,CAEpF"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LM: what a person's marks take out of a retrieval, said out loud.
|
|
3
|
+
*
|
|
4
|
+
* A mark may keep a related decision out of `ask` and `check`. That is legitimate (a person said
|
|
5
|
+
* it is not a decision), but a check that was red and turns green because something was dropped
|
|
6
|
+
* must never look like a check that found nothing. So every decision dropped by a mark is named
|
|
7
|
+
* with who marked it and when, and a retrieval whose ONLY candidates were dropped answers
|
|
8
|
+
* "no-context" WITH the note that says so.
|
|
9
|
+
*/
|
|
10
|
+
import { droppedNote, hiddenSummary, supersedeNote } from './guardrail.js';
|
|
11
|
+
import { contextKeyFor, MAX_CHECK_FILES } from './mark.js';
|
|
12
|
+
import { hasUnsafeChars } from './text.js';
|
|
13
|
+
/**
|
|
14
|
+
* Walk the ranked rows, keeping up to `limit` that are not hidden. A hidden row counts as dropped
|
|
15
|
+
* only if it ranked inside the cut: a hidden decision that would not have been returned anyway
|
|
16
|
+
* is not "left out of" anything. `scope` is the word the note uses for what was left out of
|
|
17
|
+
* ("check" or "answer").
|
|
18
|
+
*/
|
|
19
|
+
export function splitRetrieved(raw, hidden, limit, titleOf, scope = 'check') {
|
|
20
|
+
const kept = [];
|
|
21
|
+
const out = { dropped: 0, notes: [], agentApplied: [] };
|
|
22
|
+
for (const row of raw) {
|
|
23
|
+
if (kept.length >= limit)
|
|
24
|
+
break;
|
|
25
|
+
const meta = hidden.get(row.decisionId);
|
|
26
|
+
if (!meta) {
|
|
27
|
+
kept.push(row);
|
|
28
|
+
continue;
|
|
29
|
+
}
|
|
30
|
+
out.dropped += 1;
|
|
31
|
+
out.notes.push(droppedNote(titleOf(row.decisionId) ?? row.decisionId, meta, scope));
|
|
32
|
+
if (meta.agent_id !== null)
|
|
33
|
+
out.agentApplied.push(meta.judged_at);
|
|
34
|
+
}
|
|
35
|
+
return { kept, ...out };
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* The line every check carries while an AGENT's mark changed what it returned: it hid a hit for this
|
|
39
|
+
* file set, left a decision out, or declared one replaced. A mark that did not apply to this check
|
|
40
|
+
* says nothing, so the banner does not become noise that is read past.
|
|
41
|
+
*/
|
|
42
|
+
export function bannerFor(agentApplied) {
|
|
43
|
+
if (agentApplied.length === 0)
|
|
44
|
+
return [];
|
|
45
|
+
const n = agentApplied.length;
|
|
46
|
+
const since = [...agentApplied].sort()[0].slice(0, 10);
|
|
47
|
+
return [`${n} mark${n === 1 ? '' : 's'} by agents since ${since} affect${n === 1 ? 's' : ''} this check (align mark --list)`];
|
|
48
|
+
}
|
|
49
|
+
/** The answer when nothing is left to check. With drops it carries the reason; without, it is the plain empty answer. */
|
|
50
|
+
export function emptyCheck(d) {
|
|
51
|
+
if (d.dropped === 0)
|
|
52
|
+
return { status: 'no-context', confidence: 0, relevant_decisions: [], conflicts: [], message: 'No related decisions found in your local graph.' };
|
|
53
|
+
const summary = hiddenSummary(d.dropped);
|
|
54
|
+
return { status: 'no-context', confidence: 0, relevant_decisions: [], conflicts: [], message: `${summary}.`, notes: [...bannerFor(d.agentApplied), ...d.notes, summary] };
|
|
55
|
+
}
|
|
56
|
+
/** Every note a check carries beyond the conflicts themselves, the banner first. */
|
|
57
|
+
export function checkNotes(dbPath, judgeId, left, decisions, reviewed, files) {
|
|
58
|
+
const applied = [...left.agentApplied, ...reviewed.agentApplied];
|
|
59
|
+
const notes = [...left.notes];
|
|
60
|
+
if (judgeId) {
|
|
61
|
+
for (const d of decisions) {
|
|
62
|
+
const s = d.successor ? supersedeNote(dbPath, judgeId, d.id, d.title, d.successor.title) : null;
|
|
63
|
+
if (!s)
|
|
64
|
+
continue;
|
|
65
|
+
notes.push(s.note);
|
|
66
|
+
if (s.agentJudgedAt)
|
|
67
|
+
applied.push(s.agentJudgedAt);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
notes.push(...reviewed.notes);
|
|
71
|
+
if (files.some(hasUnsafeChars))
|
|
72
|
+
notes.push('This check touches a path with control characters or invisible ones, so no file-set mark can hide or annotate anything in it.');
|
|
73
|
+
else if (files.length > MAX_CHECK_FILES)
|
|
74
|
+
notes.push(`This check covers ${files.length} files, more than ${MAX_CHECK_FILES}, so no file-set mark can hide or annotate anything in it.`);
|
|
75
|
+
return [...bannerFor(applied), ...notes];
|
|
76
|
+
}
|
|
77
|
+
/** The file list a check offers for marking, or undefined when the set has no key (none, too many, or an unnameable path). */
|
|
78
|
+
export function offeredFiles(files) {
|
|
79
|
+
return contextKeyFor(files) === null ? undefined : files;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=check-marks.js.map
|