@ozzylabs/feedradar 0.1.7 → 0.1.9
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 +2 -1
- package/dist/agents/_boundary.d.ts +87 -1
- package/dist/agents/_boundary.d.ts.map +1 -1
- package/dist/agents/_boundary.js +197 -0
- package/dist/agents/_boundary.js.map +1 -1
- package/dist/agents/claude-code.d.ts.map +1 -1
- package/dist/agents/claude-code.js +33 -93
- package/dist/agents/claude-code.js.map +1 -1
- package/dist/agents/codex-cli.d.ts.map +1 -1
- package/dist/agents/codex-cli.js +34 -93
- package/dist/agents/codex-cli.js.map +1 -1
- package/dist/agents/copilot.d.ts.map +1 -1
- package/dist/agents/copilot.js +33 -93
- package/dist/agents/copilot.js.map +1 -1
- package/dist/agents/gemini-cli.d.ts.map +1 -1
- package/dist/agents/gemini-cli.js +33 -93
- package/dist/agents/gemini-cli.js.map +1 -1
- package/dist/claude-skills/dismiss/SKILL.md +18 -12
- package/dist/claude-skills/research/SKILL.md +21 -1
- package/dist/claude-skills/review/SKILL.md +23 -1
- package/dist/claude-skills/update/SKILL.md +24 -2
- package/dist/cli/_commit-path.d.ts +33 -0
- package/dist/cli/_commit-path.d.ts.map +1 -0
- package/dist/cli/_commit-path.js +43 -0
- package/dist/cli/_commit-path.js.map +1 -0
- package/dist/cli/dismiss.d.ts +38 -8
- package/dist/cli/dismiss.d.ts.map +1 -1
- package/dist/cli/dismiss.js +237 -55
- package/dist/cli/dismiss.js.map +1 -1
- package/dist/cli/research.d.ts.map +1 -1
- package/dist/cli/research.js +307 -45
- package/dist/cli/research.js.map +1 -1
- package/dist/cli/review.d.ts.map +1 -1
- package/dist/cli/review.js +169 -0
- package/dist/cli/review.js.map +1 -1
- package/dist/cli/source.d.ts.map +1 -1
- package/dist/cli/source.js +18 -0
- package/dist/cli/source.js.map +1 -1
- package/dist/cli/update.d.ts.map +1 -1
- package/dist/cli/update.js +429 -141
- package/dist/cli/update.js.map +1 -1
- package/dist/cli/workflow/generate-combined-with-triage.d.ts +49 -1
- package/dist/cli/workflow/generate-combined-with-triage.d.ts.map +1 -1
- package/dist/cli/workflow/generate-combined-with-triage.js +139 -3
- package/dist/cli/workflow/generate-combined-with-triage.js.map +1 -1
- package/dist/core/feeds/json-api.d.ts +5 -2
- package/dist/core/feeds/json-api.d.ts.map +1 -1
- package/dist/core/feeds/json-api.js +113 -13
- package/dist/core/feeds/json-api.js.map +1 -1
- package/dist/core/feeds/types.d.ts +40 -0
- package/dist/core/feeds/types.d.ts.map +1 -1
- package/dist/core/triage/adapter.d.ts +45 -0
- package/dist/core/triage/adapter.d.ts.map +1 -1
- package/dist/core/triage/adapter.js +50 -11
- package/dist/core/triage/adapter.js.map +1 -1
- package/dist/core/watcher.d.ts.map +1 -1
- package/dist/core/watcher.js +12 -2
- package/dist/core/watcher.js.map +1 -1
- package/dist/gemini-commands/research.toml +1 -1
- package/dist/gemini-commands/review.toml +1 -1
- package/dist/gemini-commands/update.toml +1 -1
- package/dist/recipes/aws-whats-new.yaml +7 -1
- package/dist/schemas/recipe.d.ts +1 -1
- package/dist/schemas/source.d.ts +22 -4
- package/dist/schemas/source.d.ts.map +1 -1
- package/dist/schemas/source.js +31 -3
- package/dist/schemas/source.js.map +1 -1
- package/dist/skills/research/SKILL.md +75 -8
- package/dist/skills/review/SKILL.md +79 -7
- package/dist/skills/update/SKILL.md +68 -7
- package/dist/templates/workflows/combined-with-triage.template.yaml.tmpl +29 -30
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createHash } from "node:crypto";
|
|
2
|
-
import { ItemSchema } from "../../schemas/index.js";
|
|
2
|
+
import { FACET_RANGE_CURRENT_YEAR, ItemSchema } from "../../schemas/index.js";
|
|
3
3
|
import { fetchWithRetry } from "./_fetch.js";
|
|
4
4
|
import { selectAll, selectOne } from "./_jsonpath.js";
|
|
5
5
|
import { deriveItemId, deriveStableKey } from "./derive-id.js";
|
|
@@ -485,16 +485,31 @@ function applyFacetValue(rawUrl, facet, value) {
|
|
|
485
485
|
u.searchParams.set(facet.param, substituted);
|
|
486
486
|
return u.toString();
|
|
487
487
|
}
|
|
488
|
+
/**
|
|
489
|
+
* Resolve a range upper bound to a concrete number.
|
|
490
|
+
*
|
|
491
|
+
* The `"current-year"` sentinel (#257) expands to the current calendar year
|
|
492
|
+
* at fetch time so year-axis recipes auto-extend across year boundaries
|
|
493
|
+
* instead of silently capping at a hardcoded upper bound. `now` is injected
|
|
494
|
+
* for deterministic testing; it defaults to the wall clock.
|
|
495
|
+
*/
|
|
496
|
+
function resolveRangeEnd(end, now = new Date()) {
|
|
497
|
+
return end === FACET_RANGE_CURRENT_YEAR ? now.getFullYear() : end;
|
|
498
|
+
}
|
|
488
499
|
/**
|
|
489
500
|
* Enumerate the facet values for a single facet spec.
|
|
490
501
|
*
|
|
491
502
|
* - `range`: `[start, end]` inclusive, walked with `step` (default 1).
|
|
492
|
-
* Schema guarantees `step > 0
|
|
503
|
+
* Schema guarantees `step > 0`. The upper bound may be the literal
|
|
504
|
+
* `"current-year"` sentinel, resolved here to the current calendar year
|
|
505
|
+
* (#257); when start > the resolved end the loop yields nothing (a future-
|
|
506
|
+
* dated start is a degenerate 0-item config, not an error).
|
|
493
507
|
* - `enum`: returns the explicit list verbatim (string or number).
|
|
494
508
|
*/
|
|
495
509
|
function* generateFacetValues(facet) {
|
|
496
510
|
if (facet.type === "range") {
|
|
497
|
-
const [start,
|
|
511
|
+
const [start, rawEnd] = facet.range;
|
|
512
|
+
const end = resolveRangeEnd(rawEnd);
|
|
498
513
|
const step = facet.step;
|
|
499
514
|
for (let v = start; v <= end; v += step)
|
|
500
515
|
yield v;
|
|
@@ -503,14 +518,58 @@ function* generateFacetValues(facet) {
|
|
|
503
518
|
for (const v of facet.values)
|
|
504
519
|
yield v;
|
|
505
520
|
}
|
|
521
|
+
/**
|
|
522
|
+
* Count the facet values a real (non-dry-run) sweep would walk.
|
|
523
|
+
*
|
|
524
|
+
* Used purely for the `source test` warning denominator ("testing 1 of N
|
|
525
|
+
* facet values") — the real sweep still iterates {@link generateFacetValues}.
|
|
526
|
+
*/
|
|
527
|
+
function countFacetValues(facet) {
|
|
528
|
+
if (facet.type === "range") {
|
|
529
|
+
const [start, rawEnd] = facet.range;
|
|
530
|
+
const end = resolveRangeEnd(rawEnd);
|
|
531
|
+
if (start > end)
|
|
532
|
+
return 0;
|
|
533
|
+
return Math.floor((end - start) / facet.step) + 1;
|
|
534
|
+
}
|
|
535
|
+
return facet.values.length;
|
|
536
|
+
}
|
|
537
|
+
/**
|
|
538
|
+
* Pick the single facet value to probe in dry-run mode (`source test`).
|
|
539
|
+
*
|
|
540
|
+
* - `range`: the resolved UPPER bound (latest year via {@link resolveRangeEnd},
|
|
541
|
+
* honouring the `"current-year"` sentinel from #257). This fixes #256 —
|
|
542
|
+
* recency-style recipes (e.g. AWS What's New swept by year) were previously
|
|
543
|
+
* tested against the range START (oldest year, e.g. 2004), where current
|
|
544
|
+
* keywords can never match. Testing the latest year makes keyword tuning
|
|
545
|
+
* meaningful. Returns `null` for a degenerate `start > end` range (no value
|
|
546
|
+
* to probe).
|
|
547
|
+
* - `enum`: the first listed value. Enum facets have no "latest" ordering, so
|
|
548
|
+
* we keep the historical first-value behaviour.
|
|
549
|
+
*/
|
|
550
|
+
function pickDryRunFacetValue(facet) {
|
|
551
|
+
if (facet.type === "range") {
|
|
552
|
+
const [start, rawEnd] = facet.range;
|
|
553
|
+
const end = resolveRangeEnd(rawEnd);
|
|
554
|
+
if (start > end)
|
|
555
|
+
return null;
|
|
556
|
+
// Walk down from `end` by `step` to land on a value the real sweep would
|
|
557
|
+
// actually visit (the inclusive range may not include `end` itself when
|
|
558
|
+
// step > 1 and (end - start) is not a multiple of step).
|
|
559
|
+
const offset = (end - start) % facet.step;
|
|
560
|
+
return end - offset;
|
|
561
|
+
}
|
|
562
|
+
return facet.values[0] ?? null;
|
|
563
|
+
}
|
|
506
564
|
/**
|
|
507
565
|
* Inner fetch — the original single-axis (pagination-only) traversal. The
|
|
508
566
|
* public adapter delegates here either directly (no facets) or once per
|
|
509
567
|
* facet value (facet sweep mode).
|
|
510
568
|
*
|
|
511
569
|
* `dryRun` is preserved (single-page fetch behaviour) but the public
|
|
512
|
-
* adapter narrows it further in facet sweep mode to
|
|
513
|
-
*
|
|
570
|
+
* adapter narrows it further in facet sweep mode to a single facet value
|
|
571
|
+
* (the range upper bound / latest year, or the first enum value — see
|
|
572
|
+
* {@link pickDryRunFacetValue}) so `source test` does not walk every year.
|
|
514
573
|
*/
|
|
515
574
|
async function fetchSingle(source, options) {
|
|
516
575
|
if (!source.pagination) {
|
|
@@ -772,8 +831,11 @@ async function fetchSingle(source, options) {
|
|
|
772
831
|
* inside each value but never skips a facet outright (that would silently
|
|
773
832
|
* miss items in a facet whose first page has not changed since last run).
|
|
774
833
|
*
|
|
775
|
-
* Dry-run (`source test`) iterates only
|
|
776
|
-
* selector adoption preview is meaningful without walking every year
|
|
834
|
+
* Dry-run (`source test`) iterates only a single facet value so the
|
|
835
|
+
* selector adoption preview is meaningful without walking every year:
|
|
836
|
+
* range facets probe the upper bound (latest year, #256/#257) so recency
|
|
837
|
+
* recipes verify keywords against current content; enum facets probe the
|
|
838
|
+
* first value. The probed value is reported via `diag.facetSweep`.
|
|
777
839
|
*
|
|
778
840
|
* Phase 1 limitation: a single facet entry only. Multi-facet (e.g. year ×
|
|
779
841
|
* category) requires composition rules that are out of scope here — see
|
|
@@ -792,7 +854,7 @@ export const jsonApiAdapter = {
|
|
|
792
854
|
// explicit ordering / dedup semantics that ADR-0017 defers.
|
|
793
855
|
throw new Error(`json-api adapter: source '${source.id}' declares ${facetEntries.length} facets — multi-facet sweep is not supported in Phase 1 (ADR-0017 §Scope)`);
|
|
794
856
|
}
|
|
795
|
-
const [, facetSpec] = facetEntries[0];
|
|
857
|
+
const [facetName, facetSpec] = facetEntries[0];
|
|
796
858
|
const dryRun = options.dryRun === true;
|
|
797
859
|
// Aggregate items + lastSeenIds across every facet value. ETag is
|
|
798
860
|
// intentionally NOT persisted: a single ETag cannot represent the
|
|
@@ -803,7 +865,36 @@ export const jsonApiAdapter = {
|
|
|
803
865
|
let aggregatedDiag;
|
|
804
866
|
let aggregatedNotModified = true;
|
|
805
867
|
const fetchedAt = new Date().toISOString();
|
|
806
|
-
|
|
868
|
+
// Dry-run (`source test`) probes exactly ONE facet value. For `range`
|
|
869
|
+
// facets we pick the resolved upper bound (latest year) so recency-style
|
|
870
|
+
// recipes are tested against current content — testing the range START
|
|
871
|
+
// (oldest year, e.g. 2004) made keyword verification useless (#256).
|
|
872
|
+
// `enum` facets keep first-value behaviour. The chosen value drives the
|
|
873
|
+
// single iteration below and is reported via the `facetSweep` diag so the
|
|
874
|
+
// CLI can warn that only one slice was exercised.
|
|
875
|
+
const dryRunValue = dryRun ? pickDryRunFacetValue(facetSpec) : null;
|
|
876
|
+
const facetSweepDiag = dryRun && dryRunValue !== null
|
|
877
|
+
? {
|
|
878
|
+
facet: facetName,
|
|
879
|
+
param: facetSpec.param,
|
|
880
|
+
testedValue: dryRunValue,
|
|
881
|
+
type: facetSpec.type,
|
|
882
|
+
totalValues: countFacetValues(facetSpec),
|
|
883
|
+
}
|
|
884
|
+
: undefined;
|
|
885
|
+
// In dry-run mode iterate only the chosen value; otherwise walk the full
|
|
886
|
+
// sweep. A degenerate range (`start > end`, i.e. `dryRunValue === null`)
|
|
887
|
+
// yields nothing and falls through to an empty result.
|
|
888
|
+
const valuesToWalk = dryRun && dryRunValue !== null ? [dryRunValue] : dryRun ? [] : generateFacetValues(facetSpec);
|
|
889
|
+
// Per-page progress (#269): the inner pagination loop resets its page
|
|
890
|
+
// counter on every facet value, so wrap `onPage` to stamp which value
|
|
891
|
+
// (and its 1-based position in the sweep) each page event belongs to.
|
|
892
|
+
// The CLI uses this to prefix the row with e.g. `year=2018 (15/23)`.
|
|
893
|
+
const baseOnPage = options.onPage;
|
|
894
|
+
const facetTotal = dryRun ? 1 : countFacetValues(facetSpec);
|
|
895
|
+
let facetIndex = 0;
|
|
896
|
+
for (const value of valuesToWalk) {
|
|
897
|
+
facetIndex++;
|
|
807
898
|
const innerUrl = applyFacetValue(source.url, facetSpec, value);
|
|
808
899
|
// Build a "single-axis" view of the source: same id / pagination /
|
|
809
900
|
// selectors but with the facet-stamped URL and `facets: undefined`
|
|
@@ -816,6 +907,12 @@ export const jsonApiAdapter = {
|
|
|
816
907
|
// would silently 304-out the next slice.
|
|
817
908
|
const innerOptions = {
|
|
818
909
|
...options,
|
|
910
|
+
onPage: baseOnPage
|
|
911
|
+
? (info) => baseOnPage({
|
|
912
|
+
...info,
|
|
913
|
+
facet: { name: facetName, value, index: facetIndex, total: facetTotal },
|
|
914
|
+
})
|
|
915
|
+
: undefined,
|
|
819
916
|
state: options.state
|
|
820
917
|
? {
|
|
821
918
|
...options.state,
|
|
@@ -839,10 +936,13 @@ export const jsonApiAdapter = {
|
|
|
839
936
|
aggregatedItems.push(item);
|
|
840
937
|
aggregatedSeen.add(item.id);
|
|
841
938
|
}
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
939
|
+
}
|
|
940
|
+
// Fold the facet-sweep summary into the representative diag so
|
|
941
|
+
// `source test` can warn which single value it probed. We attach it even
|
|
942
|
+
// when the inner fetch produced no diag of its own (e.g. a degenerate
|
|
943
|
+
// range yields no fetch at all but the sweep metadata is still useful).
|
|
944
|
+
if (facetSweepDiag) {
|
|
945
|
+
aggregatedDiag = { ...(aggregatedDiag ?? {}), facetSweep: facetSweepDiag };
|
|
846
946
|
}
|
|
847
947
|
return {
|
|
848
948
|
items: aggregatedItems,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-api.js","sourceRoot":"","sources":["../../../src/core/feeds/json-api.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"json-api.js","sourceRoot":"","sources":["../../../src/core/feeds/json-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -50,6 +50,32 @@ export interface FeedFetchDiag {
|
|
|
50
50
|
/** Cursor / token value extracted from `nextCursorPath`, when applicable. */
|
|
51
51
|
nextCursor?: string | null;
|
|
52
52
|
};
|
|
53
|
+
/**
|
|
54
|
+
* Facet-sweep summary surfaced when a `kind: json-api` source declares
|
|
55
|
+
* `facets:` (ADR-0017) and the fetch ran in dry-run mode (`source test`).
|
|
56
|
+
*
|
|
57
|
+
* A dry run walks exactly ONE facet value — the rest of the sweep is
|
|
58
|
+
* skipped to keep the preview cheap. This payload tells `source test`
|
|
59
|
+
* which value was actually probed so the CLI can warn the user that
|
|
60
|
+
* keyword verification only reflects that single slice (e.g. a year-axis
|
|
61
|
+
* recipe whose other years are not exercised). For `range` facets the
|
|
62
|
+
* probed value is the resolved upper bound (latest year, #256/#257) so
|
|
63
|
+
* recency-style recipes are tested against current content rather than
|
|
64
|
+
* the historical first year; `enum` facets use the first listed value
|
|
65
|
+
* (no "latest" concept).
|
|
66
|
+
*/
|
|
67
|
+
facetSweep?: {
|
|
68
|
+
/** The facet name (the key in `source.facets`). */
|
|
69
|
+
facet: string;
|
|
70
|
+
/** The injected query parameter (`facet.param`). */
|
|
71
|
+
param: string;
|
|
72
|
+
/** The single facet value actually fetched in this dry run. */
|
|
73
|
+
testedValue: string | number;
|
|
74
|
+
/** The facet discriminator (`range` | `enum`). */
|
|
75
|
+
type: string;
|
|
76
|
+
/** Total number of facet values a real (non-dry-run) sweep would walk. */
|
|
77
|
+
totalValues: number;
|
|
78
|
+
};
|
|
53
79
|
}
|
|
54
80
|
/** Result of a single adapter fetch — the items plus the next state to persist. */
|
|
55
81
|
export interface FeedFetchResult {
|
|
@@ -154,11 +180,25 @@ export interface FeedAdapterOptions {
|
|
|
154
180
|
* Unset means no per-page callback. Independent of `onProgress`: callers
|
|
155
181
|
* that want the spinner but not per-page metrics can wire one and not the
|
|
156
182
|
* other.
|
|
183
|
+
*
|
|
184
|
+
* `facet` is set only during a facet sweep (ADR-0017): the json-api adapter
|
|
185
|
+
* walks every facet value and **restarts the inner pagination loop per
|
|
186
|
+
* value**, so `pageIndex`/`pageTotal` reset to `1/N` on each value. Without
|
|
187
|
+
* the facet context the repeated resets read as a glitching counter (#269);
|
|
188
|
+
* with it the CLI can prefix the page row with which value it belongs to
|
|
189
|
+
* (e.g. `year=2018 (15/23)`). `index`/`total` are 1-based positions in the
|
|
190
|
+
* sweep. Unset for non-faceted sources (the counter is monotonic).
|
|
157
191
|
*/
|
|
158
192
|
onPage?: (info: {
|
|
159
193
|
pageIndex: number;
|
|
160
194
|
pageTotal: number;
|
|
161
195
|
items: number;
|
|
196
|
+
facet?: {
|
|
197
|
+
name: string;
|
|
198
|
+
value: string | number;
|
|
199
|
+
index: number;
|
|
200
|
+
total: number;
|
|
201
|
+
};
|
|
162
202
|
}) => void;
|
|
163
203
|
}
|
|
164
204
|
export interface FeedAdapter {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/feeds/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,MAAM,SAAS,GAAG,CACtB,KAAK,EAAE,MAAM,GAAG,GAAG,EACnB,IAAI,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,KAC9D,OAAO,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE;QAAE,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAC9C,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CACzB,CAAC,CAAC;AAEH;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IACjD;;;;OAIG;IACH,iBAAiB,CAAC,EAAE;QAClB,sDAAsD;QACtD,QAAQ,EAAE,MAAM,CAAC;QACjB,sEAAsE;QACtE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,8EAA8E;QAC9E,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC/B,6EAA6E;QAC7E,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAC5B,CAAC;CACH;AAED,mFAAmF;AACnF,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,IAAI,EAAE,CAAC;IACd;;;;OAIG;IACH,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC5B;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,aAAa,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,2EAA2E;IAC3E,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,0DAA0D;IAC1D,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB;;;;;;;;;OASG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC;;;;;;;;;;;;;;;OAeG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/feeds/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -63,6 +63,51 @@ export type TriageRunner = (input: TriageRunInput) => Promise<TriageRunResult>;
|
|
|
63
63
|
* include one of the listed needles somewhere in stdout / stderr.
|
|
64
64
|
*/
|
|
65
65
|
export declare function looksLikeRateLimit(text: string): boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Per-agent CLI invocation matrix. The triage channel reuses the same
|
|
68
|
+
* binaries as the research channel (claude-code → `claude`, etc.) but with
|
|
69
|
+
* triage-specific flags:
|
|
70
|
+
*
|
|
71
|
+
* - All adapters pass a short, fixed `STDIN_INVOCATION` on argv and stream the
|
|
72
|
+
* full triage request (policy + per-item blocks + JSON schema) on stdin.
|
|
73
|
+
* The request scales with item count — a backfilled source can produce a
|
|
74
|
+
* 135KB+ prompt — and Linux caps a *single* argv string at `MAX_ARG_STRLEN`
|
|
75
|
+
* (128KB) independently of the larger `ARG_MAX` total, so an argv-borne
|
|
76
|
+
* prompt dies with `spawn E2BIG` on large sources (#270). stdin has no such
|
|
77
|
+
* limit. This mirrors how the research / review / update adapters in
|
|
78
|
+
* `src/agents/*.ts` already feed their bulk payload (they all
|
|
79
|
+
* `child.stdin.write(...)`); the CLIs surface piped stdin to the model.
|
|
80
|
+
* - We launch each CLI in the equivalent "non-interactive, full-permission"
|
|
81
|
+
* mode that the research adapter uses, so the user does not need to
|
|
82
|
+
* re-authorize tools. See the individual `src/agents/*.ts` files for the
|
|
83
|
+
* rationale on each flag set.
|
|
84
|
+
*
|
|
85
|
+
* For the cheap-model channel intent (gemini-2.5-flash-lite,
|
|
86
|
+
* claude-haiku-4-5), the model selection is left to the agent CLI's own
|
|
87
|
+
* config — ADR-0018 §W4 explicitly leaves "which model the triage channel
|
|
88
|
+
* routes to" as adapter-internal, not schema-modeled. Users who want a
|
|
89
|
+
* specific cheap model set it via `gemini config set model …` (or
|
|
90
|
+
* equivalent) on their workstation.
|
|
91
|
+
*/
|
|
92
|
+
/**
|
|
93
|
+
* Fixed argv prompt handed to every triage CLI. It carries no per-item data
|
|
94
|
+
* (so its size never approaches `MAX_ARG_STRLEN`) and simply directs the
|
|
95
|
+
* agent to the real request streamed on stdin. The detailed instructions —
|
|
96
|
+
* trust-boundary rules, output schema, per-item rules — live in the stdin
|
|
97
|
+
* payload built by `buildTriagePrompt`, so this stays a thin pointer.
|
|
98
|
+
*/
|
|
99
|
+
export declare const STDIN_INVOCATION: string;
|
|
100
|
+
/**
|
|
101
|
+
* Build the spawn command + argv for a triage agent. The prompt is NOT an
|
|
102
|
+
* argument (it goes on stdin — see {@link runTriageAgentCli} and the
|
|
103
|
+
* module-level note on `MAX_ARG_STRLEN` / #270); argv carries only the fixed
|
|
104
|
+
* {@link STDIN_INVOCATION} plus the per-CLI non-interactive flags. Exported so
|
|
105
|
+
* tests can assert the prompt never lands on argv regardless of item count.
|
|
106
|
+
*/
|
|
107
|
+
export declare function buildSpawnArgs(agent: AgentId): {
|
|
108
|
+
command: string;
|
|
109
|
+
args: string[];
|
|
110
|
+
};
|
|
66
111
|
/**
|
|
67
112
|
* Default runner: spawn the per-agent CLI and capture stdout / stderr.
|
|
68
113
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/core/triage/adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,eAAe,GAAG,IAAI,GAAG,cAAc,GAAG,OAAO,CAAC;AAE9D,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,eAAe,CAAC;IACxB,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC;IACf,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;AAE/E;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAcxD;
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/core/triage/adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,eAAe,GAAG,IAAI,GAAG,cAAc,GAAG,OAAO,CAAC;AAE9D,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,eAAe,CAAC;IACxB,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC;IACf,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;AAE/E;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAcxD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,QAIjB,CAAC;AAEb;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CA8BlF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,CAmDvF"}
|
|
@@ -27,10 +27,15 @@ export function looksLikeRateLimit(text) {
|
|
|
27
27
|
* binaries as the research channel (claude-code → `claude`, etc.) but with
|
|
28
28
|
* triage-specific flags:
|
|
29
29
|
*
|
|
30
|
-
* - All adapters pass
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
30
|
+
* - All adapters pass a short, fixed `STDIN_INVOCATION` on argv and stream the
|
|
31
|
+
* full triage request (policy + per-item blocks + JSON schema) on stdin.
|
|
32
|
+
* The request scales with item count — a backfilled source can produce a
|
|
33
|
+
* 135KB+ prompt — and Linux caps a *single* argv string at `MAX_ARG_STRLEN`
|
|
34
|
+
* (128KB) independently of the larger `ARG_MAX` total, so an argv-borne
|
|
35
|
+
* prompt dies with `spawn E2BIG` on large sources (#270). stdin has no such
|
|
36
|
+
* limit. This mirrors how the research / review / update adapters in
|
|
37
|
+
* `src/agents/*.ts` already feed their bulk payload (they all
|
|
38
|
+
* `child.stdin.write(...)`); the CLIs surface piped stdin to the model.
|
|
34
39
|
* - We launch each CLI in the equivalent "non-interactive, full-permission"
|
|
35
40
|
* mode that the research adapter uses, so the user does not need to
|
|
36
41
|
* re-authorize tools. See the individual `src/agents/*.ts` files for the
|
|
@@ -43,27 +48,53 @@ export function looksLikeRateLimit(text) {
|
|
|
43
48
|
* specific cheap model set it via `gemini config set model …` (or
|
|
44
49
|
* equivalent) on their workstation.
|
|
45
50
|
*/
|
|
46
|
-
|
|
51
|
+
/**
|
|
52
|
+
* Fixed argv prompt handed to every triage CLI. It carries no per-item data
|
|
53
|
+
* (so its size never approaches `MAX_ARG_STRLEN`) and simply directs the
|
|
54
|
+
* agent to the real request streamed on stdin. The detailed instructions —
|
|
55
|
+
* trust-boundary rules, output schema, per-item rules — live in the stdin
|
|
56
|
+
* payload built by `buildTriagePrompt`, so this stays a thin pointer.
|
|
57
|
+
*/
|
|
58
|
+
export const STDIN_INVOCATION = [
|
|
59
|
+
"A triage request is provided on standard input. Read it in full and follow",
|
|
60
|
+
"its instructions exactly: classify every item it lists and respond with the",
|
|
61
|
+
"single JSON array it specifies — no prose, no Markdown fences, nothing else.",
|
|
62
|
+
].join("\n");
|
|
63
|
+
/**
|
|
64
|
+
* Build the spawn command + argv for a triage agent. The prompt is NOT an
|
|
65
|
+
* argument (it goes on stdin — see {@link runTriageAgentCli} and the
|
|
66
|
+
* module-level note on `MAX_ARG_STRLEN` / #270); argv carries only the fixed
|
|
67
|
+
* {@link STDIN_INVOCATION} plus the per-CLI non-interactive flags. Exported so
|
|
68
|
+
* tests can assert the prompt never lands on argv regardless of item count.
|
|
69
|
+
*/
|
|
70
|
+
export function buildSpawnArgs(agent) {
|
|
47
71
|
switch (agent) {
|
|
48
72
|
case "claude-code":
|
|
49
73
|
return {
|
|
50
74
|
command: "claude",
|
|
51
|
-
args: [
|
|
75
|
+
args: [
|
|
76
|
+
"-p",
|
|
77
|
+
STDIN_INVOCATION,
|
|
78
|
+
"--output-format",
|
|
79
|
+
"text",
|
|
80
|
+
"--permission-mode",
|
|
81
|
+
"bypassPermissions",
|
|
82
|
+
],
|
|
52
83
|
};
|
|
53
84
|
case "gemini-cli":
|
|
54
85
|
return {
|
|
55
86
|
command: "gemini",
|
|
56
|
-
args: ["-p",
|
|
87
|
+
args: ["-p", STDIN_INVOCATION, "-y", "--skip-trust", "--output-format", "text"],
|
|
57
88
|
};
|
|
58
89
|
case "codex-cli":
|
|
59
90
|
return {
|
|
60
91
|
command: "codex",
|
|
61
|
-
args: ["exec", "--dangerously-bypass-approvals-and-sandbox",
|
|
92
|
+
args: ["exec", "--dangerously-bypass-approvals-and-sandbox", STDIN_INVOCATION],
|
|
62
93
|
};
|
|
63
94
|
case "copilot":
|
|
64
95
|
return {
|
|
65
96
|
command: "copilot",
|
|
66
|
-
args: ["-p",
|
|
97
|
+
args: ["-p", STDIN_INVOCATION, "--allow-all-paths", "--allow-all-tools"],
|
|
67
98
|
};
|
|
68
99
|
}
|
|
69
100
|
}
|
|
@@ -81,7 +112,7 @@ function buildSpawnArgs(agent, prompt) {
|
|
|
81
112
|
* workflow just because the user hasn't installed an optional CLI.
|
|
82
113
|
*/
|
|
83
114
|
export async function runTriageAgentCli(input) {
|
|
84
|
-
const { command, args } = buildSpawnArgs(input.agent
|
|
115
|
+
const { command, args } = buildSpawnArgs(input.agent);
|
|
85
116
|
return new Promise((resolve) => {
|
|
86
117
|
let child;
|
|
87
118
|
try {
|
|
@@ -121,7 +152,15 @@ export async function runTriageAgentCli(input) {
|
|
|
121
152
|
const status = looksLikeRateLimit(combined) ? "rate-limited" : "error";
|
|
122
153
|
resolve({ status, stdout, stderr, exitCode });
|
|
123
154
|
});
|
|
124
|
-
//
|
|
155
|
+
// Swallow EPIPE: a missing / early-exiting CLI tears down stdin before we
|
|
156
|
+
// finish writing the (potentially 100KB+) prompt. The failure is already
|
|
157
|
+
// surfaced via the `error` / `close` handlers above, so a stray stdin
|
|
158
|
+
// write error must not become an unhandled exception.
|
|
159
|
+
child.stdin?.on("error", () => { });
|
|
160
|
+
// Stream the full triage request on stdin (#270). argv only carries the
|
|
161
|
+
// fixed STDIN_INVOCATION, so the per-item payload — which can exceed the
|
|
162
|
+
// 128KB MAX_ARG_STRLEN limit — never rides on the command line.
|
|
163
|
+
child.stdin?.write(input.prompt);
|
|
125
164
|
child.stdin?.end();
|
|
126
165
|
});
|
|
127
166
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/core/triage/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AA+D3C;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACpC,OAAO;QACL,KAAK;QACL,YAAY;QACZ,YAAY;QACZ,cAAc;QACd,mBAAmB;QACnB,KAAK;QACL,qBAAqB;QACrB,gBAAgB;QAChB,oBAAoB;QACpB,oBAAoB;KACrB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AAChD,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/core/triage/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../../src/core/watcher.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAErE,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAK9E,OAAO,EAEL,eAAe,EAGf,KAAK,YAAY,EAElB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AA2CtD,MAAM,WAAW,cAAc;IAC7B,kEAAkE;IAClE,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,oEAAoE;IACpE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;;;;OASG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,WAAW,CAAC;IACnD,yCAAyC;IACzC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,2DAA2D;IAC3D,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,YAAY,CAAC;IACtC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,eAAe,CAAC;IAC7C;;;;;;;;;OASG;IACH,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC7B,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IACjC,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACpC,6EAA6E;IAC7E,MAAM,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrD;;;;;;;;;;OAUG;IACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7D;;;;;;;;;OASG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CACrC;AAWD;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GACjC,OAAO,CAAC,MAAM,EAAE,CAAC,CA6BnB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAOlF;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../../src/core/watcher.ts"],"names":[],"mappings":"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"}
|
package/dist/core/watcher.js
CHANGED
|
@@ -282,10 +282,20 @@ export async function watchRun(options) {
|
|
|
282
282
|
// narrative ("Page 3/80: 100 items") and TTY rows pick up the
|
|
283
283
|
// metric on the spinner.
|
|
284
284
|
onPage: progress
|
|
285
|
-
? ({ pageIndex, pageTotal, items: pageItems }) => {
|
|
286
|
-
|
|
285
|
+
? ({ pageIndex, pageTotal, items: pageItems, facet }) => {
|
|
286
|
+
// Facet sweep (ADR-0017) restarts pagination per facet value, so
|
|
287
|
+
// the page counter resets to `1/N` each value. Prefix the facet
|
|
288
|
+
// label (e.g. `year=2018 (15/23) `) so the repeated resets read as
|
|
289
|
+
// sweep progress rather than a glitching counter (#269).
|
|
290
|
+
const facetLabel = facet
|
|
291
|
+
? `${facet.name}=${facet.value} (${facet.index}/${facet.total}) `
|
|
292
|
+
: "";
|
|
293
|
+
const human = `${facetLabel}Page ${pageIndex + 1}/${pageTotal}: ${pageItems} items fetched`;
|
|
287
294
|
progress.phase(`[${source.id}] ${human}`);
|
|
288
295
|
progress.update({
|
|
296
|
+
...(facet
|
|
297
|
+
? { [facet.name]: `${facet.value} (${facet.index}/${facet.total})` }
|
|
298
|
+
: {}),
|
|
289
299
|
page: `${pageIndex + 1}/${pageTotal}`,
|
|
290
300
|
items: String(pageItems),
|
|
291
301
|
});
|