@aligndottech/cli 0.66.0 → 0.67.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 +33 -2
- package/dist/commands/check.d.ts +19 -1
- package/dist/commands/check.d.ts.map +1 -1
- package/dist/commands/check.js +144 -29
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/import/docs.js +2 -2
- package/dist/commands/import/docs.js.map +1 -1
- package/dist/commands/mcp.d.ts.map +1 -1
- package/dist/commands/mcp.js +3 -1
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/registry.d.ts.map +1 -1
- package/dist/commands/registry.js +3 -0
- package/dist/commands/registry.js.map +1 -1
- package/dist/commands/rule.d.ts +28 -0
- package/dist/commands/rule.d.ts.map +1 -0
- package/dist/commands/rule.js +100 -0
- package/dist/commands/rule.js.map +1 -0
- package/dist/lib/advisory-verdict.d.ts +2 -0
- package/dist/lib/advisory-verdict.d.ts.map +1 -1
- package/dist/lib/advisory-verdict.js +2 -0
- package/dist/lib/advisory-verdict.js.map +1 -1
- package/dist/lib/co-change-check.d.ts +33 -0
- package/dist/lib/co-change-check.d.ts.map +1 -0
- package/dist/lib/co-change-check.js +95 -0
- package/dist/lib/co-change-check.js.map +1 -0
- package/dist/lib/co-change-rule.d.ts +11 -0
- package/dist/lib/co-change-rule.d.ts.map +1 -0
- package/dist/lib/co-change-rule.js +2 -0
- package/dist/lib/co-change-rule.js.map +1 -0
- package/dist/lib/co-change-store.d.ts +25 -0
- package/dist/lib/co-change-store.d.ts.map +1 -0
- package/dist/lib/co-change-store.js +142 -0
- package/dist/lib/co-change-store.js.map +1 -0
- package/dist/lib/co-change.d.ts +54 -0
- package/dist/lib/co-change.d.ts.map +1 -0
- package/dist/lib/co-change.js +120 -0
- package/dist/lib/co-change.js.map +1 -0
- package/dist/lib/commit-shape.d.ts +16 -0
- package/dist/lib/commit-shape.d.ts.map +1 -1
- package/dist/lib/commit-shape.js +34 -2
- package/dist/lib/commit-shape.js.map +1 -1
- package/dist/lib/decision-links.d.ts +24 -0
- package/dist/lib/decision-links.d.ts.map +1 -1
- package/dist/lib/decision-links.js +69 -1
- package/dist/lib/decision-links.js.map +1 -1
- package/dist/lib/fetchers/docs-conventions.d.ts +29 -0
- package/dist/lib/fetchers/docs-conventions.d.ts.map +1 -0
- package/dist/lib/fetchers/docs-conventions.js +95 -0
- package/dist/lib/fetchers/docs-conventions.js.map +1 -0
- package/dist/lib/fetchers/docs.d.ts +6 -0
- package/dist/lib/fetchers/docs.d.ts.map +1 -1
- package/dist/lib/fetchers/docs.js +79 -11
- package/dist/lib/fetchers/docs.js.map +1 -1
- package/dist/lib/gateway-client.d.ts +4 -0
- package/dist/lib/gateway-client.d.ts.map +1 -1
- package/dist/lib/gateway-client.js.map +1 -1
- package/dist/lib/git.d.ts.map +1 -1
- package/dist/lib/git.js +36 -10
- package/dist/lib/git.js.map +1 -1
- package/dist/lib/local-db-cochange.d.ts +17 -0
- package/dist/lib/local-db-cochange.d.ts.map +1 -0
- package/dist/lib/local-db-cochange.js +23 -0
- package/dist/lib/local-db-cochange.js.map +1 -0
- package/dist/lib/local-db-migrate.d.ts.map +1 -1
- package/dist/lib/local-db-migrate.js +19 -0
- package/dist/lib/local-db-migrate.js.map +1 -1
- package/dist/lib/local-db.js +1 -1
- package/dist/lib/local-db.js.map +1 -1
- package/dist/lib/local-gateway-client.d.ts.map +1 -1
- package/dist/lib/local-gateway-client.js +20 -0
- package/dist/lib/local-gateway-client.js.map +1 -1
- package/dist/lib/local-ingest.d.ts +2 -0
- package/dist/lib/local-ingest.d.ts.map +1 -1
- package/dist/lib/local-ingest.js.map +1 -1
- package/dist/lib/mcp-instructions.shared.d.ts +1 -1
- package/dist/lib/mcp-instructions.shared.d.ts.map +1 -1
- package/dist/lib/mcp-instructions.shared.js +3 -3
- package/dist/lib/mcp-instructions.shared.js.map +1 -1
- package/dist/lib/mcp-timeline-tools.d.ts.map +1 -1
- package/dist/lib/mcp-timeline-tools.js +5 -3
- package/dist/lib/mcp-timeline-tools.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -32,6 +32,29 @@ and refreshes connected sources in the background, at most every 15 minutes per
|
|
|
32
32
|
|
|
33
33
|
MIT, no account needed. Beta, pre-1.0.
|
|
34
34
|
|
|
35
|
+
## Try it on a repo you didn't write
|
|
36
|
+
|
|
37
|
+
Fastify decided its error handler only keeps status codes from 400 to 599 (PR #7089). Nothing
|
|
38
|
+
in the code says why. Ask your agent to undo it and see what happens:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
git clone https://github.com/fastify/fastify && cd fastify
|
|
42
|
+
align # pick Claude Code; it builds the graph from git history
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Then, in Claude Code:
|
|
46
|
+
|
|
47
|
+
```text
|
|
48
|
+
Errors with a 1xx-3xx statusCode currently fall back to 500.
|
|
49
|
+
Change lib/error-status.js so they keep their status code.
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
In our run on 28 Oct 2026, the edit hook found #7089 from `git blame` on the lines being
|
|
53
|
+
changed, with no AI key, and Claude stopped before editing and cited it. On 4 Nov 2026, on
|
|
54
|
+
0.66.1, Claude asked Align over MCP before it tried an edit, so the hook never fired. It cited
|
|
55
|
+
#7089 and #601 (2018: "do not allow set status code to lower than 400"), changed nothing, and
|
|
56
|
+
asked what to do. Models are not deterministic, so your run may word it differently.
|
|
57
|
+
|
|
35
58
|
## Install
|
|
36
59
|
|
|
37
60
|
- **npm:** `npm install -g @aligndottech/cli` (Node 22.16+).
|
|
@@ -76,7 +99,9 @@ Hook limits worth knowing:
|
|
|
76
99
|
from the vendors' docs or source, and Codex, Cursor and Copilot CLI have not been checked
|
|
77
100
|
against a real payload. The last three read hooks from a user-level file (`~/.codex/hooks.json`,
|
|
78
101
|
`~/.cursor/hooks.json`, `~/.copilot/hooks/align.json`).
|
|
79
|
-
- pi's MCP entry needs the third-party `pi-mcp-adapter` package installed in pi.
|
|
102
|
+
- pi's MCP entry needs the third-party `pi-mcp-adapter` package installed in pi. pi also blocks a
|
|
103
|
+
repo's MCP servers until you trust the project, and Align's entry counts as one, so accept pi's
|
|
104
|
+
trust prompt or Align's tools won't load. `pi -p` skips the prompt and runs without them (ALI-2064).
|
|
80
105
|
- Claude Code asks you to approve a committed hook the first time. Accept, or it won't run.
|
|
81
106
|
|
|
82
107
|
[Per-host details](docs/agent-hooks.md).
|
|
@@ -109,7 +134,7 @@ align mcp --setup # wire your agent to the graph
|
|
|
109
134
|
```
|
|
110
135
|
|
|
111
136
|
`align --help` lists `ask`, `connect`, `check`, `share` (alias `push`), `mcp` and `agents`. The
|
|
112
|
-
rest (`search`, `decisions`, `export`, `ratify`, `context`, ...) still work and are in
|
|
137
|
+
rest (`search`, `decisions`, `stale`, `export`, `ratify`, `context`, ...) still work and are in
|
|
113
138
|
[docs/commands.md](docs/commands.md).
|
|
114
139
|
|
|
115
140
|
Something not working? `align doctor` checks Node, that `align` is on your PATH, that the gateway
|
|
@@ -173,6 +198,12 @@ compliance go from 46% to 95%
|
|
|
173
198
|
([Dillon & Varanasi, arXiv:2605.08112](https://arxiv.org/abs/2605.08112)). It's a small vendor
|
|
174
199
|
study, 8 tasks and 41 decision points, and it isn't our data.
|
|
175
200
|
|
|
201
|
+
Our own benchmark is on our own repos: 29 decisions, every answer labelled by a person. With
|
|
202
|
+
Align the agent followed the current decision in 139 of 145 runs, with read-only repo search 96
|
|
203
|
+
of 145, and with no tools 34 of 145. Where the decision was never written in the code, it was 29
|
|
204
|
+
of 30 against 5 of 30. It's dogfood, not customer data, and the product was tuned on these
|
|
205
|
+
tasks. [Method and raw results](https://align.tech/benchmark).
|
|
206
|
+
|
|
176
207
|
Wiring context into an agent is the easy part, and that's what this repo is. The hard part is
|
|
177
208
|
keeping an accurate record of what your team actually decided, across every tool.
|
|
178
209
|
|
package/dist/commands/check.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type Command } from 'commander';
|
|
2
2
|
import type { AlignmentResult } from '../lib/gateway-client.js';
|
|
3
|
+
import { type VerdictConflict } from '../lib/advisory-verdict.js';
|
|
3
4
|
/**
|
|
4
5
|
* CI identity for the check, env-supplied by the align-check action:
|
|
5
6
|
* ALIGN_PLATFORM ('github-actions'), ALIGN_SUBJECT_KEY ('github:acme/repo#12'),
|
|
@@ -22,13 +23,30 @@ export declare function ciIdentityFromEnv(env: Record<string, string | undefined
|
|
|
22
23
|
headSha?: string;
|
|
23
24
|
};
|
|
24
25
|
export declare function registerCheckCommand(program: Command): void;
|
|
26
|
+
/**
|
|
27
|
+
* What asking for a verdict came back with. `timeout` and `no_verdict` are both "could not
|
|
28
|
+
* check" and must never render as a pass: `unknown` is not aligned, and neither is silence.
|
|
29
|
+
*/
|
|
30
|
+
type VerdictOutcome = {
|
|
31
|
+
kind: 'not_requested';
|
|
32
|
+
} | {
|
|
33
|
+
kind: 'aligned';
|
|
34
|
+
checked: number;
|
|
35
|
+
} | {
|
|
36
|
+
kind: 'conflicting';
|
|
37
|
+
conflicts: VerdictConflict[];
|
|
38
|
+
} | {
|
|
39
|
+
kind: 'timeout';
|
|
40
|
+
} | {
|
|
41
|
+
kind: 'no_verdict';
|
|
42
|
+
};
|
|
25
43
|
type AdvisoryConflict = NonNullable<AlignmentResult['conflicts']>[number];
|
|
26
44
|
type RelatedDecision = {
|
|
27
45
|
id: string;
|
|
28
46
|
title: string;
|
|
29
47
|
summary?: string;
|
|
30
48
|
};
|
|
31
|
-
export declare function buildRelatedOutput(decisions: RelatedDecision[], opts: AdvisoryRenderOpts, wrote?: RelatedDecision[], retrievalFailed?: boolean): unknown | null;
|
|
49
|
+
export declare function buildRelatedOutput(decisions: RelatedDecision[], opts: AdvisoryRenderOpts, wrote?: RelatedDecision[], retrievalFailed?: boolean, verdict?: VerdictOutcome): unknown | null;
|
|
32
50
|
export declare function buildUnknownOutput(opts: AdvisoryRenderOpts): unknown | null;
|
|
33
51
|
export type AdvisoryFormat = 'claude' | 'codex' | 'cursor' | 'copilot' | 'gemini' | 'pi' | 'opencode' | 'text';
|
|
34
52
|
export interface AdvisoryRenderOpts {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAU,MAAM,WAAW,CAAC;AASjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAU,MAAM,WAAW,CAAC;AASjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAKhE,OAAO,EASL,KAAK,eAAe,EACrB,MAAM,4BAA4B,CAAC;AAmCpC;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAS9D;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA6T3D;AAgOD;;;GAGG;AACH,KAAK,cAAc,GACf;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,GACzB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,SAAS,EAAE,eAAe,EAAE,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC;AA+B3B,KAAK,gBAAgB,GAAG,WAAW,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAkH1E,KAAK,eAAe,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAKvE,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,eAAe,EAAE,EAC5B,IAAI,EAAE,kBAAkB,EACxB,KAAK,GAAE,eAAe,EAAO,EAC7B,eAAe,UAAQ,EACvB,OAAO,GAAE,cAA0C,GAClD,OAAO,GAAG,IAAI,CA2ChB;AAuBD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,GAAG,IAAI,CAM3E;AAkED,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,IAAI,GAAG,UAAU,GAAG,MAAM,CAAC;AAE/G,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,OAAO,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;CAC1B;AA6BD,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,gBAAgB,EAAE,EAC7B,IAAI,EAAE,kBAAkB,GACvB,OAAO,GAAG,IAAI,CAQhB"}
|
package/dist/commands/check.js
CHANGED
|
@@ -16,11 +16,21 @@ import { CHECK_DEPTHS } from '../lib/check-depth.js';
|
|
|
16
16
|
import { gitHead, lastCheckFor, writeLastCheck } from '../lib/curation/last-check.js';
|
|
17
17
|
import { quote } from '../lib/curation/text.js';
|
|
18
18
|
import { detectDeterministicHits, ratifiedDeterministicRules, ruleDenyReason } from '../lib/inline-rules.js';
|
|
19
|
+
import { decisionLinkFor } from '../lib/decision-links.js';
|
|
19
20
|
// The hook budget on EVERY host is <=10s (Claude Code HOOK_TIMEOUT_SECONDS, and the 10s
|
|
20
21
|
// execFile timeout in the pi and OpenCode shims). Adjudication measured ~11s whenever
|
|
21
22
|
// retrieval returns anything, so the old synchronous check timed out on exactly the edits it
|
|
22
23
|
// existed for and printed nothing. Retrieval alone measured 0.4-2.4s, which fits.
|
|
23
24
|
const RETRIEVAL_TIMEOUT_MS = 2500;
|
|
25
|
+
// The hook asks for a verdict AFTER retrieval, and the whole hook answers by this deadline,
|
|
26
|
+
// measured from when it started. Not 10s: the host's budget also has to cover node start-up,
|
|
27
|
+
// the stdin read and the exit, and a hook killed at the host limit prints nothing at all,
|
|
28
|
+
// which is worse than a titles-only answer. A verdict that does not fit degrades to
|
|
29
|
+
// the titles with a line saying so (see buildRelatedOutput).
|
|
30
|
+
const VERDICT_DEADLINE_MS = 7000;
|
|
31
|
+
// Below this there is no point opening an adjudication request: only a cached or
|
|
32
|
+
// deterministic answer returns that fast, and retrieval has already used the time.
|
|
33
|
+
const MIN_VERDICT_WINDOW_MS = 500;
|
|
24
34
|
// Exit codes. `unknown` gets its own code rather than reusing 1: "we found
|
|
25
35
|
// a conflict" and "we could not look" call for different responses, and a caller that
|
|
26
36
|
// only tests for non-zero still treats both as a failure.
|
|
@@ -78,7 +88,7 @@ export function registerCheckCommand(program) {
|
|
|
78
88
|
.option('--json', 'Same output and exit codes as --ci: one JSON document on stdout')
|
|
79
89
|
.option('--title <text>', 'The decision being proposed, in words (e.g. the PR title). Without it the gateway adjudicates on the first 200 characters of the diff, which is a file header and a few + lines')
|
|
80
90
|
.option('--base <ref>', 'Diff against the merge base with <ref> (e.g. origin/main). Required in CI: a clean checkout has no staged or unstaged changes, so without it there is nothing to check and the command passes without looking')
|
|
81
|
-
.option('--depth <depth>', `How deep an answer to request: ${CHECK_DEPTHS.join(', ')} - related is retrieval only, full (the gateway default) adjudicates behind its similarity cost gate, exhaustive adjudicates whatever was retrieved (for strict CI gates whose fail-on treats unknown as failure). Ignored in --advisory mode, which
|
|
91
|
+
.option('--depth <depth>', `How deep an answer to request: ${CHECK_DEPTHS.join(', ')} - related is retrieval only, full (the gateway default) adjudicates behind its similarity cost gate, exhaustive adjudicates whatever was retrieved (for strict CI gates whose fail-on treats unknown as failure). Ignored in --advisory mode, which sets its own: retrieval, then one full check inside the hook's time budget`)
|
|
82
92
|
.option('--resolve <resolution>', 'Record resolution for a conflict: <decision_id>:<type> where type is honored|overridden|context_changed')
|
|
83
93
|
.action(async (opts) => {
|
|
84
94
|
// `--json` is the machine contract `--ci` already is - same document, same exit
|
|
@@ -143,6 +153,8 @@ export function registerCheckCommand(program) {
|
|
|
143
153
|
const client = createGatewayClient(config.getEnvironment(envName));
|
|
144
154
|
let diff;
|
|
145
155
|
let autoBase = null;
|
|
156
|
+
// Where the file list for a co-change rule comes from: the same source the diff came from.
|
|
157
|
+
let changeSource = opts.base ? { kind: 'base', ref: opts.base } : { kind: 'staged' };
|
|
146
158
|
if (opts.base) {
|
|
147
159
|
// An unresolvable base (a typo, a shallow clone with no history, a deleted branch)
|
|
148
160
|
// must NOT fall through to the empty-diff path below: "I could not look" and "there
|
|
@@ -164,8 +176,11 @@ export function registerCheckCommand(program) {
|
|
|
164
176
|
}
|
|
165
177
|
else {
|
|
166
178
|
diff = await getStagedDiff();
|
|
167
|
-
|
|
179
|
+
const useHead = !diff.trim() || opts.all;
|
|
180
|
+
if (useHead) {
|
|
168
181
|
diff = await getHeadDiff();
|
|
182
|
+
changeSource = { kind: 'head' };
|
|
183
|
+
}
|
|
169
184
|
// Nothing staged and nothing uncommitted. Until now that printed "No changes to check"
|
|
170
185
|
// and exited 0 - on a CLEAN branch with commits, which is the normal state when you
|
|
171
186
|
// open a PR. A gate that examined nothing, reporting success, and `--base` only ever
|
|
@@ -189,6 +204,7 @@ export function registerCheckCommand(program) {
|
|
|
189
204
|
if (branchDiff.trim()) {
|
|
190
205
|
diff = branchDiff;
|
|
191
206
|
autoBase = detected;
|
|
207
|
+
changeSource = { kind: 'base', ref: detected };
|
|
192
208
|
}
|
|
193
209
|
}
|
|
194
210
|
}
|
|
@@ -205,9 +221,35 @@ export function registerCheckCommand(program) {
|
|
|
205
221
|
// One options object for both paths below, so the CI request and the interactive
|
|
206
222
|
// request cannot silently diverge field by field.
|
|
207
223
|
const checkOpts = { title: opts.title, depth, ...ciIdentityFromEnv(process.env) };
|
|
224
|
+
// Co-change rules ("a PR touching X must also touch Y") are a question about which files changed,
|
|
225
|
+
// so they are computed here from the file list and need no model. Not in --hook: that runs on one
|
|
226
|
+
// commit, and a same-PR rule cannot be judged from one commit of a PR.
|
|
227
|
+
let violations = [];
|
|
228
|
+
if (!opts.hook) {
|
|
229
|
+
const envConfig = config.getEnvironment(envName);
|
|
230
|
+
if (envConfig.mode === 'local-embedded') {
|
|
231
|
+
try {
|
|
232
|
+
violations = await (await import('../lib/co-change-check.js')).coChangeViolations(envConfig, changeSource);
|
|
233
|
+
}
|
|
234
|
+
catch (err) {
|
|
235
|
+
const message = `Could not evaluate co-change rules: ${err.message}`;
|
|
236
|
+
if (opts.ci) {
|
|
237
|
+
process.stdout.write(`${JSON.stringify({ status: 'unknown', reason: 'co_change_unavailable', message })}\n`);
|
|
238
|
+
}
|
|
239
|
+
else {
|
|
240
|
+
console.error(chalk.red(message));
|
|
241
|
+
}
|
|
242
|
+
process.exit(EXIT_UNKNOWN);
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
const judge = async () => {
|
|
247
|
+
const call = () => client.checkAlignment(diff, branch, checkOpts);
|
|
248
|
+
return violations.length === 0 ? call() : (await import('../lib/co-change-check.js')).judgeWithCoChange(call, violations);
|
|
249
|
+
};
|
|
208
250
|
if (opts.ci) {
|
|
209
251
|
try {
|
|
210
|
-
const result = await
|
|
252
|
+
const result = await judge();
|
|
211
253
|
// LM: stdout is the machine contract (notes ride in the JSON); a person reading the CI log sees them on stderr.
|
|
212
254
|
for (const note of result.notes ?? [])
|
|
213
255
|
process.stderr.write(`${note}\n`);
|
|
@@ -232,7 +274,7 @@ export function registerCheckCommand(program) {
|
|
|
232
274
|
}
|
|
233
275
|
const spinner = ora('Checking alignment...').start();
|
|
234
276
|
try {
|
|
235
|
-
const result = await
|
|
277
|
+
const result = await judge();
|
|
236
278
|
spinner.stop();
|
|
237
279
|
// LM: what this person's marks did to the result, and the file set `align mark check` defaults to.
|
|
238
280
|
for (const note of result.notes ?? [])
|
|
@@ -247,8 +289,9 @@ export function registerCheckCommand(program) {
|
|
|
247
289
|
const snippet = d.summary.slice(0, 120).replace(/\n/g, ' ');
|
|
248
290
|
console.log(chalk.dim(` "${snippet}${d.summary.length > 120 ? '...' : ''}"`));
|
|
249
291
|
}
|
|
250
|
-
|
|
251
|
-
|
|
292
|
+
const link = decisionLinkFor(d);
|
|
293
|
+
if (link)
|
|
294
|
+
console.log(chalk.dim(` ${link}`));
|
|
252
295
|
console.log('');
|
|
253
296
|
}
|
|
254
297
|
}
|
|
@@ -267,8 +310,9 @@ export function registerCheckCommand(program) {
|
|
|
267
310
|
if (c.reason && c.reason !== 'Conflicts with an existing team decision') {
|
|
268
311
|
console.log(` ${chalk.yellow(c.reason)}`);
|
|
269
312
|
}
|
|
270
|
-
|
|
271
|
-
|
|
313
|
+
const link = decisionLinkFor(c);
|
|
314
|
+
if (link)
|
|
315
|
+
console.log(chalk.dim(` ${link}`));
|
|
272
316
|
console.log('');
|
|
273
317
|
}
|
|
274
318
|
if (opts.resolve) {
|
|
@@ -304,8 +348,9 @@ export function registerCheckCommand(program) {
|
|
|
304
348
|
const snippet = d.summary.slice(0, 120).replace(/\n/g, ' ');
|
|
305
349
|
console.log(chalk.dim(` "${snippet}${d.summary.length > 120 ? '...' : ''}"`));
|
|
306
350
|
}
|
|
307
|
-
|
|
308
|
-
|
|
351
|
+
const link = decisionLinkFor(d);
|
|
352
|
+
if (link)
|
|
353
|
+
console.log(chalk.dim(` ${link}`));
|
|
309
354
|
console.log('');
|
|
310
355
|
}
|
|
311
356
|
// Pre-commit hook mode stays non-blocking (its contract is "only fail on
|
|
@@ -355,6 +400,7 @@ export function registerCheckCommand(program) {
|
|
|
355
400
|
// Anything else (no repo, no diff, gateway down/slow, aligned) stays silent.
|
|
356
401
|
// Fail-open is the whole point - a hook that blocks or errors on every edit gets disabled.
|
|
357
402
|
async function runAdvisory(env, opts = {}) {
|
|
403
|
+
const startedAt = Date.now();
|
|
358
404
|
try {
|
|
359
405
|
const payload = await readHookPayload();
|
|
360
406
|
const pre = payload?.hook_event_name === 'PreToolUse';
|
|
@@ -469,10 +515,10 @@ async function runAdvisory(env, opts = {}) {
|
|
|
469
515
|
}
|
|
470
516
|
}
|
|
471
517
|
}
|
|
472
|
-
//
|
|
473
|
-
//
|
|
474
|
-
//
|
|
475
|
-
//
|
|
518
|
+
// Retrieval comes first and is what the hook always has to give: it is fast and it names
|
|
519
|
+
// the subject. A verdict (`depth: 'full'`, adjudicated) is requested only AFTER retrieval
|
|
520
|
+
// finds something, and only inside the deadline above - adjudication measures ~11s when it
|
|
521
|
+
// has to call the model, so it often will not fit, and then the titles go out as before.
|
|
476
522
|
// Runs beside retrieval, not before it: blame is local and bounded, so it adds nothing to the
|
|
477
523
|
// hook's wall clock. PRE only - a landed edit has no "lines about to change".
|
|
478
524
|
const writtenBy = pre ? decisionsThatWroteTheseLines(client, payload?.tool_input, cwd) : Promise.resolve([]);
|
|
@@ -509,8 +555,32 @@ async function runAdvisory(env, opts = {}) {
|
|
|
509
555
|
// named the decision that wrote these lines.
|
|
510
556
|
if (!found.length && !wrote.length)
|
|
511
557
|
process.exit(0);
|
|
512
|
-
|
|
513
|
-
|
|
558
|
+
const writerIds = new Set(wrote.map((d) => d.id));
|
|
559
|
+
const fresh = found.filter((d) => !seen.has(d.id) && !writerIds.has(d.id));
|
|
560
|
+
// The verdict. Only for decisions this hook is about to show: a sibling hook that already
|
|
561
|
+
// showed them has said its piece, and a blame-only answer is a deterministic one that
|
|
562
|
+
// needs no model. Not in local mode: there adjudication is the pipeline's only provider
|
|
563
|
+
// egress (#143 turned it off by default, deliberately), and this must not erode that.
|
|
564
|
+
let verdict = { kind: 'not_requested' };
|
|
565
|
+
if (fresh.length && envName !== 'local') {
|
|
566
|
+
verdict = await requestVerdict(client, text, context, VERDICT_DEADLINE_MS - (Date.now() - startedAt));
|
|
567
|
+
}
|
|
568
|
+
const judged = verdict.kind === 'conflicting' || verdict.kind === 'aligned';
|
|
569
|
+
// Under `--block-on-critical` a verdict in hand is stored for the RETRY, as the background
|
|
570
|
+
// adjudicator would have stored it. The flag keeps its meaning: it denies a retry of a
|
|
571
|
+
// change already judged critical, never the first attempt (the render below is
|
|
572
|
+
// non-blocking). The same record stops the next edit of this content adjudicating again.
|
|
573
|
+
if (pre && opts.blockOnCritical && contentHash && judged) {
|
|
574
|
+
recordVerdict(cwd, envName, {
|
|
575
|
+
ts: Date.now(),
|
|
576
|
+
filePath: identity.filePath,
|
|
577
|
+
contentHash,
|
|
578
|
+
adjudicated: true,
|
|
579
|
+
conflicts: verdict.kind === 'conflicting' ? verdict.conflicts : [],
|
|
580
|
+
});
|
|
581
|
+
}
|
|
582
|
+
// When the verdict did not fit the window, the proposed content is still worth the slow
|
|
583
|
+
// full check - AFTER this hook returns. Spawned detached and unref'd so the
|
|
514
584
|
// hook's exit is never coupled to the adjudicator's lifetime. PRE only: the proposed
|
|
515
585
|
// text is the artefact a retry re-presents byte-for-byte, where the POST diff is already
|
|
516
586
|
// landed and matches nothing an agent will propose again.
|
|
@@ -520,16 +590,14 @@ async function runAdvisory(env, opts = {}) {
|
|
|
520
590
|
// different content every time and would otherwise spawn one adjudicator per edit. The
|
|
521
591
|
// in-flight cap is what actually bounds the cost. Being over the cap loses a verdict,
|
|
522
592
|
// never an edit, and the next hook invocation tries again.
|
|
523
|
-
if (pre && opts.blockOnCritical && contentHash && !adjudicationExistsFor(cwd, envName, contentHash)) {
|
|
593
|
+
if (pre && opts.blockOnCritical && contentHash && !judged && !adjudicationExistsFor(cwd, envName, contentHash)) {
|
|
524
594
|
if (inFlightAdjudications(cwd, envName) < MAX_CONCURRENT_ADJUDICATIONS) {
|
|
525
595
|
spawnDeferredAdjudication({ identity, context, cwd, contentHash }, envName);
|
|
526
596
|
}
|
|
527
597
|
}
|
|
528
|
-
const writerIds = new Set(wrote.map((d) => d.id));
|
|
529
|
-
const fresh = found.filter((d) => !seen.has(d.id) && !writerIds.has(d.id));
|
|
530
598
|
if (fresh.length || wrote.length) {
|
|
531
599
|
markSurfaced(cwd, [...wrote, ...fresh].map((d) => d.id));
|
|
532
|
-
emit(buildRelatedOutput(fresh, renderOpts, wrote));
|
|
600
|
+
emit(buildRelatedOutput(fresh, renderOpts, wrote, false, verdict));
|
|
533
601
|
}
|
|
534
602
|
}
|
|
535
603
|
catch {
|
|
@@ -539,6 +607,35 @@ async function runAdvisory(env, opts = {}) {
|
|
|
539
607
|
}
|
|
540
608
|
class LocalSkip extends Error {
|
|
541
609
|
}
|
|
610
|
+
/**
|
|
611
|
+
* One adjudicated check, bounded by `budgetMs`. Never throws: every way of not getting an
|
|
612
|
+
* answer is a named outcome the renderer words honestly. A request that outlives the budget
|
|
613
|
+
* is abandoned, not awaited - the hook exits and the process takes it down.
|
|
614
|
+
*/
|
|
615
|
+
async function requestVerdict(client, text, context, budgetMs) {
|
|
616
|
+
if (budgetMs < MIN_VERDICT_WINDOW_MS)
|
|
617
|
+
return { kind: 'timeout' };
|
|
618
|
+
let timer;
|
|
619
|
+
try {
|
|
620
|
+
const result = await Promise.race([
|
|
621
|
+
client.checkAlignment(text, context, { depth: 'full' }),
|
|
622
|
+
new Promise((resolve) => { timer = setTimeout(() => resolve(null), budgetMs); }),
|
|
623
|
+
]);
|
|
624
|
+
if (result === null)
|
|
625
|
+
return { kind: 'timeout' };
|
|
626
|
+
if (result.status === 'conflicting' && result.conflicts?.length)
|
|
627
|
+
return { kind: 'conflicting', conflicts: result.conflicts };
|
|
628
|
+
if (result.status === 'aligned')
|
|
629
|
+
return { kind: 'aligned', checked: result.relevant_decisions?.length ?? 0 };
|
|
630
|
+
return { kind: 'no_verdict' };
|
|
631
|
+
}
|
|
632
|
+
catch {
|
|
633
|
+
return { kind: 'no_verdict' };
|
|
634
|
+
}
|
|
635
|
+
finally {
|
|
636
|
+
clearTimeout(timer);
|
|
637
|
+
}
|
|
638
|
+
}
|
|
542
639
|
/**
|
|
543
640
|
* Ceiling on one deferred adjudication. Generous next to the ~11s a real check takes,
|
|
544
641
|
* because this is a backstop against a stalled gateway rather than a latency budget - the
|
|
@@ -644,7 +741,7 @@ async function runDeferredAdjudication(payloadFile, env) {
|
|
|
644
741
|
// Retrieval finds decisions on the same SUBJECT. It does not encode opposition - a measurement
|
|
645
742
|
// put the agreeing pair at cosine 0.38 against the contradicting pair at 0.31 - so this
|
|
646
743
|
// wording must never assert a conflict. Saying "related" is the honest claim and the useful one.
|
|
647
|
-
export function buildRelatedOutput(decisions, opts, wrote = [], retrievalFailed = false) {
|
|
744
|
+
export function buildRelatedOutput(decisions, opts, wrote = [], retrievalFailed = false, verdict = { kind: 'not_requested' }) {
|
|
648
745
|
const lines = decisions.map((d) => `- ${d.title}`);
|
|
649
746
|
// `git blame` names these deterministically: they are not a guess about the subject, they put these exact lines here.
|
|
650
747
|
const writerBlock = wrote.length
|
|
@@ -654,16 +751,33 @@ export function buildRelatedOutput(decisions, opts, wrote = [], retrievalFailed
|
|
|
654
751
|
'Check that this change still honours what they decided before continuing.',
|
|
655
752
|
]
|
|
656
753
|
: [];
|
|
657
|
-
const
|
|
658
|
-
?
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
]
|
|
663
|
-
:
|
|
754
|
+
const closing = opts.pre
|
|
755
|
+
? 'Reconcile with these decisions or confirm with the user before writing this change.'
|
|
756
|
+
: 'Reconcile with these decisions or confirm with the user before continuing.';
|
|
757
|
+
// An adjudicated answer replaces the "related, not adjudicated" block: it says more.
|
|
758
|
+
const verdictBlock = verdict.kind === 'conflicting'
|
|
759
|
+
? [conflictContext(verdict.conflicts, closing)]
|
|
760
|
+
: verdict.kind === 'aligned'
|
|
761
|
+
? [`Align decision graph: checked this change against ${verdict.checked || 'the'} related decision${verdict.checked === 1 ? '' : 's'} and found no conflict.`]
|
|
762
|
+
: [];
|
|
763
|
+
const related = verdictBlock.length
|
|
764
|
+
? verdictBlock
|
|
765
|
+
: decisions.length
|
|
766
|
+
? [
|
|
767
|
+
`${wrote.length ? 'Also, ' : 'Align decision graph: '}${decisions.length} prior decision${decisions.length > 1 ? 's relate' : ' relates'} to this change:`,
|
|
768
|
+
...lines,
|
|
769
|
+
'These are related by content search and have NOT been adjudicated. Check whether any of them opposes this change before continuing.',
|
|
770
|
+
]
|
|
771
|
+
: [];
|
|
664
772
|
const summary = [
|
|
665
773
|
...writerBlock,
|
|
666
774
|
...related,
|
|
775
|
+
// Titles with no verdict: say why, and never let it read as a pass.
|
|
776
|
+
...(verdict.kind === 'timeout'
|
|
777
|
+
? ['Align could not check this change in time, so there is no verdict and the change is UNVERIFIED.']
|
|
778
|
+
: verdict.kind === 'no_verdict'
|
|
779
|
+
? ['Align could not reach a verdict on this change, so it is UNVERIFIED.']
|
|
780
|
+
: []),
|
|
667
781
|
...(retrievalFailed ? ['Align could not check this change against the rest of the decision graph (retrieval failed or timed out); treat the rest as UNVERIFIED.'] : []),
|
|
668
782
|
// The model is the only reader of this text; without this line the user cannot tell the hook ran.
|
|
669
783
|
'Tell the user in one line which of these you checked against and whether this change agrees with it.',
|
|
@@ -733,7 +847,8 @@ function proposedChangeText(input) {
|
|
|
733
847
|
function conflictContext(conflicts, closing) {
|
|
734
848
|
const lines = conflicts.map((c) => {
|
|
735
849
|
const reason = c.reason && c.reason !== 'Conflicts with an existing team decision' ? ` - ${c.reason}` : '';
|
|
736
|
-
const
|
|
850
|
+
const link = decisionLinkFor(c);
|
|
851
|
+
const url = link ? ` (${link})` : '';
|
|
737
852
|
return `- [${c.severity}] ${c.title}${reason}${url}`;
|
|
738
853
|
});
|
|
739
854
|
return [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ import { SYNC_CEILINGS } from '../../lib/import-defaults.js';
|
|
|
13
13
|
export function registerImportDocsCommand(importCmd) {
|
|
14
14
|
importCmd
|
|
15
15
|
.command('docs')
|
|
16
|
-
.description('Import ADRs
|
|
16
|
+
.description('Import ADRs, CLAUDE.md/AGENTS.md, and the rules in README, CONTRIBUTING and the changelog (no auth required)')
|
|
17
17
|
.option('--limit <n>', 'Max items to import', String(SYNC_CEILINGS.docs))
|
|
18
18
|
.option('--approve', 'Skip confirmation prompt')
|
|
19
19
|
.option('--env <env>', 'Environment')
|
|
@@ -25,7 +25,7 @@ export function registerImportDocsCommand(importCmd) {
|
|
|
25
25
|
const client = createGatewayClient(env);
|
|
26
26
|
p.intro(commandIntro('align connect docs'));
|
|
27
27
|
const spinner = p.spinner();
|
|
28
|
-
spinner.start('Reading ADRs
|
|
28
|
+
spinner.start('Reading ADRs, CLAUDE.md/AGENTS.md, README and CONTRIBUTING rules...');
|
|
29
29
|
const fetched = await fetchDocsItems({ limit: parseInt(opts.limit, 10) });
|
|
30
30
|
const { items } = fetched;
|
|
31
31
|
spinner.stop(`Found ${items.length} item(s) worth importing`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../../../src/commands/import/docs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAgB,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAQ7D,MAAM,UAAU,yBAAyB,CAAC,SAAkB;IAC1D,SAAS;SACN,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../../../src/commands/import/docs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAgB,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAQ7D,MAAM,UAAU,yBAAyB,CAAC,SAAkB;IAC1D,SAAS;SACN,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,8GAA8G,CAAC;SAC3H,MAAM,CAAC,aAAa,EAAE,qBAAqB,EAAE,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;SACxE,MAAM,CAAC,WAAW,EAAE,0BAA0B,CAAC;SAC/C,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC;SACpC,MAAM,CAAC,KAAK,EAAE,KAAqB,EAAE,GAAY,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,cAAc,CAAiB,GAAG,CAAC,CAAC;QAEjD,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;QAExC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAE5C,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;QAC5B,OAAO,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAC;QACrF,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QAC1E,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,0BAA0B,CAAC,CAAC;QAE9D,MAAM,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE;YACrC,KAAK,EAAE,WAAW;YAClB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC;YAC1B,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE;SAChC,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,GAAG,mBAAmB,CAAC,CAAC,eAAe,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC5F,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAKnE,OAAO,EAAqB,KAAK,iBAAiB,EAAgB,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAU/D,OAAO,EAAkE,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAGjI,OAAO,EAA+B,KAAK,eAAe,EAAe,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"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"}
|