tldr-experts 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +425 -0
- package/README.md +4 -2
- package/dist/hooks/answer-capture.js +7 -7
- package/dist/hooks/budget-gate.js +8 -8
- package/dist/hooks/{chunk-x6n8b5fp.js → chunk-2y3kwfrx.js} +1 -1
- package/dist/hooks/{chunk-97ncnegd.js → chunk-37fwvg3x.js} +1 -1
- package/dist/hooks/{chunk-g4db8rbs.js → chunk-5w5eg00k.js} +1 -1
- package/dist/hooks/{chunk-v4ay50nq.js → chunk-6405vkzk.js} +1 -1
- package/dist/hooks/{chunk-h7151g8w.js → chunk-b9rjx4qc.js} +3 -2
- package/dist/hooks/{chunk-dhbxzjfs.js → chunk-cf4az0j5.js} +1 -1
- package/dist/hooks/{chunk-17gv74sr.js → chunk-ecfqpeyj.js} +3 -3
- package/dist/hooks/{chunk-7eqhfddw.js → chunk-md1c7z7q.js} +3 -3
- package/dist/hooks/{chunk-5k4dggq0.js → chunk-pf9d8ag8.js} +5 -5
- package/dist/hooks/{chunk-ka6bkb64.js → chunk-rk1nm39z.js} +1 -1
- package/dist/hooks/{chunk-vrhczzxs.js → chunk-x3zy7zrn.js} +1 -1
- package/dist/hooks/{chunk-9w64mxdh.js → chunk-y3cxqvnx.js} +154 -12
- package/dist/hooks/claim-sources.js +5 -5
- package/dist/hooks/dod-gate.js +6 -6
- package/dist/hooks/no-reask.js +8 -8
- package/dist/hooks/session-start.js +10 -10
- package/dist/hooks/statusline.js +7 -7
- package/dist/tldrx.js +1786 -1029
- package/env.yml +9 -1
- package/package.json +1 -1
- package/plugin/.claude-plugin/plugin.json +1 -1
- package/stages/how/stage.yml +9 -2
- package/stages/plan/stage.yml +26 -0
- package/templates/experts/delivery.md +3 -0
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
withWorkspaceLock,
|
|
4
4
|
workspaceRootOfFactsPath,
|
|
5
5
|
writeAtomic
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-6405vkzk.js";
|
|
7
7
|
import {
|
|
8
8
|
FACT_CONFIDENCES,
|
|
9
9
|
FACT_KINDS,
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
isLive,
|
|
15
15
|
isRetired,
|
|
16
16
|
noteDeprecations
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-37fwvg3x.js";
|
|
18
18
|
import {
|
|
19
19
|
asDocument,
|
|
20
20
|
isRecord,
|
|
@@ -29,7 +29,7 @@ import {
|
|
|
29
29
|
SRC_PATTERNS,
|
|
30
30
|
parseYaml,
|
|
31
31
|
readableSource
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-y3cxqvnx.js";
|
|
33
33
|
|
|
34
34
|
// src/core/facts/FactsStore.ts
|
|
35
35
|
import { existsSync, readFileSync } from "node:fs";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
EVIDENCE_FILE,
|
|
3
3
|
gateEvidenceRelPath
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-b9rjx4qc.js";
|
|
5
5
|
import {
|
|
6
6
|
MAX_PLAN_STORIES,
|
|
7
7
|
MAX_STORIES_PER_WAVE,
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
requirePattern,
|
|
12
12
|
requireStringList,
|
|
13
13
|
requireVersion1
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-5w5eg00k.js";
|
|
15
15
|
import {
|
|
16
16
|
asDocument,
|
|
17
17
|
isRecord,
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
listRunDirs,
|
|
32
32
|
parseYaml,
|
|
33
33
|
readableSource
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-y3cxqvnx.js";
|
|
35
35
|
|
|
36
36
|
// src/hooks/lib/runFile.ts
|
|
37
37
|
import { existsSync, readFileSync } from "node:fs";
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
nowRfc3339,
|
|
8
8
|
openRunViews,
|
|
9
9
|
validateRunBudget
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-md1c7z7q.js";
|
|
11
11
|
import {
|
|
12
12
|
EventLog,
|
|
13
13
|
asRunFile,
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
isTerminal,
|
|
20
20
|
stageAt,
|
|
21
21
|
validateRunFile
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-b9rjx4qc.js";
|
|
23
23
|
import {
|
|
24
24
|
backupPathFor,
|
|
25
25
|
isAlive,
|
|
@@ -28,17 +28,17 @@ import {
|
|
|
28
28
|
workspaceRootOfRunDir,
|
|
29
29
|
writeAtomic,
|
|
30
30
|
yamlScalar
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-6405vkzk.js";
|
|
32
32
|
import {
|
|
33
33
|
noteDeprecations,
|
|
34
34
|
openBlocks,
|
|
35
35
|
parseQuestions
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-37fwvg3x.js";
|
|
37
37
|
import {
|
|
38
38
|
listRunDirs,
|
|
39
39
|
parseYaml,
|
|
40
40
|
parseYamlRepairing
|
|
41
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-y3cxqvnx.js";
|
|
42
42
|
|
|
43
43
|
// src/core/statusline/runSnapshot.ts
|
|
44
44
|
import { existsSync as existsSync3, readFileSync as readFileSync3 } from "node:fs";
|
|
@@ -7415,6 +7415,7 @@ function isEpicWorktreeOf(name, runId) {
|
|
|
7415
7415
|
// src/hooks/lib/workspace.ts
|
|
7416
7416
|
import { existsSync as existsSync2, readdirSync, readFileSync, statSync as statSync2 } from "node:fs";
|
|
7417
7417
|
import { basename, dirname as dirname3, isAbsolute, join as join2, resolve, sep } from "node:path";
|
|
7418
|
+
var RUN_YML = "run.yml";
|
|
7418
7419
|
function locateWork(filePath) {
|
|
7419
7420
|
if (filePath === "")
|
|
7420
7421
|
return null;
|
|
@@ -7520,15 +7521,46 @@ function loadWorkspace(root) {
|
|
|
7520
7521
|
}
|
|
7521
7522
|
return empty();
|
|
7522
7523
|
}
|
|
7523
|
-
function toSrcContext(workspace, runDir) {
|
|
7524
|
+
function toSrcContext(workspace, runDir, options = {}) {
|
|
7524
7525
|
return {
|
|
7525
7526
|
root: workspace.root,
|
|
7526
7527
|
repos: workspace.repos,
|
|
7527
7528
|
commands: workspace.commands,
|
|
7528
7529
|
runDir: runDir ?? null,
|
|
7529
|
-
epicWorktrees: epicWorktreesOf(workspace, runDir ?? null)
|
|
7530
|
+
epicWorktrees: epicWorktreesOf(workspace, runDir ?? null),
|
|
7531
|
+
epicRefs: options.epicRefs === true ? epicRefsOf(workspace, runDir ?? null) : []
|
|
7530
7532
|
};
|
|
7531
7533
|
}
|
|
7534
|
+
function epicRefsOf(workspace, runDir) {
|
|
7535
|
+
if (runDir === null || runDir === "")
|
|
7536
|
+
return [];
|
|
7537
|
+
const path = join2(runDir, RUN_YML);
|
|
7538
|
+
if (!existsSync2(path))
|
|
7539
|
+
return [];
|
|
7540
|
+
let doc;
|
|
7541
|
+
try {
|
|
7542
|
+
doc = parseYaml(readFileSync(path, "utf8"));
|
|
7543
|
+
} catch {
|
|
7544
|
+
return [];
|
|
7545
|
+
}
|
|
7546
|
+
const recorded = doc?.build?.epic_branch;
|
|
7547
|
+
if (!Array.isArray(recorded))
|
|
7548
|
+
return [];
|
|
7549
|
+
const branches = [];
|
|
7550
|
+
for (const entry of recorded) {
|
|
7551
|
+
if (typeof entry === "string" && entry !== "" && !branches.includes(entry))
|
|
7552
|
+
branches.push(entry);
|
|
7553
|
+
}
|
|
7554
|
+
if (branches.length === 0)
|
|
7555
|
+
return [];
|
|
7556
|
+
const refs = [];
|
|
7557
|
+
for (const [repo, rel] of workspace.repos) {
|
|
7558
|
+
const dir = join2(workspace.root, rel);
|
|
7559
|
+
for (const ref of branches)
|
|
7560
|
+
refs.push({ repo, dir, ref });
|
|
7561
|
+
}
|
|
7562
|
+
return refs;
|
|
7563
|
+
}
|
|
7532
7564
|
function epicWorktreesOf(workspace, runDir) {
|
|
7533
7565
|
if (runDir === null || runDir === "")
|
|
7534
7566
|
return [];
|
|
@@ -7575,13 +7607,14 @@ function listRunDirs(root) {
|
|
|
7575
7607
|
const dirs = [];
|
|
7576
7608
|
for (const entry of readdirSync(work)) {
|
|
7577
7609
|
const dir = join2(work, entry);
|
|
7578
|
-
if (existsSync2(join2(dir,
|
|
7610
|
+
if (existsSync2(join2(dir, RUN_YML)) && statSync2(dir).isDirectory())
|
|
7579
7611
|
dirs.push(dir);
|
|
7580
7612
|
}
|
|
7581
7613
|
return dirs.sort().reverse();
|
|
7582
7614
|
}
|
|
7583
7615
|
|
|
7584
7616
|
// src/core/text/srcToken.ts
|
|
7617
|
+
import { spawnSync } from "node:child_process";
|
|
7585
7618
|
import { existsSync as existsSync3, readdirSync as readdirSync2, readFileSync as readFileSync2, statSync as statSync3 } from "node:fs";
|
|
7586
7619
|
import { isAbsolute as isAbsolute2, join as join3, normalize, relative, sep as sep2 } from "node:path";
|
|
7587
7620
|
var LINE_RE = /^\d{1,9}$/;
|
|
@@ -7926,11 +7959,22 @@ function resolveSrc(ref, ctx, section, claim = "") {
|
|
|
7926
7959
|
short ??= refused(`${ref.path} has ${lines} line(s); cited line ${highest}`, base.abs);
|
|
7927
7960
|
continue;
|
|
7928
7961
|
}
|
|
7929
|
-
|
|
7962
|
+
if (base.unmerged === undefined)
|
|
7963
|
+
return { ok: true, outcome: "ok", resolved: base.abs };
|
|
7964
|
+
return {
|
|
7965
|
+
ok: true,
|
|
7966
|
+
outcome: "ok",
|
|
7967
|
+
resolved: base.abs,
|
|
7968
|
+
unmerged: base.unmerged,
|
|
7969
|
+
message: `resolves in ${base.label} — unmerged`
|
|
7970
|
+
};
|
|
7930
7971
|
}
|
|
7972
|
+
const onRef = resolveOnEpicRefs(ref, ctx);
|
|
7973
|
+
if (onRef !== null)
|
|
7974
|
+
return onRef;
|
|
7931
7975
|
if (short !== null)
|
|
7932
7976
|
return short;
|
|
7933
|
-
const tried = bases.map((b) => b.label).join(", ");
|
|
7977
|
+
const tried = [...bases.map((b) => b.label), ...epicRefLabels(ref, ctx)].join(", ");
|
|
7934
7978
|
return refused(`no such file: ${ref.path} — tried ${tried}`, bases[0]?.abs);
|
|
7935
7979
|
}
|
|
7936
7980
|
case "cmd": {
|
|
@@ -8148,7 +8192,8 @@ function epicBases(ctx, repo, path) {
|
|
|
8148
8192
|
continue;
|
|
8149
8193
|
bases.push({
|
|
8150
8194
|
label: `epic worktree ${displayPath(ctx.root, tree.dir)}`,
|
|
8151
|
-
abs: normalize(join3(tree.dir, path))
|
|
8195
|
+
abs: normalize(join3(tree.dir, path)),
|
|
8196
|
+
unmerged: `the epic worktree ${displayPath(ctx.root, tree.dir)}`
|
|
8152
8197
|
});
|
|
8153
8198
|
}
|
|
8154
8199
|
return bases;
|
|
@@ -8165,13 +8210,103 @@ function countLines(path) {
|
|
|
8165
8210
|
const cached = lineCountCache.get(path);
|
|
8166
8211
|
if (cached !== undefined)
|
|
8167
8212
|
return cached;
|
|
8168
|
-
const
|
|
8169
|
-
const count = text === "" ? 0 : text.split(`
|
|
8170
|
-
`).length - (text.endsWith(`
|
|
8171
|
-
`) ? 1 : 0);
|
|
8213
|
+
const count = countTextLines(readFileSync2(path, "utf8"));
|
|
8172
8214
|
lineCountCache.set(path, count);
|
|
8173
8215
|
return count;
|
|
8174
8216
|
}
|
|
8217
|
+
function countTextLines(text) {
|
|
8218
|
+
return text === "" ? 0 : text.split(`
|
|
8219
|
+
`).length - (text.endsWith(`
|
|
8220
|
+
`) ? 1 : 0);
|
|
8221
|
+
}
|
|
8222
|
+
var GIT_BIN = "git";
|
|
8223
|
+
var EPIC_BLOB_TIMEOUT_MS = 5000;
|
|
8224
|
+
var EPIC_BLOB_MAX_BYTES = 4 * 1024 * 1024;
|
|
8225
|
+
var MAX_EPIC_BLOB_READS = 256;
|
|
8226
|
+
var epicBlobCache = new Map;
|
|
8227
|
+
var epicBlobReads = 0;
|
|
8228
|
+
function epicBlobLines(target) {
|
|
8229
|
+
const key = `${target.dir}\x00${target.ref}\x00${target.path}`;
|
|
8230
|
+
const cached = epicBlobCache.get(key);
|
|
8231
|
+
if (cached !== undefined)
|
|
8232
|
+
return cached;
|
|
8233
|
+
if (epicBlobReads >= MAX_EPIC_BLOB_READS)
|
|
8234
|
+
return null;
|
|
8235
|
+
epicBlobReads += 1;
|
|
8236
|
+
let lines = null;
|
|
8237
|
+
try {
|
|
8238
|
+
const out = spawnSync(GIT_BIN, ["--no-pager", "cat-file", "blob", `${target.ref}:${target.path}`], {
|
|
8239
|
+
cwd: target.dir,
|
|
8240
|
+
encoding: "utf8",
|
|
8241
|
+
timeout: EPIC_BLOB_TIMEOUT_MS,
|
|
8242
|
+
maxBuffer: EPIC_BLOB_MAX_BYTES,
|
|
8243
|
+
stdio: ["ignore", "pipe", "ignore"],
|
|
8244
|
+
windowsHide: true
|
|
8245
|
+
});
|
|
8246
|
+
if (out.status === 0 && typeof out.stdout === "string")
|
|
8247
|
+
lines = countTextLines(out.stdout);
|
|
8248
|
+
} catch {
|
|
8249
|
+
lines = null;
|
|
8250
|
+
}
|
|
8251
|
+
epicBlobCache.set(key, lines);
|
|
8252
|
+
return lines;
|
|
8253
|
+
}
|
|
8254
|
+
function resolveOnEpicRefs(ref, ctx) {
|
|
8255
|
+
const targets = epicTargets(ref, ctx);
|
|
8256
|
+
if (targets.length === 0)
|
|
8257
|
+
return null;
|
|
8258
|
+
let short = null;
|
|
8259
|
+
for (const target of targets) {
|
|
8260
|
+
const lines = epicBlobLines(target);
|
|
8261
|
+
if (lines === null)
|
|
8262
|
+
continue;
|
|
8263
|
+
const highest = ref.endLine ?? ref.startLine;
|
|
8264
|
+
if (highest > lines) {
|
|
8265
|
+
short ??= refused(`${target.path} has ${lines} line(s) on \`${target.ref}\` (unmerged, in ${target.repo}); ` + `cited line ${highest}`);
|
|
8266
|
+
continue;
|
|
8267
|
+
}
|
|
8268
|
+
return {
|
|
8269
|
+
ok: true,
|
|
8270
|
+
outcome: "ok",
|
|
8271
|
+
unmerged: target.ref,
|
|
8272
|
+
message: `resolves on \`${target.ref}\` — unmerged`
|
|
8273
|
+
};
|
|
8274
|
+
}
|
|
8275
|
+
return short;
|
|
8276
|
+
}
|
|
8277
|
+
function epicTargets(ref, ctx) {
|
|
8278
|
+
const refs = ctx.epicRefs ?? [];
|
|
8279
|
+
if (refs.length === 0 || isAbsolute2(ref.path))
|
|
8280
|
+
return [];
|
|
8281
|
+
const out = [];
|
|
8282
|
+
const push = (repo, path) => {
|
|
8283
|
+
for (const candidate of refs) {
|
|
8284
|
+
if (candidate.repo === repo)
|
|
8285
|
+
out.push({ ...candidate, path });
|
|
8286
|
+
}
|
|
8287
|
+
};
|
|
8288
|
+
if (ref.repo !== null) {
|
|
8289
|
+
push(ref.repo, ref.path);
|
|
8290
|
+
return out;
|
|
8291
|
+
}
|
|
8292
|
+
for (const candidate of refs) {
|
|
8293
|
+
const rel = ctx.repos.get(candidate.repo) ?? "";
|
|
8294
|
+
if (rel === "" || rel === ".")
|
|
8295
|
+
out.push({ ...candidate, path: ref.path });
|
|
8296
|
+
}
|
|
8297
|
+
const slash = ref.path.indexOf("/");
|
|
8298
|
+
const named = slash > 0 ? ref.path.slice(0, slash) : "";
|
|
8299
|
+
if (named !== "" && ctx.repos.has(named))
|
|
8300
|
+
push(named, ref.path.slice(slash + 1));
|
|
8301
|
+
return out;
|
|
8302
|
+
}
|
|
8303
|
+
function epicRefLabels(ref, ctx) {
|
|
8304
|
+
const seen = new Set;
|
|
8305
|
+
for (const target of epicTargets(ref, ctx)) {
|
|
8306
|
+
seen.add(`\`${target.ref}\` in ${target.repo} (recorded epic branch)`);
|
|
8307
|
+
}
|
|
8308
|
+
return [...seen];
|
|
8309
|
+
}
|
|
8175
8310
|
var factsCache = new Map;
|
|
8176
8311
|
var questionsCache = new Map;
|
|
8177
8312
|
var graphCache = new Map;
|
|
@@ -8487,6 +8622,7 @@ function validateSections(handoff, required, ctx, lineOffset = 0) {
|
|
|
8487
8622
|
const unresolved = [];
|
|
8488
8623
|
const unverified2 = [];
|
|
8489
8624
|
const noted2 = [];
|
|
8625
|
+
const epicOnly = [];
|
|
8490
8626
|
let bulletCount = 0;
|
|
8491
8627
|
const wanted = new Set(required);
|
|
8492
8628
|
for (const section of handoff.sections) {
|
|
@@ -8518,10 +8654,12 @@ function validateSections(handoff, required, ctx, lineOffset = 0) {
|
|
|
8518
8654
|
unverified2.push(issue);
|
|
8519
8655
|
else if (resolution.outcome === "noted")
|
|
8520
8656
|
noted2.push({ ...issue, src: ref.raw });
|
|
8657
|
+
else if (resolution.unmerged !== undefined)
|
|
8658
|
+
epicOnly.push({ ...issue, src: resolution.unmerged });
|
|
8521
8659
|
}
|
|
8522
8660
|
}
|
|
8523
8661
|
}
|
|
8524
|
-
return { emptySections, unsourced, malformed, unresolved, unverified: unverified2, noted: noted2, bulletCount };
|
|
8662
|
+
return { emptySections, unsourced, malformed, unresolved, unverified: unverified2, noted: noted2, epicOnly, bulletCount };
|
|
8525
8663
|
}
|
|
8526
8664
|
function validateHandoff(text, ctx) {
|
|
8527
8665
|
const handoff = parseHandoff(text);
|
|
@@ -8540,6 +8678,7 @@ function validateHandoff(text, ctx) {
|
|
|
8540
8678
|
unresolved,
|
|
8541
8679
|
unverified: report.unverified,
|
|
8542
8680
|
noted: report.noted,
|
|
8681
|
+
epicOnly: report.epicOnly,
|
|
8543
8682
|
bulletCount: report.bulletCount
|
|
8544
8683
|
};
|
|
8545
8684
|
}
|
|
@@ -8548,6 +8687,7 @@ function validateCitations(text, ctx) {
|
|
|
8548
8687
|
const unresolved = [];
|
|
8549
8688
|
const unverified2 = [];
|
|
8550
8689
|
const noted2 = [];
|
|
8690
|
+
const epicOnly = [];
|
|
8551
8691
|
let cited = 0;
|
|
8552
8692
|
for (const item of parseItems(text)) {
|
|
8553
8693
|
if (item.token === null) {
|
|
@@ -8571,9 +8711,11 @@ function validateCitations(text, ctx) {
|
|
|
8571
8711
|
unverified2.push(issue);
|
|
8572
8712
|
else if (resolution.outcome === "noted")
|
|
8573
8713
|
noted2.push({ ...issue, src: ref.raw });
|
|
8714
|
+
else if (resolution.unmerged !== undefined)
|
|
8715
|
+
epicOnly.push({ ...issue, src: resolution.unmerged });
|
|
8574
8716
|
}
|
|
8575
8717
|
}
|
|
8576
|
-
return { malformed, unresolved, unverified: unverified2, noted: noted2, cited };
|
|
8718
|
+
return { malformed, unresolved, unverified: unverified2, noted: noted2, epicOnly, cited };
|
|
8577
8719
|
}
|
|
8578
8720
|
function noneBullet(lookedAt) {
|
|
8579
8721
|
return `- none [src: absent:${lookedAt}]`;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
wouldBeContent
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-rk1nm39z.js";
|
|
5
5
|
import {
|
|
6
6
|
claimSourcesDeny,
|
|
7
7
|
claimSourcesEmptySectionDeny,
|
|
8
8
|
claimSourcesMalformedDeny,
|
|
9
9
|
claimSourcesUnresolvedDeny
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-cf4az0j5.js";
|
|
11
11
|
import {
|
|
12
12
|
allow,
|
|
13
13
|
deny,
|
|
@@ -16,8 +16,8 @@ import {
|
|
|
16
16
|
postContext,
|
|
17
17
|
readPayload,
|
|
18
18
|
runHook
|
|
19
|
-
} from "./chunk-
|
|
20
|
-
import"./chunk-
|
|
19
|
+
} from "./chunk-2y3kwfrx.js";
|
|
20
|
+
import"./chunk-x3zy7zrn.js";
|
|
21
21
|
import {
|
|
22
22
|
isHandoff,
|
|
23
23
|
loadWorkspace,
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
toSrcContext,
|
|
26
26
|
validateCitations,
|
|
27
27
|
validateHandoff
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-y3cxqvnx.js";
|
|
29
29
|
|
|
30
30
|
// src/hooks/claim-sources.ts
|
|
31
31
|
await runHook("claim-sources", async () => {
|
package/dist/hooks/dod-gate.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
wouldBeContent
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-rk1nm39z.js";
|
|
5
5
|
import {
|
|
6
6
|
dodGateDeny,
|
|
7
7
|
dodGateInternalErrorDeny,
|
|
8
8
|
dodGateMissingBlockDeny,
|
|
9
9
|
dodGateRefusedCommandDeny
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-cf4az0j5.js";
|
|
11
11
|
import {
|
|
12
12
|
allow,
|
|
13
13
|
deny,
|
|
@@ -15,19 +15,19 @@ import {
|
|
|
15
15
|
filePathOf,
|
|
16
16
|
isWriteOrEdit,
|
|
17
17
|
readPayload
|
|
18
|
-
} from "./chunk-
|
|
19
|
-
import"./chunk-
|
|
18
|
+
} from "./chunk-2y3kwfrx.js";
|
|
19
|
+
import"./chunk-x3zy7zrn.js";
|
|
20
20
|
import {
|
|
21
21
|
parseDodBlock
|
|
22
22
|
} from "./chunk-rrkdfk7s.js";
|
|
23
|
-
import"./chunk-
|
|
23
|
+
import"./chunk-5w5eg00k.js";
|
|
24
24
|
import"./chunk-39zh2e44.js";
|
|
25
25
|
import {
|
|
26
26
|
loadWorkspace,
|
|
27
27
|
locateWork,
|
|
28
28
|
repoPath,
|
|
29
29
|
runtime
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-y3cxqvnx.js";
|
|
31
31
|
|
|
32
32
|
// src/hooks/dod-gate.ts
|
|
33
33
|
import { basename, join } from "node:path";
|
package/dist/hooks/no-reask.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
wouldBeContent
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-rk1nm39z.js";
|
|
5
5
|
import {
|
|
6
6
|
noReAskDeny
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-cf4az0j5.js";
|
|
8
8
|
import {
|
|
9
9
|
FactsStore
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-ecfqpeyj.js";
|
|
11
11
|
import {
|
|
12
12
|
allow,
|
|
13
13
|
deny,
|
|
@@ -15,18 +15,18 @@ import {
|
|
|
15
15
|
isWriteOrEdit,
|
|
16
16
|
readPayload,
|
|
17
17
|
runHook
|
|
18
|
-
} from "./chunk-
|
|
19
|
-
import"./chunk-
|
|
20
|
-
import"./chunk-
|
|
18
|
+
} from "./chunk-2y3kwfrx.js";
|
|
19
|
+
import"./chunk-x3zy7zrn.js";
|
|
20
|
+
import"./chunk-6405vkzk.js";
|
|
21
21
|
import {
|
|
22
22
|
openBlocks,
|
|
23
23
|
parseQuestions
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-37fwvg3x.js";
|
|
25
25
|
import"./chunk-39zh2e44.js";
|
|
26
26
|
import {
|
|
27
27
|
factsPath,
|
|
28
28
|
locateWork
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-y3cxqvnx.js";
|
|
30
30
|
|
|
31
31
|
// src/hooks/no-reask.ts
|
|
32
32
|
import { existsSync, readFileSync } from "node:fs";
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import"./chunk-
|
|
2
|
+
import"./chunk-ecfqpeyj.js";
|
|
3
3
|
import {
|
|
4
4
|
allow,
|
|
5
5
|
readPayload,
|
|
6
6
|
runHook,
|
|
7
7
|
sessionContext
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import"./chunk-
|
|
8
|
+
} from "./chunk-2y3kwfrx.js";
|
|
9
|
+
import"./chunk-x3zy7zrn.js";
|
|
10
10
|
import {
|
|
11
11
|
RunStore,
|
|
12
12
|
closedByMachine,
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
openQuestions,
|
|
16
16
|
runSnapshot,
|
|
17
17
|
whatIsWaiting
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-pf9d8ag8.js";
|
|
19
19
|
import {
|
|
20
20
|
evidencePath,
|
|
21
21
|
expertsDir,
|
|
@@ -25,17 +25,17 @@ import {
|
|
|
25
25
|
pathsIntersect,
|
|
26
26
|
readExpertDomain,
|
|
27
27
|
stackExpertNames
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-md1c7z7q.js";
|
|
29
29
|
import {
|
|
30
30
|
parseEvidence
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-b9rjx4qc.js";
|
|
32
32
|
import"./chunk-rrkdfk7s.js";
|
|
33
|
-
import"./chunk-
|
|
34
|
-
import"./chunk-
|
|
33
|
+
import"./chunk-5w5eg00k.js";
|
|
34
|
+
import"./chunk-6405vkzk.js";
|
|
35
35
|
import {
|
|
36
36
|
openBlocks,
|
|
37
37
|
parseQuestions
|
|
38
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-37fwvg3x.js";
|
|
39
39
|
import {
|
|
40
40
|
isRecord
|
|
41
41
|
} from "./chunk-39zh2e44.js";
|
|
@@ -47,7 +47,7 @@ import {
|
|
|
47
47
|
findWorkspaceRoot,
|
|
48
48
|
listRunDirs,
|
|
49
49
|
parseYaml
|
|
50
|
-
} from "./chunk-
|
|
50
|
+
} from "./chunk-y3cxqvnx.js";
|
|
51
51
|
|
|
52
52
|
// src/core/status/PendingItem.ts
|
|
53
53
|
function isPending(item) {
|
package/dist/hooks/statusline.js
CHANGED
|
@@ -2,18 +2,18 @@
|
|
|
2
2
|
import {
|
|
3
3
|
bar,
|
|
4
4
|
runSnapshot
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import"./chunk-
|
|
7
|
-
import"./chunk-
|
|
5
|
+
} from "./chunk-pf9d8ag8.js";
|
|
6
|
+
import"./chunk-md1c7z7q.js";
|
|
7
|
+
import"./chunk-b9rjx4qc.js";
|
|
8
8
|
import"./chunk-rrkdfk7s.js";
|
|
9
|
-
import"./chunk-
|
|
10
|
-
import"./chunk-
|
|
11
|
-
import"./chunk-
|
|
9
|
+
import"./chunk-5w5eg00k.js";
|
|
10
|
+
import"./chunk-6405vkzk.js";
|
|
11
|
+
import"./chunk-37fwvg3x.js";
|
|
12
12
|
import"./chunk-39zh2e44.js";
|
|
13
13
|
import {
|
|
14
14
|
findWorkspaceRoot,
|
|
15
15
|
runtime
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-y3cxqvnx.js";
|
|
17
17
|
|
|
18
18
|
// src/core/statusline/renderStatusLine.ts
|
|
19
19
|
var NO_SESSION_DATA = "[tldrx] no session data";
|