@ai-dossier/cli 0.25.0 → 0.26.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 CHANGED
@@ -869,6 +869,94 @@ rather than the raw recorded `model=` — a consumer selecting on a routed spell
869
869
 
870
870
  ---
871
871
 
872
+ ## Classify Pre-Screen (`classify`)
873
+
874
+ The deterministic gate `issue-cycle-classifier` runs **before any model call** (#538).
875
+ `docs/reports/batch-pilot-2-execution.md` §4.1 measured the classifier costing ~64k
876
+ tokens/dispatch at mid tier with full repo exploration — including for issues that hit an
877
+ obvious RFC-0001 E.2 floor rule a deterministic check can catch for free — over the same
878
+ §2.2 15-issue classify set.
879
+
880
+ ```bash
881
+ ai-dossier classify prescreen --issue 538 [--repo owner/name] [--submitted-set 4,5..9]
882
+ ```
883
+
884
+ `--submitted-set` names the issues batched/submitted alongside this one (fleet-style
885
+ selection grammar) — an open `Depends on #N` inside that set does not count toward rule 9.
886
+
887
+ Prints a single JSON verdict — no model call anywhere, exits 0 for either verdict
888
+ (`verdict` is the payload, not a pass/fail gate); an invalid `--issue`/`--repo`/
889
+ `--submitted-set` still exits 1 before any lookup:
890
+
891
+ ```json
892
+ {
893
+ "issue": 538,
894
+ "state": "OPEN",
895
+ "verdict": "full",
896
+ "reasons": [
897
+ { "check": "text-floor", "message": "Title/body/labels match 'rule1-risk-floor-area' (keyword: 'terraform')." }
898
+ ],
899
+ "plan_artifact": "absent",
900
+ "degraded": false,
901
+ "warnings": [],
902
+ "checked_at": "2026-09-01T22:00:00.000Z"
903
+ }
904
+ ```
905
+
906
+ `state` lets a consumer tell a CLOSED issue apart from a read failure (`state: null`).
907
+ `plan_artifact` is `present` (path-floor/file-count ran), `absent` (no plan:v1 comment —
908
+ expected, not an error), or `unreadable` (couldn't even check — `path-floor`/`file-count`
909
+ were skipped, not silently passed). `checked_at` is the one non-deterministic field: two
910
+ runs of an unchanged issue can differ only there. `degraded`/`warnings` are the fail-open
911
+ signal — when any lookup couldn't complete (fetching the issue, its comments, or a
912
+ dependency's state), `degraded: true` and `warnings` names exactly what didn't run; the
913
+ verdict still reflects whatever DID complete rather than blocking on the gap:
914
+
915
+ ```json
916
+ {
917
+ "issue": 538,
918
+ "state": null,
919
+ "verdict": "candidate",
920
+ "reasons": [],
921
+ "plan_artifact": null,
922
+ "degraded": true,
923
+ "warnings": ["Could not read issue #538: gh is not authenticated.\nFix: run 'gh auth login' …"],
924
+ "checked_at": "2026-09-01T22:00:05.000Z"
925
+ }
926
+ ```
927
+
928
+ `verdict: "full"` means an obvious floor hit was found — the classifier should skip
929
+ straight to posting `mode=full` with the recorded reason, no repo exploration needed.
930
+ `verdict: "candidate"` means proceed to the bounded mechanical-tier classify pass (issue
931
+ text + `reasons`/`warnings` as context, still no repo exploration unless that pass's
932
+ `confidence` lands below 0.6, which triggers the dossier's single mid-tier escalation).
933
+
934
+ Coverage is deliberately partial — it catches the OBVIOUS floor hits, not all of them:
935
+
936
+ | Check | What it catches | Source |
937
+ |---|---|---|
938
+ | `hard-block-label` | `decision-pending`, `needs-clarification`, `epic`, `decomposed` | same policy as the `sched enqueue` pre-screen (#507), shared via `hard-block-labels.ts` |
939
+ | `text-floor` | A text-keyword approximation of RFC-0001 E.2 rules 1/3/4 (risk-floor area, new package/workspace, deploy pipeline) scanned over title + body + labels | `prescreen.ts`'s `TEXT_FLOOR_PATTERNS`; the matched keyword is named in the reason message |
940
+ | `path-floor` | Rule 1's path-based risk floor, reusing `plan validate`'s `scanRiskFloor` (capped at 8 reasons — a plan:v1 artifact is comment-sourced, untrusted input) | requires a `plan:v1` artifact already on the issue |
941
+ | `file-count` | Rule 5, "Predicted files > 8" | requires a `plan:v1` artifact already on the issue |
942
+ | `open-dependency` | Rule 9, an open `Depends on #N` outside `--submitted-set` (capped at 8 reasons; refs themselves capped at 32 per issue — an issue body is untrusted input) | resolved via `gh issue view <N> --json state` |
943
+
944
+ What it does NOT catch — rule 2 beyond the bare `migration` keyword, rule 7 (hard
945
+ rollback), rule 8 (visual/browser review), rules 5/6 (file/diff size) when no plan:v1
946
+ artifact exists, and rule 10 (confidence) — is intentional: those need either file-level
947
+ detail no pre-screen has, or judgment. They fall through to `verdict: "candidate"` and are
948
+ exactly what the mechanical-tier classify pass exists to handle instead of a mid-tier,
949
+ repo-exploring one. A text-keyword scan is deliberately conservative about false
950
+ positives: bare words like `auth`/`infra`/`infrastructure` collide with benign phrasing
951
+ (`gh auth`, "test infrastructure") often enough in real issue text that they are excluded
952
+ in favor of more specific compound terms — verified against a real 15-issue regression
953
+ fixture (`cli/src/__tests__/fixtures/prescreen-regression-issues.json`, from
954
+ `docs/reports/batch-pilot-2-execution.md` §2.2's actual classify set). Methodology and the
955
+ measured pre-screen hit rate:
956
+ [docs/reports/issue-538-classifier-cost-methodology.md](../docs/reports/issue-538-classifier-cost-methodology.md).
957
+
958
+ ---
959
+
872
960
  ## Plan Artifacts (`plan`) — plan:v1
873
961
 
874
962
  Issues used to be planned up to three times (triage, batch prep, plan-issue). The
package/dist/cli.js CHANGED
@@ -10,6 +10,7 @@ const pkg = require('../package.json');
10
10
  const cache_1 = require("./commands/cache");
11
11
  const cap_1 = require("./commands/cap");
12
12
  const checksum_1 = require("./commands/checksum");
13
+ const classify_1 = require("./commands/classify");
13
14
  const commands_1 = require("./commands/commands");
14
15
  const config_cmd_1 = require("./commands/config-cmd");
15
16
  const create_1 = require("./commands/create");
@@ -100,6 +101,7 @@ Agent-friendly: Run \`ai-dossier --agent\` for machine-readable capabilities.`);
100
101
  (0, doctor_1.registerDoctorCommand)(commander_1.program);
101
102
  (0, traces_1.registerTracesCommand)(commander_1.program);
102
103
  (0, runstate_1.registerRunstateCommand)(commander_1.program);
104
+ (0, classify_1.registerClassifyCommand)(commander_1.program);
103
105
  (0, plan_1.registerPlanCommand)(commander_1.program);
104
106
  (0, sched_1.registerSchedCommand)(commander_1.program);
105
107
  (0, cap_1.registerCapCommand)(commander_1.program);
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * `ai-dossier classify` — the deterministic pre-screen `issue-cycle-classifier` runs before any
3
+ * model call (#538). Patterned on `plan validate` (`commands/plan.ts`): a single JSON verdict,
4
+ * no model call anywhere, always exits 0 once arguments validate — `verdict` is the payload, not
5
+ * a pass/fail gate. (An invalid `--issue`/`--repo` still exits 1 before any lookup, same as
6
+ * every other command built on `requireIssueTarget`.)
7
+ */
8
+ import type { Command } from 'commander';
9
+ /** Registers the `classify` command tree (currently just `prescreen`). */
10
+ export declare function registerClassifyCommand(program: Command): void;
11
+ //# sourceMappingURL=classify.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"classify.d.ts","sourceRoot":"","sources":["../../src/commands/classify.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqLzC,0EAA0E;AAC1E,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAM9D"}
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ /**
3
+ * `ai-dossier classify` — the deterministic pre-screen `issue-cycle-classifier` runs before any
4
+ * model call (#538). Patterned on `plan validate` (`commands/plan.ts`): a single JSON verdict,
5
+ * no model call anywhere, always exits 0 once arguments validate — `verdict` is the payload, not
6
+ * a pass/fail gate. (An invalid `--issue`/`--repo` still exits 1 before any lookup, same as
7
+ * every other command built on `requireIssueTarget`.)
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.registerClassifyCommand = registerClassifyCommand;
11
+ const gh_1 = require("../gh");
12
+ const issue_selection_1 = require("../issue-selection");
13
+ const plan_artifact_1 = require("../plan-artifact");
14
+ const prescreen_1 = require("../prescreen");
15
+ /** GitHub's `state` value for an open issue. */
16
+ const GH_STATE_OPEN = 'OPEN';
17
+ /** Parse `--submitted-set` (`4,5` or `4..9`), failing through the CLI's exit path — same pattern as `sched.ts`'s `issueList`. */
18
+ function parseSubmittedSet(raw) {
19
+ if (raw === undefined)
20
+ return null;
21
+ try {
22
+ return new Set((0, issue_selection_1.parseIssueSelection)(raw));
23
+ }
24
+ catch (err) {
25
+ (0, gh_1.fail)([`--submitted-set: ${err.message}`]);
26
+ }
27
+ }
28
+ /**
29
+ * Resolve each `Depends on #N` reference to whether it is open and outside `submittedSet` —
30
+ * fails open (drops the ref from `open` rather than erroring the whole prescreen) on a lookup
31
+ * failure, the same discipline #507's `screenHardBlockLabels` established: a nice-to-have check
32
+ * must never hard-fail the command it augments, but a dropped check must be visible, not silent
33
+ * — `unresolved` exists so the caller can say so.
34
+ */
35
+ function resolveOpenDependencies(refs, submittedSet, repo) {
36
+ const open = [];
37
+ const unresolved = [];
38
+ for (const dep of refs) {
39
+ if (submittedSet?.has(dep))
40
+ continue; // in-set: rule 9 explicitly exempts this (RFC-0001 E.2)
41
+ const result = (0, gh_1.tryFetchIssueState)(String(dep), repo);
42
+ if (!result.ok) {
43
+ unresolved.push(dep);
44
+ }
45
+ else if (result.state === GH_STATE_OPEN) {
46
+ open.push(dep);
47
+ }
48
+ }
49
+ return { open, unresolved };
50
+ }
51
+ /** The plan:v1 artifact's predicted files, when the issue already carries one — distinguishes "no artifact" from "couldn't read comments" so a transient `gh` failure never silently looks like a clean issue. */
52
+ function fetchPredictedFiles(issue, repo) {
53
+ const comments = (0, gh_1.tryFetchComments)(issue, repo);
54
+ if (!comments.ok)
55
+ return { status: 'unreadable', error: comments.error };
56
+ const bodies = comments.comments.map((c) => (typeof c?.body === 'string' ? c.body : ''));
57
+ const latest = (0, plan_artifact_1.findLatestPlan)(bodies);
58
+ if (latest === null)
59
+ return { status: 'absent' };
60
+ return { status: 'present', files: latest.artifact.predictedFiles };
61
+ }
62
+ /** The one JSON shape every path emits — success and failure alike carry the same five keys, plus `degraded`/`warnings` when something didn't run cleanly. */
63
+ function emitVerdict(fields) {
64
+ const { issue, state, verdict, reasons, planArtifact, warnings } = fields;
65
+ for (const w of warnings)
66
+ console.error(`⚠ ${w}`);
67
+ console.log(JSON.stringify({
68
+ issue,
69
+ state,
70
+ verdict,
71
+ reasons,
72
+ plan_artifact: planArtifact,
73
+ degraded: warnings.length > 0,
74
+ warnings,
75
+ // Not part of the deterministic verdict — documented in cli/README.md as the one
76
+ // non-reproducible field two identical runs may disagree on.
77
+ checked_at: new Date().toISOString(),
78
+ }, null, 2));
79
+ }
80
+ function registerPrescreenSubcommand(cmd) {
81
+ cmd
82
+ .command('prescreen')
83
+ .description('Deterministically pre-screen an issue for the classify pass (JSON verdict, no model call)')
84
+ .requiredOption('--issue <number>', 'GitHub issue number')
85
+ .option('--repo <owner/name>', 'Target repository (defaults to the current one)')
86
+ .option('--submitted-set <selection>', 'Issues batched/submitted with this one (e.g. "4,5" or "4..9") — an open "Depends on #N" inside this set does not count toward rule 9')
87
+ .action((options) => {
88
+ (0, gh_1.requireIssueTarget)(options);
89
+ const submittedSet = parseSubmittedSet(options.submittedSet);
90
+ const meta = (0, gh_1.tryFetchIssueMeta)(options.issue, options.repo);
91
+ if (!meta.ok) {
92
+ emitVerdict({
93
+ issue: Number(options.issue),
94
+ state: null,
95
+ verdict: 'candidate',
96
+ reasons: [],
97
+ planArtifact: null,
98
+ warnings: [meta.error],
99
+ });
100
+ return;
101
+ }
102
+ const predicted = fetchPredictedFiles(options.issue, options.repo);
103
+ const depRefs = (0, prescreen_1.extractDependencyRefs)(`${meta.title}\n${meta.body}`);
104
+ const { open: openDependencies, unresolved } = resolveOpenDependencies(depRefs, submittedSet, options.repo);
105
+ const result = (0, prescreen_1.prescreenIssue)({
106
+ title: meta.title,
107
+ body: meta.body,
108
+ labels: meta.labels,
109
+ predictedFiles: predicted.status === 'present' ? predicted.files : undefined,
110
+ openDependencies,
111
+ });
112
+ const warnings = [];
113
+ if (predicted.status === 'unreadable') {
114
+ warnings.push(`Could not read comments to check for a plan:v1 artifact — path-floor and file-count checks were skipped: ${predicted.error}`);
115
+ }
116
+ if (unresolved.length > 0) {
117
+ warnings.push(`Could not resolve open/closed state for dependency issue(s) ${unresolved.map((n) => `#${n}`).join(', ')} — rule-9 check may be incomplete for them.`);
118
+ }
119
+ emitVerdict({
120
+ issue: Number(options.issue),
121
+ state: meta.state,
122
+ verdict: result.verdict,
123
+ reasons: result.reasons,
124
+ planArtifact: predicted.status,
125
+ warnings,
126
+ });
127
+ });
128
+ }
129
+ /** Registers the `classify` command tree (currently just `prescreen`). */
130
+ function registerClassifyCommand(program) {
131
+ const classifyCmd = program
132
+ .command('classify')
133
+ .description('Deterministic pre-screen for the issue-cycle-classifier pipeline');
134
+ registerPrescreenSubcommand(classifyCmd);
135
+ }
136
+ //# sourceMappingURL=classify.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"classify.js","sourceRoot":"","sources":["../../src/commands/classify.ts"],"names":[],"mappings":"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"}
@@ -9,29 +9,5 @@
9
9
  * cheap-tier report dispatch.
10
10
  */
11
11
  import type { Command } from 'commander';
12
- /**
13
- * Labels that mean an issue was already determined undispatchable — by a
14
- * prior full-cycle hand-off (`decision-pending`, applied by the Guiding
15
- * Principle hand-off) or by triage (`needs-clarification`, `epic`,
16
- * `decomposed`, the same three gate-issue Step 2 hard-blocks on). This is
17
- * NOT gate-issue's list verbatim: gate-issue additionally hard-blocks
18
- * `batch-epic`, a batch-ANCHOR concern with no equivalent for a per-issue
19
- * enqueue screen, so it is deliberately left out here. Enqueueing one of
20
- * these anyway just re-burns the same block a dispatched agent (and the
21
- * escalation ladder behind it) would rediscover on its own; checking here
22
- * costs one `gh` call instead of a slot-hour.
23
- *
24
- * Order is significant: when an issue carries more than one of these
25
- * labels, the FIRST match in this array is the one recorded in `reason` —
26
- * reordering the array changes which reason gets recorded.
27
- *
28
- * `decision-pending` here is the GitHub LABEL, not the `IssueStatus` value
29
- * of the same name (`packages/sched/src/types.ts`) — a labelled issue lands
30
- * as `status: 'blocked'` with a `label:` reason, same as the other three;
31
- * see the comment on `enqueue.ts`'s status assignment for why.
32
- */
33
- export declare const HARD_BLOCK_LABELS: readonly ["decision-pending", "needs-clarification", "epic", "decomposed"];
34
- /** The first hard-block label `labels` carries (case-insensitive), or `null`. */
35
- export declare function pickHardBlockLabel(labels: readonly string[]): string | null;
36
12
  export declare function registerSchedCommand(program: Command): void;
37
13
  //# sourceMappingURL=sched.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sched.d.ts","sourceRoot":"","sources":["../../src/commands/sched.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AA8CH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2SzC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,iBAAiB,4EAKpB,CAAC;AAEX,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAG3E;AAgiBD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAc3D"}
1
+ {"version":3,"file":"sched.d.ts","sourceRoot":"","sources":["../../src/commands/sched.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AA6CH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAo1BzC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAc3D"}
@@ -13,8 +13,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  return (mod && mod.__esModule) ? mod : { "default": mod };
14
14
  };
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.HARD_BLOCK_LABELS = void 0;
17
- exports.pickHardBlockLabel = pickHardBlockLabel;
18
16
  exports.registerSchedCommand = registerSchedCommand;
19
17
  const node_child_process_1 = require("node:child_process");
20
18
  const node_fs_1 = __importDefault(require("node:fs"));
@@ -22,6 +20,7 @@ const sched_1 = require("@ai-dossier/sched");
22
20
  const cost_format_1 = require("../cost-format");
23
21
  const duration_1 = require("../duration");
24
22
  const gh_1 = require("../gh");
23
+ const hard_block_labels_1 = require("../hard-block-labels");
25
24
  const helpers_1 = require("../helpers");
26
25
  const issue_selection_1 = require("../issue-selection");
27
26
  const run_log_1 = require("../run-log");
@@ -254,38 +253,16 @@ function relativeTime(iso, now = Date.now()) {
254
253
  return (0, duration_1.formatAge)(Math.max(0, now - then), ' ago');
255
254
  }
256
255
  // --- enqueue-time label pre-screen (#507) ---
257
- /**
258
- * Labels that mean an issue was already determined undispatchable — by a
259
- * prior full-cycle hand-off (`decision-pending`, applied by the Guiding
260
- * Principle hand-off) or by triage (`needs-clarification`, `epic`,
261
- * `decomposed`, the same three gate-issue Step 2 hard-blocks on). This is
262
- * NOT gate-issue's list verbatim: gate-issue additionally hard-blocks
263
- * `batch-epic`, a batch-ANCHOR concern with no equivalent for a per-issue
264
- * enqueue screen, so it is deliberately left out here. Enqueueing one of
265
- * these anyway just re-burns the same block a dispatched agent (and the
266
- * escalation ladder behind it) would rediscover on its own; checking here
267
- * costs one `gh` call instead of a slot-hour.
268
- *
269
- * Order is significant: when an issue carries more than one of these
270
- * labels, the FIRST match in this array is the one recorded in `reason` —
271
- * reordering the array changes which reason gets recorded.
272
- *
273
- * `decision-pending` here is the GitHub LABEL, not the `IssueStatus` value
274
- * of the same name (`packages/sched/src/types.ts`) — a labelled issue lands
275
- * as `status: 'blocked'` with a `label:` reason, same as the other three;
276
- * see the comment on `enqueue.ts`'s status assignment for why.
277
- */
278
- exports.HARD_BLOCK_LABELS = [
279
- 'decision-pending',
280
- 'needs-clarification',
281
- 'epic',
282
- 'decomposed',
283
- ];
284
- /** The first hard-block label `labels` carries (case-insensitive), or `null`. */
285
- function pickHardBlockLabel(labels) {
286
- const normalized = labels.map((label) => label.toLowerCase());
287
- return exports.HARD_BLOCK_LABELS.find((label) => normalized.includes(label)) ?? null;
288
- }
256
+ //
257
+ // `HARD_BLOCK_LABELS` / `pickHardBlockLabel` moved to `../hard-block-labels`
258
+ // (#538) so the classify-time pre-screen can reuse the same policy list
259
+ // without duplicating it — see that file for the label list and the
260
+ // `decision-pending`-is-a-label-not-an-IssueStatus warning. Enqueueing a
261
+ // hard-blocked issue anyway just re-burns the same block a dispatched agent
262
+ // (and the escalation ladder behind it) would rediscover on its own;
263
+ // checking here costs one `gh` call instead of a slot-hour. A labelled
264
+ // issue lands as `status: 'blocked'` with a `label:` reason, same as the
265
+ // other three; see the comment on `enqueue.ts`'s status assignment for why.
289
266
  /**
290
267
  * Mutate `inputs` in place, setting `blocked_label` on any issue that
291
268
  * already carries a hard-block label. Fails open on a `gh` lookup failure
@@ -320,7 +297,7 @@ function screenHardBlockLabels(inputs, repo) {
320
297
  cache.set(input.issue, null);
321
298
  }
322
299
  else {
323
- cache.set(input.issue, pickHardBlockLabel(result.labels));
300
+ cache.set(input.issue, (0, hard_block_labels_1.pickHardBlockLabel)(result.labels));
324
301
  }
325
302
  }
326
303
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sched.js","sourceRoot":"","sources":["../../src/commands/sched.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sched.js","sourceRoot":"","sources":["../../src/commands/sched.ts"],"names":[],"mappings":"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"}
package/dist/gh.d.ts CHANGED
@@ -69,7 +69,12 @@ export declare function asString(value: unknown, fallback?: string): string;
69
69
  * `action` is what we were trying to do, e.g. "Could not read issue #440".
70
70
  */
71
71
  export declare function ghFailure(action: string, err: ExecFailure, repo?: string): string;
72
- /** GitHub issue numbers are positive integers; anything else is a caller mistake. */
72
+ /**
73
+ * GitHub issue numbers are positive integers; anything else is a caller mistake. Capped at 10
74
+ * digits — real issue numbers never approach that, and without a cap a caller that `Number()`s
75
+ * the value back out (e.g. for JSON output) can silently get `Infinity` → `null` from an absurd
76
+ * input instead of a clear validation error.
77
+ */
73
78
  export declare function isIssueNumber(value: string): boolean;
74
79
  /** Reject a non-numeric `--issue` here rather than letting gh (or `mint`) fail obscurely. */
75
80
  export declare function requireIssueNumber(issue: string): void;
@@ -144,11 +149,40 @@ export type LabelsResult = {
144
149
  /**
145
150
  * Read an issue's label names through gh, reporting WHY rather than exiting —
146
151
  * the same discipline as {@link tryFetchComments} (#507's enqueue-time
147
- * hard-block pre-screen is the second consumer). `gh` label objects are
148
- * `{name, color, description}`; only `name` is read, and a malformed entry is
149
- * dropped rather than failing the whole read.
152
+ * hard-block pre-screen is the second consumer).
150
153
  */
151
154
  export declare function tryFetchLabels(issue: string, repo?: string): LabelsResult;
155
+ /** An issue's title/body/labels/state read, or the one reason it could not be read. */
156
+ export type IssueMetaResult = {
157
+ ok: true;
158
+ title: string;
159
+ body: string;
160
+ labels: string[];
161
+ state: string;
162
+ } | {
163
+ ok: false;
164
+ error: string;
165
+ };
166
+ /**
167
+ * Read an issue's title, body, labels, and state in one `gh` call — the combined fetch the
168
+ * classify pre-screen (#538) needs (title/body for the text-keyword scan, labels for the
169
+ * hard-block check, state so a caller can tell CLOSED apart from a read failure).
170
+ */
171
+ export declare function tryFetchIssueMeta(issue: string, repo?: string): IssueMetaResult;
172
+ /** An issue's state read, or the one reason it could not be read. */
173
+ export type IssueStateResult = {
174
+ ok: true;
175
+ state: string;
176
+ } | {
177
+ ok: false;
178
+ error: string;
179
+ };
180
+ /**
181
+ * Read an issue's `state` (`OPEN`/`CLOSED`) through gh — used to resolve `Depends on #N`
182
+ * references (#538's classify pre-screen, RFC-0001 E.2 rule 9) without reading anything else
183
+ * about the dependency issue.
184
+ */
185
+ export declare function tryFetchIssueState(issue: string, repo?: string): IssueStateResult;
152
186
  /** `--dry-run` support for comment-posting subcommands: show the body, post nothing. */
153
187
  export declare function printDryRun(body: string, json?: boolean, extra?: Record<string, unknown>): void;
154
188
  /**
package/dist/gh.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"gh.d.ts","sourceRoot":"","sources":["../src/gh.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gh.d.ts","sourceRoot":"","sources":["../src/gh.ts"],"names":[],"mappings":"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"}
package/dist/gh.js CHANGED
@@ -32,6 +32,8 @@ exports.isSafePath = isSafePath;
32
32
  exports.gitFailure = gitFailure;
33
33
  exports.tryFetchComments = tryFetchComments;
34
34
  exports.tryFetchLabels = tryFetchLabels;
35
+ exports.tryFetchIssueMeta = tryFetchIssueMeta;
36
+ exports.tryFetchIssueState = tryFetchIssueState;
35
37
  exports.printDryRun = printDryRun;
36
38
  exports.postIssueComment = postIssueComment;
37
39
  const node_child_process_1 = require("node:child_process");
@@ -191,9 +193,14 @@ function ghFailure(action, err, repo) {
191
193
  const fix = matched?.fix ?? `Fix: run the same gh command by hand to see the full error.`;
192
194
  return [cause, fix, `gh said: ${snippet(err.stderr)}`].join('\n');
193
195
  }
194
- /** GitHub issue numbers are positive integers; anything else is a caller mistake. */
196
+ /**
197
+ * GitHub issue numbers are positive integers; anything else is a caller mistake. Capped at 10
198
+ * digits — real issue numbers never approach that, and without a cap a caller that `Number()`s
199
+ * the value back out (e.g. for JSON output) can silently get `Infinity` → `null` from an absurd
200
+ * input instead of a clear validation error.
201
+ */
195
202
  function isIssueNumber(value) {
196
- return /^[1-9]\d*$/.test(value);
203
+ return /^[1-9]\d{0,9}$/.test(value);
197
204
  }
198
205
  /** Reject a non-numeric `--issue` here rather than letting gh (or `mint`) fail obscurely. */
199
206
  function requireIssueNumber(issue) {
@@ -298,12 +305,22 @@ function tryFetchComments(issue, repo) {
298
305
  }
299
306
  return { ok: true, comments: parsed.comments };
300
307
  }
308
+ /**
309
+ * Extract label names from a `gh --json labels` field: `{name, color, description}` objects,
310
+ * only `name` read, a malformed entry dropped rather than failing the whole read. Shared by
311
+ * every fetcher that reads labels, so the extraction logic can't drift between them.
312
+ */
313
+ function ghLabelNames(value) {
314
+ if (!Array.isArray(value))
315
+ return [];
316
+ return value
317
+ .map((label) => label !== null && typeof label === 'object' ? label.name : undefined)
318
+ .filter((name) => typeof name === 'string');
319
+ }
301
320
  /**
302
321
  * Read an issue's label names through gh, reporting WHY rather than exiting —
303
322
  * the same discipline as {@link tryFetchComments} (#507's enqueue-time
304
- * hard-block pre-screen is the second consumer). `gh` label objects are
305
- * `{name, color, description}`; only `name` is read, and a malformed entry is
306
- * dropped rather than failing the whole read.
323
+ * hard-block pre-screen is the second consumer).
307
324
  */
308
325
  function tryFetchLabels(issue, repo) {
309
326
  const res = exec('gh', ['issue', 'view', issue, '--json', 'labels', ...repoArgs(repo)]);
@@ -324,10 +341,72 @@ function tryFetchLabels(issue, repo) {
324
341
  ].join('\n'),
325
342
  };
326
343
  }
327
- const labels = parsed.labels
328
- .map((label) => label !== null && typeof label === 'object' ? label.name : undefined)
329
- .filter((name) => typeof name === 'string');
330
- return { ok: true, labels };
344
+ return { ok: true, labels: ghLabelNames(parsed.labels) };
345
+ }
346
+ /**
347
+ * Read an issue's title, body, labels, and state in one `gh` call — the combined fetch the
348
+ * classify pre-screen (#538) needs (title/body for the text-keyword scan, labels for the
349
+ * hard-block check, state so a caller can tell CLOSED apart from a read failure).
350
+ */
351
+ function tryFetchIssueMeta(issue, repo) {
352
+ const res = exec('gh', [
353
+ 'issue',
354
+ 'view',
355
+ issue,
356
+ '--json',
357
+ 'title,body,labels,state',
358
+ ...repoArgs(repo),
359
+ ]);
360
+ if (!res.ok) {
361
+ return {
362
+ ok: false,
363
+ error: ghFailure(`Could not read issue #${issue}`, res.error, repo),
364
+ };
365
+ }
366
+ const parsed = parseGhJson(res.stdout);
367
+ if (parsed === null) {
368
+ return {
369
+ ok: false,
370
+ error: [
371
+ `Could not read issue #${issue}: gh exited 0 but did not print JSON.`,
372
+ `Fix: run 'gh issue view ${issue} --json title,body,labels,state' by hand — a gh older than 2.0 (no --json), or an interactive prompt landing on stdout, both look like this.`,
373
+ `gh printed: ${snippet(res.stdout)}`,
374
+ ].join('\n'),
375
+ };
376
+ }
377
+ return {
378
+ ok: true,
379
+ title: asString(parsed.title),
380
+ body: asString(parsed.body),
381
+ labels: ghLabelNames(parsed.labels),
382
+ state: asString(parsed.state),
383
+ };
384
+ }
385
+ /**
386
+ * Read an issue's `state` (`OPEN`/`CLOSED`) through gh — used to resolve `Depends on #N`
387
+ * references (#538's classify pre-screen, RFC-0001 E.2 rule 9) without reading anything else
388
+ * about the dependency issue.
389
+ */
390
+ function tryFetchIssueState(issue, repo) {
391
+ const res = exec('gh', ['issue', 'view', issue, '--json', 'state', ...repoArgs(repo)]);
392
+ if (!res.ok) {
393
+ return {
394
+ ok: false,
395
+ error: ghFailure(`Could not read the state of issue #${issue}`, res.error, repo),
396
+ };
397
+ }
398
+ const parsed = parseGhJson(res.stdout);
399
+ if (parsed === null || typeof parsed.state !== 'string') {
400
+ return {
401
+ ok: false,
402
+ error: [
403
+ `Could not read the state of issue #${issue}: gh exited 0 but did not print JSON — no "state" field.`,
404
+ `Fix: run 'gh issue view ${issue} --json state' by hand.`,
405
+ `gh printed: ${snippet(res.stdout)}`,
406
+ ].join('\n'),
407
+ };
408
+ }
409
+ return { ok: true, state: parsed.state };
331
410
  }
332
411
  /** `--dry-run` support for comment-posting subcommands: show the body, post nothing. */
333
412
  function printDryRun(body, json, extra) {
package/dist/gh.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"gh.js","sourceRoot":"","sources":["../src/gh.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gh.js","sourceRoot":"","sources":["../src/gh.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Labels that mean an issue was already determined undispatchable — by a
3
+ * prior full-cycle hand-off (`decision-pending`, applied by the Guiding
4
+ * Principle hand-off) or by triage (`needs-clarification`, `epic`,
5
+ * `decomposed`, the same three gate-issue Step 2 hard-blocks on). This is
6
+ * NOT gate-issue's list verbatim: gate-issue additionally hard-blocks
7
+ * `batch-epic`, a batch-ANCHOR concern with no equivalent for a per-issue
8
+ * screen, so it is deliberately left out here.
9
+ *
10
+ * Shared by the enqueue-time pre-screen (`commands/sched.ts`, #507) and the
11
+ * classify-time pre-screen (`prescreen.ts`, #538) — one label policy, two
12
+ * consumers, so the list never drifts between them.
13
+ *
14
+ * Order is significant: when an issue carries more than one of these
15
+ * labels, the FIRST match in this array is the one recorded in `reason` —
16
+ * reordering the array changes which reason gets recorded.
17
+ *
18
+ * `decision-pending` here is the GitHub LABEL, not the `IssueStatus` value
19
+ * of the same name (`packages/sched/src/types.ts`).
20
+ */
21
+ export declare const HARD_BLOCK_LABELS: readonly ["decision-pending", "needs-clarification", "epic", "decomposed"];
22
+ /** The first hard-block label `labels` carries (case-insensitive), or `null`. */
23
+ export declare function pickHardBlockLabel(labels: readonly string[]): string | null;
24
+ //# sourceMappingURL=hard-block-labels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hard-block-labels.d.ts","sourceRoot":"","sources":["../src/hard-block-labels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,iBAAiB,4EAKpB,CAAC;AAEX,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAG3E"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HARD_BLOCK_LABELS = void 0;
4
+ exports.pickHardBlockLabel = pickHardBlockLabel;
5
+ /**
6
+ * Labels that mean an issue was already determined undispatchable — by a
7
+ * prior full-cycle hand-off (`decision-pending`, applied by the Guiding
8
+ * Principle hand-off) or by triage (`needs-clarification`, `epic`,
9
+ * `decomposed`, the same three gate-issue Step 2 hard-blocks on). This is
10
+ * NOT gate-issue's list verbatim: gate-issue additionally hard-blocks
11
+ * `batch-epic`, a batch-ANCHOR concern with no equivalent for a per-issue
12
+ * screen, so it is deliberately left out here.
13
+ *
14
+ * Shared by the enqueue-time pre-screen (`commands/sched.ts`, #507) and the
15
+ * classify-time pre-screen (`prescreen.ts`, #538) — one label policy, two
16
+ * consumers, so the list never drifts between them.
17
+ *
18
+ * Order is significant: when an issue carries more than one of these
19
+ * labels, the FIRST match in this array is the one recorded in `reason` —
20
+ * reordering the array changes which reason gets recorded.
21
+ *
22
+ * `decision-pending` here is the GitHub LABEL, not the `IssueStatus` value
23
+ * of the same name (`packages/sched/src/types.ts`).
24
+ */
25
+ exports.HARD_BLOCK_LABELS = [
26
+ 'decision-pending',
27
+ 'needs-clarification',
28
+ 'epic',
29
+ 'decomposed',
30
+ ];
31
+ /** The first hard-block label `labels` carries (case-insensitive), or `null`. */
32
+ function pickHardBlockLabel(labels) {
33
+ const normalized = labels.map((label) => label.toLowerCase());
34
+ return exports.HARD_BLOCK_LABELS.find((label) => normalized.includes(label)) ?? null;
35
+ }
36
+ //# sourceMappingURL=hard-block-labels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hard-block-labels.js","sourceRoot":"","sources":["../src/hard-block-labels.ts"],"names":[],"mappings":";;;AA4BA,gDAGC;AA/BD;;;;;;;;;;;;;;;;;;;GAmBG;AACU,QAAA,iBAAiB,GAAG;IAC/B,kBAAkB;IAClB,qBAAqB;IACrB,MAAM;IACN,YAAY;CACJ,CAAC;AAEX,iFAAiF;AACjF,SAAgB,kBAAkB,CAAC,MAAyB;IAC1D,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9D,OAAO,yBAAiB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC;AAC/E,CAAC"}
@@ -116,7 +116,7 @@ export interface RiskFloorPattern {
116
116
  }
117
117
  export declare const RISK_FLOOR_PATTERNS: readonly RiskFloorPattern[];
118
118
  /** Every risk-floor pattern a path hits, in pattern order. */
119
- export declare function scanRiskFloor(paths: string[]): Array<{
119
+ export declare function scanRiskFloor(paths: readonly string[]): Array<{
120
120
  path: string;
121
121
  pattern: string;
122
122
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"plan-artifact.d.ts","sourceRoot":"","sources":["../src/plan-artifact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,kBAAkB,CAAC;AAKlD,wEAAwE;AACxE,eAAO,MAAM,aAAa,0FAMhB,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAKzD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEhD;AAED;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,QAAkB,CAAC;AAExD,8BAA8B;AAC9B,MAAM,WAAW,YAAY;IAC3B,0EAA0E;IAC1E,IAAI,EAAE,MAAM,CAAC;IACb,+EAA+E;IAC/E,GAAG,EAAE,MAAM,CAAC;IACZ,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACtC,sEAAsE;IACtE,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAIrE;AAmBD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAcnE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAG/D;AAED,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEvE;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAgBnE;AAED,4EAA4E;AAC5E,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,YAAY,CAAC;IACvB,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,UAAU,GAAG,IAAI,CAOzE;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CACpC;AAcD,eAAO,MAAM,mBAAmB,EAAE,SAAS,gBAAgB,EAwB1D,CAAC;AAEF,8DAA8D;AAC9D,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAQvF"}
1
+ {"version":3,"file":"plan-artifact.d.ts","sourceRoot":"","sources":["../src/plan-artifact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,kBAAkB,CAAC;AAKlD,wEAAwE;AACxE,eAAO,MAAM,aAAa,0FAMhB,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAKzD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEhD;AAED;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,QAAkB,CAAC;AAExD,8BAA8B;AAC9B,MAAM,WAAW,YAAY;IAC3B,0EAA0E;IAC1E,IAAI,EAAE,MAAM,CAAC;IACb,+EAA+E;IAC/E,GAAG,EAAE,MAAM,CAAC;IACZ,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACtC,sEAAsE;IACtE,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAIrE;AAmBD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAcnE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAG/D;AAED,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEvE;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAgBnE;AAED,4EAA4E;AAC5E,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,YAAY,CAAC;IACvB,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,UAAU,GAAG,IAAI,CAOzE;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CACpC;AAcD,eAAO,MAAM,mBAAmB,EAAE,SAAS,gBAAgB,EAwB1D,CAAC;AAEF,8DAA8D;AAC9D,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAQhG"}
@@ -1 +1 @@
1
- {"version":3,"file":"plan-artifact.js","sourceRoot":"","sources":["../src/plan-artifact.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan-artifact.js","sourceRoot":"","sources":["../src/plan-artifact.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Deterministic classify pre-screen (#538) — the "no tokens spent" gate `issue-cycle-classifier`
3
+ * runs before any model call. `docs/reports/batch-pilot-2-execution.md` §4.1 measured the
4
+ * classifier costing ~64k tokens/dispatch, at mid tier, with full repo exploration, even for
5
+ * issues that hit an obvious RFC-0001 E.2 floor rule a deterministic check can catch for free.
6
+ *
7
+ * Scope is deliberately partial: this catches the OBVIOUS floor hits (hard-block labels, a
8
+ * text-keyword approximation of the risk-floor/new-package/deploy-pipeline rules, rule-9 open
9
+ * dependencies, and — when a plan:v1 artifact is already on the issue — the path-based risk
10
+ * floor and the >8-files rule). Everything it does not catch (rule 2 beyond the `migration`
11
+ * keyword, rule 7 hard rollback, rule 8 visual/browser review, rules 5/6 diff/file size without
12
+ * a plan artifact, rule 10 confidence) falls through to the classifier's own bounded
13
+ * mechanical-tier pass, which is the intended safety net — not a gap this module needs to close.
14
+ *
15
+ * Pure and dependency-free (no `gh`, network, or fs), same discipline as `plan-artifact.ts` and
16
+ * `runstate.ts` — unit-testable directly. Subprocess access (fetching the issue, resolving
17
+ * dependency state, filtering by submitted set) lives in the command layer (`commands/classify.ts`).
18
+ */
19
+ /** RFC-0001 E.2 floor rules a text-keyword scan can approximate without reading any file. */
20
+ export interface TextFloorPattern {
21
+ /** Reported in the reason; also the RFC-0001 E.2 rule it approximates. */
22
+ name: string;
23
+ /** Matched case-insensitively against title + body + label names, joined. Returns the matched keyword, or null. */
24
+ match: (text: string) => string | null;
25
+ }
26
+ export declare const TEXT_FLOOR_PATTERNS: readonly TextFloorPattern[];
27
+ /** `Depends on #N` references resolved per issue; each costs a `gh` call downstream (command layer), same rationale as `MAX_ISSUE_SELECTION` (`issue-selection.ts`). */
28
+ export declare const MAX_DEPENDENCY_REFS = 32;
29
+ /**
30
+ * Every issue number referenced by a `Depends on #N` phrase in `text`, de-duplicated, in order,
31
+ * capped at {@link MAX_DEPENDENCY_REFS} — `text` is untrusted (issue body), so an adversarial
32
+ * body cannot force an unbounded `gh` fan-out downstream.
33
+ */
34
+ export declare function extractDependencyRefs(text: string): number[];
35
+ /** One deterministic finding — always recorded, whether or not it decided the verdict. */
36
+ export interface PrescreenReason {
37
+ /** Which check produced the finding — mirrors `plan validate`'s `PlanValidationReason.check` shape. */
38
+ check: 'hard-block-label' | 'text-floor' | 'path-floor' | 'file-count' | 'open-dependency';
39
+ message: string;
40
+ }
41
+ export interface PrescreenInput {
42
+ title: string;
43
+ body: string;
44
+ labels: readonly string[];
45
+ /** Predicted files from a plan:v1 artifact, when one exists on the issue. `undefined` when none. */
46
+ predictedFiles?: readonly string[];
47
+ /**
48
+ * Issue numbers that resolved OPEN and outside the submitted set — filtering by submitted set
49
+ * is the command layer's job (`classify.ts`, via `--submitted-set`); this module trusts the
50
+ * list it is given.
51
+ */
52
+ openDependencies?: readonly number[];
53
+ }
54
+ export interface PrescreenVerdict {
55
+ /** `full` = an obvious floor hit found, reject before any model call. `candidate` = proceed to the bounded mechanical-tier classify pass. */
56
+ verdict: 'full' | 'candidate';
57
+ /** Every check's finding, in evaluation order — not just the one that decided `verdict`. */
58
+ reasons: PrescreenReason[];
59
+ }
60
+ /**
61
+ * Run every deterministic check, in order, and record every hit — first hit decides `verdict`,
62
+ * but the caller (and the rationale a consumer posts) gets the full list, matching the existing
63
+ * "a verdict may hit several" precedent in `issue-cycle-classifier.ds.md`.
64
+ */
65
+ export declare function prescreenIssue(input: PrescreenInput): PrescreenVerdict;
66
+ //# sourceMappingURL=prescreen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prescreen.d.ts","sourceRoot":"","sources":["../src/prescreen.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,6FAA6F;AAC7F,MAAM,WAAW,gBAAgB;IAC/B,0EAA0E;IAC1E,IAAI,EAAE,MAAM,CAAC;IACb,mHAAmH;IACnH,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CACxC;AAwBD,eAAO,MAAM,mBAAmB,EAAE,SAAS,gBAAgB,EAmD1D,CAAC;AAEF,wKAAwK;AACxK,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAKtC;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAY5D;AAED,0FAA0F;AAC1F,MAAM,WAAW,eAAe;IAC9B,uGAAuG;IACvG,KAAK,EAAE,kBAAkB,GAAG,YAAY,GAAG,YAAY,GAAG,YAAY,GAAG,iBAAiB,CAAC;IAC3F,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,oGAAoG;IACpG,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,gBAAgB;IAC/B,6IAA6I;IAC7I,OAAO,EAAE,MAAM,GAAG,WAAW,CAAC;IAC9B,4FAA4F;IAC5F,OAAO,EAAE,eAAe,EAAE,CAAC;CAC5B;AA6BD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,gBAAgB,CA4CtE"}
@@ -0,0 +1,187 @@
1
+ "use strict";
2
+ /**
3
+ * Deterministic classify pre-screen (#538) — the "no tokens spent" gate `issue-cycle-classifier`
4
+ * runs before any model call. `docs/reports/batch-pilot-2-execution.md` §4.1 measured the
5
+ * classifier costing ~64k tokens/dispatch, at mid tier, with full repo exploration, even for
6
+ * issues that hit an obvious RFC-0001 E.2 floor rule a deterministic check can catch for free.
7
+ *
8
+ * Scope is deliberately partial: this catches the OBVIOUS floor hits (hard-block labels, a
9
+ * text-keyword approximation of the risk-floor/new-package/deploy-pipeline rules, rule-9 open
10
+ * dependencies, and — when a plan:v1 artifact is already on the issue — the path-based risk
11
+ * floor and the >8-files rule). Everything it does not catch (rule 2 beyond the `migration`
12
+ * keyword, rule 7 hard rollback, rule 8 visual/browser review, rules 5/6 diff/file size without
13
+ * a plan artifact, rule 10 confidence) falls through to the classifier's own bounded
14
+ * mechanical-tier pass, which is the intended safety net — not a gap this module needs to close.
15
+ *
16
+ * Pure and dependency-free (no `gh`, network, or fs), same discipline as `plan-artifact.ts` and
17
+ * `runstate.ts` — unit-testable directly. Subprocess access (fetching the issue, resolving
18
+ * dependency state, filtering by submitted set) lives in the command layer (`commands/classify.ts`).
19
+ */
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ exports.MAX_DEPENDENCY_REFS = exports.TEXT_FLOOR_PATTERNS = void 0;
22
+ exports.extractDependencyRefs = extractDependencyRefs;
23
+ exports.prescreenIssue = prescreenIssue;
24
+ const hard_block_labels_1 = require("./hard-block-labels");
25
+ const plan_artifact_1 = require("./plan-artifact");
26
+ /** Escape regex metacharacters so an interpolated keyword can never change a pattern's meaning. */
27
+ function escapeRegExp(s) {
28
+ return s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
29
+ }
30
+ /** A multi-word phrase, safe to interpolate into `\b...\b`: metacharacters escaped, any run of whitespace matches `\s+`. */
31
+ function phrase(s) {
32
+ return escapeRegExp(s).replace(/\s+/g, '\\s+');
33
+ }
34
+ /**
35
+ * First keyword (in list order) that matches `text` as a whole word/phrase, or null. `\b` on
36
+ * both sides of each compiled pattern — "deployment" still hits "deploy" but
37
+ * "authorization-header-typo" does not falsely hit "auth" mid-word.
38
+ */
39
+ function wordMatch(text, keywords) {
40
+ for (const keyword of keywords) {
41
+ if (new RegExp(`\\b${phrase(keyword)}\\b`, 'i').test(text))
42
+ return keyword;
43
+ }
44
+ return null;
45
+ }
46
+ exports.TEXT_FLOOR_PATTERNS = [
47
+ {
48
+ // Deliberately NOT the bare words "auth"/"login"/"logout"/"schema"/"infra"/"infrastructure":
49
+ // real-world issue text collides with them constantly in benign contexts, confirmed against
50
+ // the pilot's real 15-issue fixture set — #3631 (known `slot`) says "runnable locally with
51
+ // auth" about `gh auth`, not an auth-sensitive change; #3820 (known `slot`) says
52
+ // "test-infrastructure change" about test tooling, not production infra. "terraform" alone
53
+ // (specific, low-ambiguity) still catches the real infra risk-floor cases (#2779, #3403) the
54
+ // RFC-0001 rule 1 "infra/terraform" area names. Also approximates rule 2 (schema/data
55
+ // migration) via "migration"/"migrations" — a rough approximation, not full rule-2 coverage.
56
+ name: 'rule1-risk-floor-area',
57
+ match: (t) => wordMatch(t, [
58
+ 'authentication',
59
+ 'authorization',
60
+ 'oauth',
61
+ 'sso',
62
+ 'payment',
63
+ 'payments',
64
+ 'billing',
65
+ 'invoice',
66
+ 'invoices',
67
+ 'checkout',
68
+ 'stripe',
69
+ 'migration',
70
+ 'migrations',
71
+ 'security',
72
+ 'crypto',
73
+ 'secret',
74
+ 'secrets',
75
+ 'credential',
76
+ 'credentials',
77
+ 'terraform',
78
+ ]),
79
+ },
80
+ {
81
+ name: 'rule3-new-package-workspace',
82
+ match: (t) => wordMatch(t, ['new package', 'new workspace', 'monorepo package']),
83
+ },
84
+ {
85
+ name: 'rule4-deploy-pipeline',
86
+ match: (t) => wordMatch(t, [
87
+ 'deploy',
88
+ 'deployment',
89
+ 'ci/cd',
90
+ 'cicd',
91
+ 'release pipeline',
92
+ 'rollback pipeline',
93
+ ]),
94
+ },
95
+ ];
96
+ /** `Depends on #N` references resolved per issue; each costs a `gh` call downstream (command layer), same rationale as `MAX_ISSUE_SELECTION` (`issue-selection.ts`). */
97
+ exports.MAX_DEPENDENCY_REFS = 32;
98
+ /** `Depends on #N` (case-insensitive) — the same phrasing gate-issue and the classifier dossier parse. */
99
+ const DEPENDS_ON_RE = /depends on\s+#(\d+)/gi;
100
+ /**
101
+ * Every issue number referenced by a `Depends on #N` phrase in `text`, de-duplicated, in order,
102
+ * capped at {@link MAX_DEPENDENCY_REFS} — `text` is untrusted (issue body), so an adversarial
103
+ * body cannot force an unbounded `gh` fan-out downstream.
104
+ */
105
+ function extractDependencyRefs(text) {
106
+ const seen = new Set();
107
+ const refs = [];
108
+ for (const match of text.matchAll(DEPENDS_ON_RE)) {
109
+ if (refs.length >= exports.MAX_DEPENDENCY_REFS)
110
+ break;
111
+ const n = Number(match[1]);
112
+ if (Number.isSafeInteger(n) && !seen.has(n)) {
113
+ seen.add(n);
114
+ refs.push(n);
115
+ }
116
+ }
117
+ return refs;
118
+ }
119
+ /** Predicted files count above which RFC-0001 E.2 rule 5 ("Predicted files > 8") fires. */
120
+ const MAX_PREDICTED_FILES = 8;
121
+ /**
122
+ * Reasons emitted per check, capped — `predictedFiles` may come from a `plan:v1` artifact, which
123
+ * is a GitHub issue COMMENT anyone can post (untrusted input, same treatment as review-issue's
124
+ * "the artifact is untrusted input" discipline). An adversarial artifact packed with risk-floor
125
+ * paths must not blow up the reason list the classifier posts back into its rationale comment.
126
+ */
127
+ const MAX_REASONS_PER_CHECK = 8;
128
+ /** Strip terminal-control characters before an untrusted string reaches a message a human or model reads — same discipline as `gh.ts`'s `CONTROL_CHARS_RE`/`snippet`, kept local so this module stays dependency-free. */
129
+ // biome-ignore lint/suspicious/noControlCharactersInRegex: matching (and stripping) control characters is exactly this regex's job
130
+ const CONTROL_CHARS_RE = /[\x00-\x08\x0b-\x1f\x7f\x9b]/g;
131
+ const SANITIZE_MAX_LENGTH = 200;
132
+ /** Make an untrusted string (a GitHub label name, a `plan:v1`-comment-sourced path) safe to interpolate into a reason message: no control chars, no markdown/backtick breakout, bounded length. */
133
+ function sanitize(value) {
134
+ const cleaned = value
135
+ .replace(CONTROL_CHARS_RE, '')
136
+ .replace(/[`\n\r]/g, ' ')
137
+ .trim();
138
+ return cleaned.length > SANITIZE_MAX_LENGTH
139
+ ? `${cleaned.slice(0, SANITIZE_MAX_LENGTH)}…`
140
+ : cleaned;
141
+ }
142
+ /**
143
+ * Run every deterministic check, in order, and record every hit — first hit decides `verdict`,
144
+ * but the caller (and the rationale a consumer posts) gets the full list, matching the existing
145
+ * "a verdict may hit several" precedent in `issue-cycle-classifier.ds.md`.
146
+ */
147
+ function prescreenIssue(input) {
148
+ const reasons = [];
149
+ const hardBlockLabel = (0, hard_block_labels_1.pickHardBlockLabel)(input.labels);
150
+ if (hardBlockLabel !== null) {
151
+ reasons.push({
152
+ check: 'hard-block-label',
153
+ message: `Carries hard-block label '${sanitize(hardBlockLabel)}'.`,
154
+ });
155
+ }
156
+ const text = `${input.title}\n${input.body}\n${input.labels.join(' ')}`;
157
+ for (const pattern of exports.TEXT_FLOOR_PATTERNS) {
158
+ const hit = pattern.match(text);
159
+ if (hit !== null) {
160
+ reasons.push({
161
+ check: 'text-floor',
162
+ message: `Title/body/labels match '${pattern.name}' (keyword: '${hit}').`,
163
+ });
164
+ }
165
+ }
166
+ const predictedFiles = input.predictedFiles ?? [];
167
+ for (const hit of (0, plan_artifact_1.scanRiskFloor)(predictedFiles).slice(0, MAX_REASONS_PER_CHECK)) {
168
+ reasons.push({
169
+ check: 'path-floor',
170
+ message: `Predicted file '${sanitize(hit.path)}' touches '${hit.pattern}' (rule1-risk-floor-area).`,
171
+ });
172
+ }
173
+ if (predictedFiles.length > MAX_PREDICTED_FILES) {
174
+ reasons.push({
175
+ check: 'file-count',
176
+ message: `Predicted files (${predictedFiles.length}) exceeds ${MAX_PREDICTED_FILES} (rule5-file-count).`,
177
+ });
178
+ }
179
+ for (const dep of (input.openDependencies ?? []).slice(0, MAX_REASONS_PER_CHECK)) {
180
+ reasons.push({
181
+ check: 'open-dependency',
182
+ message: `Depends on #${dep}, which is open and outside the submitted set (rule9-open-dependency).`,
183
+ });
184
+ }
185
+ return { verdict: reasons.length > 0 ? 'full' : 'candidate', reasons };
186
+ }
187
+ //# sourceMappingURL=prescreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prescreen.js","sourceRoot":"","sources":["../src/prescreen.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-dossier/cli",
3
- "version": "0.25.0",
3
+ "version": "0.26.0",
4
4
  "description": "Create, verify, sign, publish, and run dossiers — portable, signed, versioned skills for any LLM tool. The dossier ⇄ Claude Code skill bridge (install-skill / skill-export).",
5
5
  "main": "dist/cli.js",
6
6
  "bin": {