@aligndottech/cli 0.66.1 → 0.67.1

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.
Files changed (68) hide show
  1. package/README.md +7 -3
  2. package/dist/commands/check.d.ts +19 -1
  3. package/dist/commands/check.d.ts.map +1 -1
  4. package/dist/commands/check.js +132 -22
  5. package/dist/commands/check.js.map +1 -1
  6. package/dist/commands/import/docs.js +2 -2
  7. package/dist/commands/import/docs.js.map +1 -1
  8. package/dist/commands/registry.d.ts.map +1 -1
  9. package/dist/commands/registry.js +3 -0
  10. package/dist/commands/registry.js.map +1 -1
  11. package/dist/commands/rule.d.ts +28 -0
  12. package/dist/commands/rule.d.ts.map +1 -0
  13. package/dist/commands/rule.js +100 -0
  14. package/dist/commands/rule.js.map +1 -0
  15. package/dist/lib/co-change-check.d.ts +33 -0
  16. package/dist/lib/co-change-check.d.ts.map +1 -0
  17. package/dist/lib/co-change-check.js +95 -0
  18. package/dist/lib/co-change-check.js.map +1 -0
  19. package/dist/lib/co-change-rule.d.ts +11 -0
  20. package/dist/lib/co-change-rule.d.ts.map +1 -0
  21. package/dist/lib/co-change-rule.js +2 -0
  22. package/dist/lib/co-change-rule.js.map +1 -0
  23. package/dist/lib/co-change-store.d.ts +25 -0
  24. package/dist/lib/co-change-store.d.ts.map +1 -0
  25. package/dist/lib/co-change-store.js +142 -0
  26. package/dist/lib/co-change-store.js.map +1 -0
  27. package/dist/lib/co-change.d.ts +54 -0
  28. package/dist/lib/co-change.d.ts.map +1 -0
  29. package/dist/lib/co-change.js +120 -0
  30. package/dist/lib/co-change.js.map +1 -0
  31. package/dist/lib/commit-shape.d.ts +18 -0
  32. package/dist/lib/commit-shape.d.ts.map +1 -1
  33. package/dist/lib/commit-shape.js +40 -2
  34. package/dist/lib/commit-shape.js.map +1 -1
  35. package/dist/lib/fetchers/docs-conventions.d.ts +29 -0
  36. package/dist/lib/fetchers/docs-conventions.d.ts.map +1 -0
  37. package/dist/lib/fetchers/docs-conventions.js +95 -0
  38. package/dist/lib/fetchers/docs-conventions.js.map +1 -0
  39. package/dist/lib/fetchers/docs.d.ts +6 -0
  40. package/dist/lib/fetchers/docs.d.ts.map +1 -1
  41. package/dist/lib/fetchers/docs.js +79 -11
  42. package/dist/lib/fetchers/docs.js.map +1 -1
  43. package/dist/lib/git.d.ts.map +1 -1
  44. package/dist/lib/git.js +39 -10
  45. package/dist/lib/git.js.map +1 -1
  46. package/dist/lib/launch/pi-state.d.ts.map +1 -1
  47. package/dist/lib/launch/pi-state.js +9 -3
  48. package/dist/lib/launch/pi-state.js.map +1 -1
  49. package/dist/lib/local-db-cochange.d.ts +17 -0
  50. package/dist/lib/local-db-cochange.d.ts.map +1 -0
  51. package/dist/lib/local-db-cochange.js +23 -0
  52. package/dist/lib/local-db-cochange.js.map +1 -0
  53. package/dist/lib/local-db-migrate.d.ts.map +1 -1
  54. package/dist/lib/local-db-migrate.js +19 -0
  55. package/dist/lib/local-db-migrate.js.map +1 -1
  56. package/dist/lib/local-db.js +1 -1
  57. package/dist/lib/local-db.js.map +1 -1
  58. package/dist/lib/local-gateway-client.d.ts.map +1 -1
  59. package/dist/lib/local-gateway-client.js +20 -0
  60. package/dist/lib/local-gateway-client.js.map +1 -1
  61. package/dist/lib/local-ingest.d.ts +2 -0
  62. package/dist/lib/local-ingest.d.ts.map +1 -1
  63. package/dist/lib/local-ingest.js.map +1 -1
  64. package/dist/lib/mcp-instructions.shared.d.ts +1 -1
  65. package/dist/lib/mcp-instructions.shared.d.ts.map +1 -1
  66. package/dist/lib/mcp-instructions.shared.js +3 -3
  67. package/dist/lib/mcp-instructions.shared.js.map +1 -1
  68. package/package.json +1 -1
package/README.md CHANGED
@@ -50,8 +50,10 @@ Change lib/error-status.js so they keep their status code.
50
50
  ```
51
51
 
52
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. Models are not
54
- deterministic, so your run may word it differently.
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.
55
57
 
56
58
  ## Install
57
59
 
@@ -97,7 +99,9 @@ Hook limits worth knowing:
97
99
  from the vendors' docs or source, and Codex, Cursor and Copilot CLI have not been checked
98
100
  against a real payload. The last three read hooks from a user-level file (`~/.codex/hooks.json`,
99
101
  `~/.cursor/hooks.json`, `~/.copilot/hooks/align.json`).
100
- - 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.
101
105
  - Claude Code asks you to approve a committed hook the first time. Accept, or it won't run.
102
106
 
103
107
  [Per-host details](docs/agent-hooks.md).
@@ -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;AAqChE;;;;;;;;;;;;;;;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,CA6R3D;AAsMD,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,CAAC,SAAS,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,GAAE,eAAe,EAAO,EAAE,eAAe,UAAQ,GAAG,OAAO,GAAG,IAAI,CAyBjK;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"}
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"}
@@ -22,6 +22,15 @@ import { decisionLinkFor } from '../lib/decision-links.js';
22
22
  // retrieval returns anything, so the old synchronous check timed out on exactly the edits it
23
23
  // existed for and printed nothing. Retrieval alone measured 0.4-2.4s, which fits.
24
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;
25
34
  // Exit codes. `unknown` gets its own code rather than reusing 1: "we found
26
35
  // a conflict" and "we could not look" call for different responses, and a caller that
27
36
  // only tests for non-zero still treats both as a failure.
@@ -79,7 +88,7 @@ export function registerCheckCommand(program) {
79
88
  .option('--json', 'Same output and exit codes as --ci: one JSON document on stdout')
80
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')
81
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')
82
- .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 is retrieval-only by design`)
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`)
83
92
  .option('--resolve <resolution>', 'Record resolution for a conflict: <decision_id>:<type> where type is honored|overridden|context_changed')
84
93
  .action(async (opts) => {
85
94
  // `--json` is the machine contract `--ci` already is - same document, same exit
@@ -144,6 +153,8 @@ export function registerCheckCommand(program) {
144
153
  const client = createGatewayClient(config.getEnvironment(envName));
145
154
  let diff;
146
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' };
147
158
  if (opts.base) {
148
159
  // An unresolvable base (a typo, a shallow clone with no history, a deleted branch)
149
160
  // must NOT fall through to the empty-diff path below: "I could not look" and "there
@@ -165,8 +176,11 @@ export function registerCheckCommand(program) {
165
176
  }
166
177
  else {
167
178
  diff = await getStagedDiff();
168
- if (!diff.trim() || opts.all)
179
+ const useHead = !diff.trim() || opts.all;
180
+ if (useHead) {
169
181
  diff = await getHeadDiff();
182
+ changeSource = { kind: 'head' };
183
+ }
170
184
  // Nothing staged and nothing uncommitted. Until now that printed "No changes to check"
171
185
  // and exited 0 - on a CLEAN branch with commits, which is the normal state when you
172
186
  // open a PR. A gate that examined nothing, reporting success, and `--base` only ever
@@ -190,6 +204,7 @@ export function registerCheckCommand(program) {
190
204
  if (branchDiff.trim()) {
191
205
  diff = branchDiff;
192
206
  autoBase = detected;
207
+ changeSource = { kind: 'base', ref: detected };
193
208
  }
194
209
  }
195
210
  }
@@ -206,9 +221,35 @@ export function registerCheckCommand(program) {
206
221
  // One options object for both paths below, so the CI request and the interactive
207
222
  // request cannot silently diverge field by field.
208
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
+ };
209
250
  if (opts.ci) {
210
251
  try {
211
- const result = await client.checkAlignment(diff, branch, checkOpts);
252
+ const result = await judge();
212
253
  // LM: stdout is the machine contract (notes ride in the JSON); a person reading the CI log sees them on stderr.
213
254
  for (const note of result.notes ?? [])
214
255
  process.stderr.write(`${note}\n`);
@@ -233,7 +274,7 @@ export function registerCheckCommand(program) {
233
274
  }
234
275
  const spinner = ora('Checking alignment...').start();
235
276
  try {
236
- const result = await client.checkAlignment(diff, branch, checkOpts);
277
+ const result = await judge();
237
278
  spinner.stop();
238
279
  // LM: what this person's marks did to the result, and the file set `align mark check` defaults to.
239
280
  for (const note of result.notes ?? [])
@@ -359,6 +400,7 @@ export function registerCheckCommand(program) {
359
400
  // Anything else (no repo, no diff, gateway down/slow, aligned) stays silent.
360
401
  // Fail-open is the whole point - a hook that blocks or errors on every edit gets disabled.
361
402
  async function runAdvisory(env, opts = {}) {
403
+ const startedAt = Date.now();
362
404
  try {
363
405
  const payload = await readHookPayload();
364
406
  const pre = payload?.hook_event_name === 'PreToolUse';
@@ -473,10 +515,10 @@ async function runAdvisory(env, opts = {}) {
473
515
  }
474
516
  }
475
517
  }
476
- // RETRIEVAL ONLY. Adjudication is ~11s and does not fit any host's hook budget, so it
477
- // moves to a follow-up rather than timing out here and printing nothing. Nothing is lost:
478
- // the LLM runs whenever retrieval returns anything, so no tenant was getting a verdict
479
- // through the hook - the fast path measured 0.8s only because it was `no-context`.
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.
480
522
  // Runs beside retrieval, not before it: blame is local and bounded, so it adds nothing to the
481
523
  // hook's wall clock. PRE only - a landed edit has no "lines about to change".
482
524
  const writtenBy = pre ? decisionsThatWroteTheseLines(client, payload?.tool_input, cwd) : Promise.resolve([]);
@@ -513,8 +555,32 @@ async function runAdvisory(env, opts = {}) {
513
555
  // named the decision that wrote these lines.
514
556
  if (!found.length && !wrote.length)
515
557
  process.exit(0);
516
- // Retrieval found decisions on this subject, so the proposed content is worth
517
- // the slow full check - AFTER this hook returns. Spawned detached and unref'd so the
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
518
584
  // hook's exit is never coupled to the adjudicator's lifetime. PRE only: the proposed
519
585
  // text is the artefact a retry re-presents byte-for-byte, where the POST diff is already
520
586
  // landed and matches nothing an agent will propose again.
@@ -524,16 +590,14 @@ async function runAdvisory(env, opts = {}) {
524
590
  // different content every time and would otherwise spawn one adjudicator per edit. The
525
591
  // in-flight cap is what actually bounds the cost. Being over the cap loses a verdict,
526
592
  // never an edit, and the next hook invocation tries again.
527
- if (pre && opts.blockOnCritical && contentHash && !adjudicationExistsFor(cwd, envName, contentHash)) {
593
+ if (pre && opts.blockOnCritical && contentHash && !judged && !adjudicationExistsFor(cwd, envName, contentHash)) {
528
594
  if (inFlightAdjudications(cwd, envName) < MAX_CONCURRENT_ADJUDICATIONS) {
529
595
  spawnDeferredAdjudication({ identity, context, cwd, contentHash }, envName);
530
596
  }
531
597
  }
532
- const writerIds = new Set(wrote.map((d) => d.id));
533
- const fresh = found.filter((d) => !seen.has(d.id) && !writerIds.has(d.id));
534
598
  if (fresh.length || wrote.length) {
535
599
  markSurfaced(cwd, [...wrote, ...fresh].map((d) => d.id));
536
- emit(buildRelatedOutput(fresh, renderOpts, wrote));
600
+ emit(buildRelatedOutput(fresh, renderOpts, wrote, false, verdict));
537
601
  }
538
602
  }
539
603
  catch {
@@ -543,6 +607,35 @@ async function runAdvisory(env, opts = {}) {
543
607
  }
544
608
  class LocalSkip extends Error {
545
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
+ }
546
639
  /**
547
640
  * Ceiling on one deferred adjudication. Generous next to the ~11s a real check takes,
548
641
  * because this is a backstop against a stalled gateway rather than a latency budget - the
@@ -648,7 +741,7 @@ async function runDeferredAdjudication(payloadFile, env) {
648
741
  // Retrieval finds decisions on the same SUBJECT. It does not encode opposition - a measurement
649
742
  // put the agreeing pair at cosine 0.38 against the contradicting pair at 0.31 - so this
650
743
  // wording must never assert a conflict. Saying "related" is the honest claim and the useful one.
651
- export function buildRelatedOutput(decisions, opts, wrote = [], retrievalFailed = false) {
744
+ export function buildRelatedOutput(decisions, opts, wrote = [], retrievalFailed = false, verdict = { kind: 'not_requested' }) {
652
745
  const lines = decisions.map((d) => `- ${d.title}`);
653
746
  // `git blame` names these deterministically: they are not a guess about the subject, they put these exact lines here.
654
747
  const writerBlock = wrote.length
@@ -658,16 +751,33 @@ export function buildRelatedOutput(decisions, opts, wrote = [], retrievalFailed
658
751
  'Check that this change still honours what they decided before continuing.',
659
752
  ]
660
753
  : [];
661
- const related = decisions.length
662
- ? [
663
- `${wrote.length ? 'Also, ' : 'Align decision graph: '}${decisions.length} prior decision${decisions.length > 1 ? 's relate' : ' relates'} to this change:`,
664
- ...lines,
665
- 'These are related by content search and have NOT been adjudicated. Check whether any of them opposes this change before continuing.',
666
- ]
667
- : [];
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
+ : [];
668
772
  const summary = [
669
773
  ...writerBlock,
670
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
+ : []),
671
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.'] : []),
672
782
  // The model is the only reader of this text; without this line the user cannot tell the hook ran.
673
783
  'Tell the user in one line which of these you checked against and whether this change agrees with it.',
@@ -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 and your CLAUDE.md/AGENTS.md content (no auth required)')
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 and CLAUDE.md/AGENTS.md...');
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,qEAAqE,CAAC;SAClF,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,yCAAyC,CAAC,CAAC;QACzD,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
+ {"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":"registry.d.ts","sourceRoot":"","sources":["../../src/commands/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmCzC;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,YAAY;IAC3B,qFAAqF;IACrF,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,uFAAuF;IACvF,OAAO,EAAE,OAAO,CAAC;IACjB;mDAC+C;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CACtC;AAED,eAAO,MAAM,gBAAgB,EAAE,SAAS,YAAY,EA+EnD,CAAC;AAEF,oFAAoF;AACpF,eAAO,MAAM,YAAY,kDAAkD,CAAC;AAE5E,wBAAgB,cAAc,IAAI,YAAY,EAAE,CAE/C"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/commands/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoCzC;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,YAAY;IAC3B,qFAAqF;IACrF,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,uFAAuF;IACvF,OAAO,EAAE,OAAO,CAAC;IACjB;mDAC+C;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CACtC;AAED,eAAO,MAAM,gBAAgB,EAAE,SAAS,YAAY,EAiFnD,CAAC;AAEF,oFAAoF;AACpF,eAAO,MAAM,YAAY,kDAAkD,CAAC;AAE5E,wBAAgB,cAAc,IAAI,YAAY,EAAE,CAE/C"}
@@ -31,6 +31,7 @@ import { registerAgentsCommand } from './agents.js';
31
31
  import { registerAiCommand } from './ai.js';
32
32
  import { registerSyncCommand } from './sync.js';
33
33
  import { registerMarkCommand } from './mark.js';
34
+ import { registerRuleCommand } from './rule.js';
34
35
  export const COMMAND_REGISTRY = [
35
36
  // Environment targeting
36
37
  { names: ['env'], visible: false, summary: 'Set or show the default environment', register: registerEnvCommand },
@@ -50,6 +51,8 @@ export const COMMAND_REGISTRY = [
50
51
  { names: ['sync'], visible: false, summary: 'Bring connected sources up to date in your local graph', register: registerSyncCommand },
51
52
  // LM: judge what the guardrail shows. Hidden until the help surface is decided (C8), like sync and capture.
52
53
  { names: ['mark'], visible: false, summary: 'Mark a conflict real or false, a replacement, or not a decision (local)', register: registerMarkCommand },
54
+ // Co-change rules: written by hand until the importers emit them. Hidden like mark: a power-user verb.
55
+ { names: ['rule'], visible: false, summary: 'Record a co-change rule: a PR touching some files must also touch another (local)', register: registerRuleCommand },
53
56
  {
54
57
  names: ['connect'],
55
58
  visible: true,
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/commands/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/commands/registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * `align rule` - a co-change rule written by hand, into the local graph.
3
+ *
4
+ * align rule add "<title>" --when <glob...> --require <path...>
5
+ * align rule list
6
+ *
7
+ * "A PR touching --when must also touch one of --require, in the same PR." `align check` evaluates it
8
+ * from the changed-file list, with no model call. The title is the decision this records, and what a
9
+ * flag cites. Not `capture` (which reads a decision out of a URL) and not `mark` (a judgement on a
10
+ * decision that exists): this makes the decision and its rule together.
11
+ */
12
+ import type { Command } from 'commander';
13
+ export interface RuleCommandDeps {
14
+ out(line: string): void;
15
+ err(line: string): void;
16
+ graphPath(): string | undefined;
17
+ repo(): Promise<string | null>;
18
+ }
19
+ export interface RuleAddOptions {
20
+ when?: string[];
21
+ require?: string[];
22
+ summary?: string;
23
+ }
24
+ export declare function runRuleAdd(title: string | undefined, opts: RuleAddOptions, deps: RuleCommandDeps): Promise<number>;
25
+ export declare function runRuleList(deps: RuleCommandDeps): Promise<number>;
26
+ export declare function runRuleRemove(id: string | undefined, deps: RuleCommandDeps): Promise<number>;
27
+ export declare function registerRuleCommand(program: Command): void;
28
+ //# sourceMappingURL=rule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rule.d.ts","sourceRoot":"","sources":["../../src/commands/rule.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOzC,MAAM,WAAW,eAAe;IAAG,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,IAAI,MAAM,GAAG,SAAS,CAAC;IAAC,IAAI,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;CAAE;AACtJ,MAAM,WAAW,cAAc;IAAG,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE;AAIzF,wBAAsB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBxH;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAWxE;AAED,wBAAsB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAOlG;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA6B1D"}