@aligndottech/cli 0.20.0 → 0.21.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.
@@ -0,0 +1,270 @@
1
+ import { lstatSync, mkdirSync, readFileSync, renameSync, unlinkSync, writeFileSync } from 'node:fs';
2
+ import { tmpdir } from 'node:os';
3
+ import path from 'node:path';
4
+ import { createHash, randomUUID } from 'node:crypto';
5
+ /**
6
+ * ALI-570: the store that carries an adjudication verdict from the background adjudicator
7
+ * back to the NEXT advisory hook invocation.
8
+ *
9
+ * The hook is retrieval-only inside its window - adjudication measured ~11s against a ~10s
10
+ * host budget, and in local mode it is also the pipeline's only provider egress. So under
11
+ * `--block-on-critical` the hook spawns a detached adjudicator and exits; the adjudicator
12
+ * writes its verdict here; and the next PreToolUse reads it. A verdict names the exact
13
+ * CHANGE it judged (see `changeIdentityHash` in commands/check.ts - tool, target file,
14
+ * replaced text and new text, not the new text alone), because a deny must hit a RETRY of
15
+ * the adjudicated change and nothing else.
16
+ *
17
+ * Everything here is best-effort and fail-open, like advisory-dedup one file over: a
18
+ * malformed store, a full disk or a lost race must never block an edit or error a hook.
19
+ * That obligation is THIS module's, not its callers' - every export below returns a safe
20
+ * value rather than relying on the blanket catch in runAdvisory.
21
+ */
22
+ /** A verdict older than this cannot block: the working tree has moved on. */
23
+ export const VERDICT_TTL_MS = 15 * 60_000;
24
+ /**
25
+ * How long a spawn marker suppresses re-spawning for the same change. Short on purpose:
26
+ * a crashed adjudicator must not wedge the pipeline, only debounce it. An adjudicator that
27
+ * RAN but could not judge (ALI-414 `unknown`) gets this TTL too, not the verdict TTL - see
28
+ * `adjudicated` below.
29
+ */
30
+ export const PENDING_TTL_MS = 2 * 60_000;
31
+ /** Cap the store: it is re-parsed on every hook invocation, so it must not grow unbounded. */
32
+ export const MAX_STORED_VERDICTS = 64;
33
+ /**
34
+ * Ceiling on adjudicators in flight for one project. Each is a detached process making
35
+ * provider calls, and an agent editing quickly proposes DIFFERENT content every time, so
36
+ * the content dedup below does not bound this - only a cap does.
37
+ */
38
+ export const MAX_CONCURRENT_ADJUDICATIONS = 3;
39
+ /** Longest title/reason/url we will carry back out of the store. */
40
+ const MAX_TEXT_FIELD = 400;
41
+ /**
42
+ * Bumped whenever StoredVerdict's shape changes. It is part of the FILENAME, so an older
43
+ * CLI on the same machine (a global install beside an `npx` in another project) reads its
44
+ * own store instead of choking on a shape it predates.
45
+ */
46
+ const STORE_SCHEMA = 2;
47
+ const EMPTY = { pending: [], verdicts: [] };
48
+ export function contentHashOf(text) {
49
+ return createHash('sha1').update(text).digest('hex');
50
+ }
51
+ /**
52
+ * A 0700 directory of our own, rather than tmpdir() itself.
53
+ *
54
+ * macOS gives each user a private tmpdir, but on Linux `os.tmpdir()` falls back to /tmp
55
+ * (mode 1777) whenever TMPDIR is unset, and on a shared build host that means two things:
56
+ * the payload file holds the user's proposed source, and this store feeds the text the
57
+ * agent is shown as the reason its edit was refused. Neither belongs in a directory other
58
+ * uids can read or pre-plant symlinks in.
59
+ *
60
+ * Returns null when the directory cannot be established safely, and every caller then
61
+ * degrades to "no store" rather than erroring - fail-open, as everywhere else here.
62
+ *
63
+ * The mode bits are POSIX-only; Windows honours just the read-only flag and reports 0o666.
64
+ * That costs nothing, because the threat is a SHARED tmp directory and Windows already gives
65
+ * each user a private %LOCALAPPDATA%\Temp - which is also why the uid falls back to a
66
+ * constant there rather than trying to synthesise one.
67
+ */
68
+ function storeDir() {
69
+ try {
70
+ const uid = typeof process.getuid === 'function' ? String(process.getuid()) : 'win';
71
+ const dir = path.join(tmpdir(), `align-${uid}`);
72
+ mkdirSync(dir, { recursive: true, mode: 0o700 });
73
+ // mkdirSync is happy with an existing SYMLINK to a directory, which is exactly what a
74
+ // pre-planting attacker leaves. lstat (never stat) is what tells the two apart.
75
+ const st = lstatSync(dir);
76
+ if (!st.isDirectory() || st.isSymbolicLink())
77
+ return null;
78
+ if (typeof process.getuid === 'function' && st.uid !== process.getuid())
79
+ return null;
80
+ return dir;
81
+ }
82
+ catch {
83
+ return null;
84
+ }
85
+ }
86
+ /**
87
+ * Scoped by environment as well as directory: a verdict adjudicated against the prod graph
88
+ * must not answer a proposal made after the user switched to `--local`. Same reasoning as
89
+ * the change hash - the key has to be as specific as the thing it identifies.
90
+ */
91
+ function storePath(cwd, envName) {
92
+ const dir = storeDir();
93
+ if (!dir)
94
+ return null;
95
+ const hash = createHash('sha1').update(`${cwd}\0${envName}`).digest('hex').slice(0, 16);
96
+ return path.join(dir, `verdict-v${STORE_SCHEMA}-${hash}.json`);
97
+ }
98
+ /** Where the adjudication payload for one change is handed to the detached child. */
99
+ export function adjudicationPayloadPath(contentHash) {
100
+ const dir = storeDir();
101
+ if (!dir)
102
+ return null;
103
+ return path.join(dir, `adjudicate-${contentHash.slice(0, 12)}-${randomUUID()}.json`);
104
+ }
105
+ function clean(value, fallback = '') {
106
+ if (typeof value !== 'string')
107
+ return fallback;
108
+ // Strip control characters and cap: this text is interpolated verbatim into Claude Code's
109
+ // permissionDecisionReason, which the model reads as an authoritative refusal. Whatever
110
+ // wrote the store does not get to choose how much of the agent's context it occupies.
111
+ // eslint-disable-next-line no-control-regex -- stripping control characters is the point
112
+ return value.replace(/[\u0000-\u001f\u007f]/g, ' ').slice(0, MAX_TEXT_FIELD);
113
+ }
114
+ function toConflict(raw) {
115
+ if (!raw || typeof raw !== 'object')
116
+ return null;
117
+ const r = raw;
118
+ const severity = r['severity'] === 'critical' ? 'critical' : 'warning';
119
+ const conflict = {
120
+ decision_id: clean(r['decision_id']),
121
+ title: clean(r['title']),
122
+ reason: clean(r['reason']),
123
+ severity,
124
+ };
125
+ if (typeof r['summary'] === 'string')
126
+ conflict.summary = clean(r['summary']);
127
+ if (typeof r['url'] === 'string')
128
+ conflict.url = clean(r['url']);
129
+ return conflict;
130
+ }
131
+ function toVerdict(raw) {
132
+ if (!raw || typeof raw !== 'object')
133
+ return null;
134
+ const r = raw;
135
+ if (typeof r['ts'] !== 'number' || !Number.isFinite(r['ts']))
136
+ return null;
137
+ if (typeof r['contentHash'] !== 'string' || !r['contentHash'])
138
+ return null;
139
+ if (!Array.isArray(r['conflicts']))
140
+ return null;
141
+ const conflicts = r['conflicts'].map(toConflict).filter((c) => c !== null);
142
+ return {
143
+ ts: r['ts'],
144
+ filePath: clean(r['filePath']),
145
+ contentHash: r['contentHash'],
146
+ adjudicated: r['adjudicated'] === true,
147
+ conflicts,
148
+ };
149
+ }
150
+ function toPending(raw) {
151
+ if (!raw || typeof raw !== 'object')
152
+ return null;
153
+ const r = raw;
154
+ if (typeof r['ts'] !== 'number' || !Number.isFinite(r['ts']))
155
+ return null;
156
+ if (typeof r['contentHash'] !== 'string' || !r['contentHash'])
157
+ return null;
158
+ return { ts: r['ts'], contentHash: r['contentHash'] };
159
+ }
160
+ /**
161
+ * Every row is validated and normalised on the way out. A store is a file in a shared
162
+ * directory, so "it parsed as JSON" says nothing about its shape: one row of the wrong
163
+ * shape used to throw straight through the callers' blanket catch, which silenced the
164
+ * hook ENTIRELY - no deny, no context, not even the ALI-414 could-not-check notice - and
165
+ * did so permanently, because the write path threw on the same row before it could
166
+ * overwrite it. Filtering here is what makes the store self-repairing.
167
+ */
168
+ function readStore(cwd, envName) {
169
+ try {
170
+ const file = storePath(cwd, envName);
171
+ if (!file)
172
+ return { ...EMPTY };
173
+ const parsed = JSON.parse(readFileSync(file, 'utf8'));
174
+ if (!parsed || typeof parsed !== 'object')
175
+ return { ...EMPTY };
176
+ const p = parsed;
177
+ return {
178
+ pending: Array.isArray(p['pending'])
179
+ ? p['pending'].map(toPending).filter((m) => m !== null)
180
+ : [],
181
+ verdicts: Array.isArray(p['verdicts'])
182
+ ? p['verdicts'].map(toVerdict).filter((v) => v !== null)
183
+ : [],
184
+ };
185
+ }
186
+ catch {
187
+ // Absent, unreadable or corrupt all mean "no verdicts": fail-open, never fail the hook.
188
+ return { ...EMPTY };
189
+ }
190
+ }
191
+ /**
192
+ * Atomic AND non-following: a unique temp name plus `wx` (O_EXCL) means a pre-planted
193
+ * symlink at the temp path makes the write FAIL rather than land on its target, and
194
+ * `renameSync` then only ever moves a file we just created ourselves.
195
+ */
196
+ function writeStore(cwd, envName, store) {
197
+ const file = storePath(cwd, envName);
198
+ if (!file)
199
+ return;
200
+ const tmp = `${file}.${randomUUID()}.tmp`;
201
+ try {
202
+ writeFileSync(tmp, JSON.stringify(store), { encoding: 'utf8', mode: 0o600, flag: 'wx' });
203
+ renameSync(tmp, file);
204
+ }
205
+ catch {
206
+ try {
207
+ unlinkSync(tmp);
208
+ }
209
+ catch {
210
+ // Nothing to clean up.
211
+ }
212
+ }
213
+ }
214
+ function fresh(ts, now, ttl) {
215
+ return now - ts >= 0 ? now - ts <= ttl : false;
216
+ }
217
+ /** An unjudged row debounces a respawn; it never earns the full verdict lifetime. */
218
+ function ttlFor(verdict) {
219
+ return verdict.adjudicated ? VERDICT_TTL_MS : PENDING_TTL_MS;
220
+ }
221
+ /**
222
+ * The verdict that may block a retry: fresh, actually adjudicated, and judging EXACTLY this
223
+ * change - both the identity hash and the target file. Change identity rather than file
224
+ * identity, so a deny can only hit the proposal that was adjudicated; an agent that adjusts
225
+ * its approach hashes differently and proceeds.
226
+ */
227
+ export function blockableVerdictFor(cwd, envName, changeHash, filePath, now = Date.now()) {
228
+ const match = readStore(cwd, envName).verdicts.find(v => v.contentHash === changeHash &&
229
+ v.filePath === filePath &&
230
+ v.adjudicated &&
231
+ fresh(v.ts, now, VERDICT_TTL_MS));
232
+ return match ?? null;
233
+ }
234
+ /** Record a verdict, replacing any earlier one for the same change and pruning stale rows. */
235
+ export function recordVerdict(cwd, envName, verdict, now = Date.now()) {
236
+ const store = readStore(cwd, envName);
237
+ store.verdicts = [
238
+ verdict,
239
+ ...store.verdicts.filter(v => v.contentHash !== verdict.contentHash && fresh(v.ts, now, ttlFor(v))),
240
+ ].slice(0, MAX_STORED_VERDICTS);
241
+ // A landed verdict supersedes the pending marker that announced it was coming.
242
+ store.pending = store.pending.filter(m => m.contentHash !== verdict.contentHash && fresh(m.ts, now, PENDING_TTL_MS));
243
+ writeStore(cwd, envName, store);
244
+ }
245
+ /** True when a fresh adjudication of this exact change is already in flight or decided. */
246
+ export function adjudicationExistsFor(cwd, envName, contentHash, now = Date.now()) {
247
+ const store = readStore(cwd, envName);
248
+ if (store.pending.some(m => m.contentHash === contentHash && fresh(m.ts, now, PENDING_TTL_MS))) {
249
+ return true;
250
+ }
251
+ return store.verdicts.some(v => v.contentHash === contentHash && fresh(v.ts, now, ttlFor(v)));
252
+ }
253
+ /** How many adjudicators are currently believed to be running for this project. */
254
+ export function inFlightAdjudications(cwd, envName, now = Date.now()) {
255
+ return readStore(cwd, envName).pending.filter(m => fresh(m.ts, now, PENDING_TTL_MS)).length;
256
+ }
257
+ /**
258
+ * Mark one change as being adjudicated. Per-change, not a single slot: two interleaved
259
+ * edits used to evict each other's marker, so the debounce silently stopped covering the
260
+ * exact case it exists for.
261
+ */
262
+ export function markAdjudicationPending(cwd, envName, contentHash, now = Date.now()) {
263
+ const store = readStore(cwd, envName);
264
+ store.pending = [
265
+ { ts: now, contentHash },
266
+ ...store.pending.filter(m => m.contentHash !== contentHash && fresh(m.ts, now, PENDING_TTL_MS)),
267
+ ].slice(0, MAX_STORED_VERDICTS);
268
+ writeStore(cwd, envName, store);
269
+ }
270
+ //# sourceMappingURL=advisory-verdict.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"advisory-verdict.js","sourceRoot":"","sources":["../../src/lib/advisory-verdict.ts"],"names":[],"mappings":"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"}
@@ -95,6 +95,39 @@ export interface AlignmentResult {
95
95
  status: 'aligned' | 'conflicting' | 'no-context' | 'unknown' | 'retrieved';
96
96
  /** Populated only when `status` is `unknown`. */
97
97
  reason?: UnknownReason;
98
+ /**
99
+ * WHICH KIND of unknown, and therefore what remedies it (ALI-710).
100
+ *
101
+ * 'unavailable' - the check could not run, and a re-run can heal it.
102
+ * 'non_verdict' - the judge ran and abstained. A re-run returns the same answer forever,
103
+ * so only a person can move it.
104
+ *
105
+ * Optional because an older gateway does not send it, and a consumer must treat its
106
+ * absence as "cannot tell" rather than as either class.
107
+ */
108
+ reason_class?: 'unavailable' | 'non_verdict';
109
+ /**
110
+ * The handle for a stable non-verdict - what `align adjudicate` takes. Present only on
111
+ * that class, so its absence is what stops a person signing off an outage.
112
+ */
113
+ check_event_id?: string;
114
+ /**
115
+ * A named person's answer for this exact content, if one already exists.
116
+ *
117
+ * The nested keys are camelCase while every other wire type in this file is snake_case,
118
+ * which looks like a mistake and is not. `request()` returns `res.json()` untransformed,
119
+ * so these have to match the gateway byte for byte, and its repository maps the row there:
120
+ * `adjudicatedBy: row.adjudicated_by` (align-stack, PostgresCheckAdjudicationRepository's
121
+ * toRecord). The outer key is snake_case because the ROUTE spells it, and the inner ones
122
+ * are camelCase because a use case does - two writers, one payload. Verified against the
123
+ * merged gateway rather than assumed; change either side and both move.
124
+ */
125
+ prior_adjudication?: {
126
+ verdict: 'accepted' | 'conflicting';
127
+ adjudicatedBy: string;
128
+ adjudicatedAt: string;
129
+ checkEventId: string;
130
+ };
98
131
  confidence: number;
99
132
  relevant_decisions: Array<{
100
133
  id: string;
@@ -218,6 +251,19 @@ declare function buildHttpGatewayClient(env: EnvironmentConfig): {
218
251
  external_references: unknown[];
219
252
  spaces: unknown[];
220
253
  }>;
254
+ /**
255
+ * Answer a check that reached the judge and declined to rule (ALI-710).
256
+ *
257
+ * The gateway refuses a caller it can identify as an agent, so this is a human's act by
258
+ * construction rather than by convention. It also refuses an event that is not a
259
+ * non-verdict, which is why there is no verdict vocabulary for "could not check" here:
260
+ * an outage is not something a person can sign off.
261
+ */
262
+ adjudicateCheck(eventId: string, verdict: "accepted" | "conflicting", note?: string): Promise<{
263
+ verdict: "accepted" | "conflicting";
264
+ adjudicatedBy: string;
265
+ alreadyAdjudicated: boolean;
266
+ }>;
221
267
  checkAlignment(diff: string, context?: string, opts?: {
222
268
  depth?: CheckDepth;
223
269
  title?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-client.d.ts","sourceRoot":"","sources":["../../src/lib/gateway-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway-client.d.ts","sourceRoot":"","sources":["../../src/lib/gateway-client.ts"],"names":[],"mappings":"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"}
@@ -158,6 +158,20 @@ function buildHttpGatewayClient(env) {
158
158
  // does not skip adjudication, for callers whose failure policy makes `unknown` fatal.
159
159
  // Requires a gateway that knows the member - an older one rejects the VALUE with a 400
160
160
  // (unknown keys it strips, unknown enum values it refuses), so ship the gateway first.
161
+ /**
162
+ * Answer a check that reached the judge and declined to rule (ALI-710).
163
+ *
164
+ * The gateway refuses a caller it can identify as an agent, so this is a human's act by
165
+ * construction rather than by convention. It also refuses an event that is not a
166
+ * non-verdict, which is why there is no verdict vocabulary for "could not check" here:
167
+ * an outage is not something a person can sign off.
168
+ */
169
+ async adjudicateCheck(eventId, verdict, note) {
170
+ return request(`/alignment/checks/${encodeURIComponent(eventId)}/adjudicate`, {
171
+ method: 'POST',
172
+ body: JSON.stringify({ verdict, ...(note ? { note } : {}) }),
173
+ });
174
+ },
161
175
  async checkAlignment(diff, context, opts = {}) {
162
176
  return request('/alignment/check', {
163
177
  method: 'POST',
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-client.js","sourceRoot":"","sources":["../../src/lib/gateway-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway-client.js","sourceRoot":"","sources":["../../src/lib/gateway-client.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,5 @@
1
1
  export type AiProvider = 'anthropic' | 'openai' | 'gemini' | 'groq' | 'mistral' | 'grok';
2
- export interface LocalLlmOptions {
3
- provider?: AiProvider;
4
- apiKey?: string;
5
- }
6
2
  export interface CallChatOptions {
7
- /** Explicitly configured provider (e.g. written by `align setup`); takes priority. */
8
- provider?: AiProvider;
9
- apiKey?: string;
10
3
  maxTokens?: number;
11
4
  /**
12
5
  * Sampling temperature. Omit for the provider default; pass 0 for deterministic
@@ -111,11 +104,10 @@ export declare function isAvailabilityFailure(status: number, body: string): boo
111
104
  export declare function hasConfiguredProvider(): boolean;
112
105
  /**
113
106
  * Provider-agnostic chat call. Resolution order:
114
- * 1. explicitly configured provider+key (e.g. from `align setup`)
115
- * 2. ALIGN_LLM_BASE_URL - any OpenAI-compatible endpoint (Grok, OpenRouter,
107
+ * 1. ALIGN_LLM_BASE_URL - any OpenAI-compatible endpoint (Grok, OpenRouter,
116
108
  * Together, DeepSeek, LM Studio, vLLM, ...) via ALIGN_LLM_MODEL/ALIGN_LLM_API_KEY
117
- * 3. named providers by env key (Anthropic, OpenAI, Gemini, Groq, Mistral, Grok)
118
- * 4. local Ollama (no key)
109
+ * 2. named providers by env key (Anthropic, OpenAI, Gemini, Groq, Mistral, Grok)
110
+ * 3. local Ollama (no key)
119
111
  * Returns the model's text, or the reason there is none - see LlmFailure. The reason
120
112
  * is RETURNED rather than recorded in module state, so concurrent calls cannot read
121
113
  * each other's diagnosis.
@@ -133,11 +125,11 @@ export declare function synthesiseDetailed(question: string, decisions: Array<{
133
125
  id: string;
134
126
  title: string;
135
127
  summary: string;
136
- }>, options?: LocalLlmOptions): Promise<ChatResult>;
128
+ }>): Promise<ChatResult>;
137
129
  /** Text-only wrapper on synthesiseDetailed, for callers that cannot use the reason. */
138
130
  export declare function synthesiseLocally(question: string, decisions: Array<{
139
131
  id: string;
140
132
  title: string;
141
133
  summary: string;
142
- }>, options?: LocalLlmOptions): Promise<string | null>;
134
+ }>): Promise<string | null>;
143
135
  //# sourceMappingURL=local-llm.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"local-llm.d.ts","sourceRoot":"","sources":["../../src/lib/local-llm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-llm.d.ts","sourceRoot":"","sources":["../../src/lib/local-llm.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AAEzF,MAAM,WAAW,eAAe;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,uBAAuB,QAMmD,CAAC;AAoMxF;;;;;;;;;GASG;AACH,eAAO,MAAM,qBAAqB,EAAE,SAAS,MAAM,EAOlD,CAAC;AAyBF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,aAAa,CAAC;AAElD,MAAM,MAAM,iBAAiB,GACzB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC3B;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,qBAAqB,CAAA;CAAE,CAAC;AA+B/D,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAoB5F;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,GACvB;IAAE,IAAI,EAAE,2BAA2B,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GACvD;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAElF,MAAM,MAAM,UAAU,GAClB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC1B;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,UAAU,CAAA;CAAE,CAAC;AAoDvC;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAI3E;AA8GD;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAG/C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,eAAe,GACrB,OAAO,CAAC,UAAU,CAAC,CA+DrB;AAED,oFAAoF;AACpF,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,eAAe,GACrB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGxB;AAED,oGAAoG;AACpG,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GAC/D,OAAO,CAAC,UAAU,CAAC,CAGrB;AAED,uFAAuF;AACvF,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GAC/D,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGxB"}
@@ -435,11 +435,10 @@ export function hasConfiguredProvider() {
435
435
  }
436
436
  /**
437
437
  * Provider-agnostic chat call. Resolution order:
438
- * 1. explicitly configured provider+key (e.g. from `align setup`)
439
- * 2. ALIGN_LLM_BASE_URL - any OpenAI-compatible endpoint (Grok, OpenRouter,
438
+ * 1. ALIGN_LLM_BASE_URL - any OpenAI-compatible endpoint (Grok, OpenRouter,
440
439
  * Together, DeepSeek, LM Studio, vLLM, ...) via ALIGN_LLM_MODEL/ALIGN_LLM_API_KEY
441
- * 3. named providers by env key (Anthropic, OpenAI, Gemini, Groq, Mistral, Grok)
442
- * 4. local Ollama (no key)
440
+ * 2. named providers by env key (Anthropic, OpenAI, Gemini, Groq, Mistral, Grok)
441
+ * 3. local Ollama (no key)
443
442
  * Returns the model's text, or the reason there is none - see LlmFailure. The reason
444
443
  * is RETURNED rather than recorded in module state, so concurrent calls cannot read
445
444
  * each other's diagnosis.
@@ -471,13 +470,13 @@ export async function callChatDetailed(system, user, opts) {
471
470
  unrecognised = outcome.unrecognisedModels;
472
471
  return undefined;
473
472
  };
474
- // 1. configured provider (from align setup) takes priority
475
- if (opts?.provider && opts.apiKey) {
476
- const settled = settle(await callProvider(opts.provider, opts.apiKey, system, user, maxTokens, temperature), opts.provider);
477
- if (settled)
478
- return settled;
479
- }
480
- // 2. generic OpenAI-compatible escape hatch - covers any provider
473
+ // A "provider: ... from `align setup`" branch used to sit first here. Nothing ever
474
+ // supplied it - setup never collected or stored a provider key - so it was tested,
475
+ // documented (README and this file's own comment both claimed it), and unreachable.
476
+ // Deleted rather than kept: a mechanism with no caller reads as a feature and becomes
477
+ // documentation, which is exactly how it got into the README twice. If a future path
478
+ // needs explicit provider injection, add it WITH its caller.
479
+ // 1. generic OpenAI-compatible escape hatch - covers any provider
481
480
  const baseUrl = process.env['ALIGN_LLM_BASE_URL'];
482
481
  if (baseUrl) {
483
482
  const key = process.env['ALIGN_LLM_API_KEY'] ?? '';
@@ -486,10 +485,8 @@ export async function callChatDetailed(system, user, opts) {
486
485
  if (settled)
487
486
  return settled;
488
487
  }
489
- // 3. named providers via env keys, in priority order
488
+ // 2. named providers via env keys, in priority order
490
489
  for (const provider of ALL_PROVIDERS) {
491
- if (opts?.provider === provider)
492
- continue; // already tried above
493
490
  const key = keyForProvider(provider);
494
491
  if (key) {
495
492
  const settled = settle(await callProvider(provider, key, system, user, maxTokens, temperature), provider);
@@ -497,7 +494,7 @@ export async function callChatDetailed(system, user, opts) {
497
494
  return settled;
498
495
  }
499
496
  }
500
- // 4. local Ollama as last resort
497
+ // 3. local Ollama as last resort
501
498
  const settled = settle(await tryOllama(system, user, temperature), 'ollama');
502
499
  if (settled)
503
500
  return settled;
@@ -513,13 +510,13 @@ export async function callChat(system, user, opts) {
513
510
  return result.ok ? result.text : null;
514
511
  }
515
512
  /** Synthesise a natural-language answer from retrieved decisions, using any configured provider. */
516
- export async function synthesiseDetailed(question, decisions, options) {
513
+ export async function synthesiseDetailed(question, decisions) {
517
514
  const user = buildUserPrompt(question, decisions);
518
- return callChatDetailed(SYNTHESIS_SYSTEM_PROMPT, user, { provider: options?.provider, apiKey: options?.apiKey });
515
+ return callChatDetailed(SYNTHESIS_SYSTEM_PROMPT, user);
519
516
  }
520
517
  /** Text-only wrapper on synthesiseDetailed, for callers that cannot use the reason. */
521
- export async function synthesiseLocally(question, decisions, options) {
522
- const result = await synthesiseDetailed(question, decisions, options);
518
+ export async function synthesiseLocally(question, decisions) {
519
+ const result = await synthesiseDetailed(question, decisions);
523
520
  return result.ok ? result.text : null;
524
521
  }
525
522
  //# sourceMappingURL=local-llm.js.map