@mmnto/cli 1.67.0 → 1.68.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/dist/commands/spine-review-thread-source.d.ts +165 -0
- package/dist/commands/spine-review-thread-source.d.ts.map +1 -0
- package/dist/commands/spine-review-thread-source.js +251 -0
- package/dist/commands/spine-review-thread-source.js.map +1 -0
- package/dist/commands/spine-review-thread-source.test.d.ts +2 -0
- package/dist/commands/spine-review-thread-source.test.d.ts.map +1 -0
- package/dist/commands/spine-review-thread-source.test.js +284 -0
- package/dist/commands/spine-review-thread-source.test.js.map +1 -0
- package/dist/commands/spine-windtunnel.d.ts.map +1 -1
- package/dist/commands/spine-windtunnel.js +9 -0
- package/dist/commands/spine-windtunnel.js.map +1 -1
- package/dist/commands/spine-windtunnel.test.js +19 -0
- package/dist/commands/spine-windtunnel.test.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ADR-111 Stage-1 Extract — the live CLI `ReviewThreadSource` adapter (slice 5a,
|
|
3
|
+
* mmnto-ai/totem#2201).
|
|
4
|
+
*
|
|
5
|
+
* Core defines the `ReviewThreadSource` port and stays network-free + LLM-free +
|
|
6
|
+
* deterministic; THIS file is the IO-at-the-edge implementation that wraps the
|
|
7
|
+
* GitHub GraphQL `reviewThreads` API behind that port. It fetches a PR's merge
|
|
8
|
+
* commit + its review threads (each carrying `isResolved` / `isOutdated`), maps
|
|
9
|
+
* them to the provider-neutral `ReviewThreadContent`, and SURFACES the per-thread
|
|
10
|
+
* resolution flags to core. It does NOT filter resolved/outdated threads — the
|
|
11
|
+
* contract-owner ruling is "surface, don't filter": core decides eligibility and
|
|
12
|
+
* drop-ledgers every rejection (§8 "every rejection ledgered"). A server-side or
|
|
13
|
+
* client-side `isResolved:false` pre-filter is FORBIDDEN here.
|
|
14
|
+
*
|
|
15
|
+
* Error contract (the discriminated `FetchResult`, §6): a per-PR failure is NEVER
|
|
16
|
+
* thrown — the orchestrator iterates the whole train slice and must not abort on
|
|
17
|
+
* one bad PR. Network / not-found → `{kind:'unreachable'}`; a malformed or
|
|
18
|
+
* unmappable payload → `{kind:'unparseable'}`. The mining run continues; the loud
|
|
19
|
+
* drop is core's job.
|
|
20
|
+
*
|
|
21
|
+
* Reuses the established `gh` CLI exec pattern (Tenet-21 — no bespoke GraphQL
|
|
22
|
+
* client). The `exec` seam is injectable so the query-spy + mapping tests run
|
|
23
|
+
* fully offline (no network, CI-locked).
|
|
24
|
+
*/
|
|
25
|
+
import { z } from 'zod';
|
|
26
|
+
import type { FetchResult, ReviewThread, ReviewThreadSource } from '@mmnto/totem';
|
|
27
|
+
declare const GqlReviewThreadSchema: z.ZodObject<{
|
|
28
|
+
isResolved: z.ZodBoolean;
|
|
29
|
+
isOutdated: z.ZodBoolean;
|
|
30
|
+
path: z.ZodString;
|
|
31
|
+
comments: z.ZodObject<{
|
|
32
|
+
pageInfo: z.ZodObject<{
|
|
33
|
+
hasNextPage: z.ZodBoolean;
|
|
34
|
+
}, "strip", z.ZodTypeAny, {
|
|
35
|
+
hasNextPage: boolean;
|
|
36
|
+
}, {
|
|
37
|
+
hasNextPage: boolean;
|
|
38
|
+
}>;
|
|
39
|
+
nodes: z.ZodArray<z.ZodObject<{
|
|
40
|
+
author: z.ZodNullable<z.ZodObject<{
|
|
41
|
+
login: z.ZodString;
|
|
42
|
+
}, "strip", z.ZodTypeAny, {
|
|
43
|
+
login: string;
|
|
44
|
+
}, {
|
|
45
|
+
login: string;
|
|
46
|
+
}>>;
|
|
47
|
+
body: z.ZodString;
|
|
48
|
+
}, "strip", z.ZodTypeAny, {
|
|
49
|
+
body: string;
|
|
50
|
+
author: {
|
|
51
|
+
login: string;
|
|
52
|
+
} | null;
|
|
53
|
+
}, {
|
|
54
|
+
body: string;
|
|
55
|
+
author: {
|
|
56
|
+
login: string;
|
|
57
|
+
} | null;
|
|
58
|
+
}>, "many">;
|
|
59
|
+
}, "strip", z.ZodTypeAny, {
|
|
60
|
+
pageInfo: {
|
|
61
|
+
hasNextPage: boolean;
|
|
62
|
+
};
|
|
63
|
+
nodes: {
|
|
64
|
+
body: string;
|
|
65
|
+
author: {
|
|
66
|
+
login: string;
|
|
67
|
+
} | null;
|
|
68
|
+
}[];
|
|
69
|
+
}, {
|
|
70
|
+
pageInfo: {
|
|
71
|
+
hasNextPage: boolean;
|
|
72
|
+
};
|
|
73
|
+
nodes: {
|
|
74
|
+
body: string;
|
|
75
|
+
author: {
|
|
76
|
+
login: string;
|
|
77
|
+
} | null;
|
|
78
|
+
}[];
|
|
79
|
+
}>;
|
|
80
|
+
}, "strip", z.ZodTypeAny, {
|
|
81
|
+
path: string;
|
|
82
|
+
comments: {
|
|
83
|
+
pageInfo: {
|
|
84
|
+
hasNextPage: boolean;
|
|
85
|
+
};
|
|
86
|
+
nodes: {
|
|
87
|
+
body: string;
|
|
88
|
+
author: {
|
|
89
|
+
login: string;
|
|
90
|
+
} | null;
|
|
91
|
+
}[];
|
|
92
|
+
};
|
|
93
|
+
isResolved: boolean;
|
|
94
|
+
isOutdated: boolean;
|
|
95
|
+
}, {
|
|
96
|
+
path: string;
|
|
97
|
+
comments: {
|
|
98
|
+
pageInfo: {
|
|
99
|
+
hasNextPage: boolean;
|
|
100
|
+
};
|
|
101
|
+
nodes: {
|
|
102
|
+
body: string;
|
|
103
|
+
author: {
|
|
104
|
+
login: string;
|
|
105
|
+
} | null;
|
|
106
|
+
}[];
|
|
107
|
+
};
|
|
108
|
+
isResolved: boolean;
|
|
109
|
+
isOutdated: boolean;
|
|
110
|
+
}>;
|
|
111
|
+
/**
|
|
112
|
+
* Build the `reviewThreads` GraphQL query. It REQUESTS `isResolved` and
|
|
113
|
+
* `isOutdated` per thread (so core HAS the signal to decide on) — it deliberately
|
|
114
|
+
* does NOT add an `isResolved: false` server-side filter (the "surface, don't
|
|
115
|
+
* filter" ruling; the query-spy test asserts both halves). Exported for the
|
|
116
|
+
* query-spy test.
|
|
117
|
+
*/
|
|
118
|
+
export declare function buildReviewThreadsQuery(owner: string, name: string, pr: number): string;
|
|
119
|
+
/**
|
|
120
|
+
* The injectable command-exec seam. Matches the relevant part of `safeExec`'s
|
|
121
|
+
* signature; the tests pass a fake that intercepts the outgoing GraphQL query
|
|
122
|
+
* (no network). When not injected, the adapter lazy-loads `safeExec` (below).
|
|
123
|
+
*/
|
|
124
|
+
export type GhExec = (command: string, args: string[]) => string;
|
|
125
|
+
/**
|
|
126
|
+
* Map a validated GraphQL response to the surviving `ReviewThread[]` with their
|
|
127
|
+
* resolution flags surfaced. Pure — exported for the mapping test. A null author
|
|
128
|
+
* (deleted/ghost) coerces to '' (`isBotIdentity('')` is false, so it stays a
|
|
129
|
+
* human-author '' that core's empty-body / count logic handles correctly; the
|
|
130
|
+
* body still gates inclusion).
|
|
131
|
+
*/
|
|
132
|
+
export declare function mapThreads(nodes: z.infer<typeof GqlReviewThreadSchema>[]): ReviewThread[];
|
|
133
|
+
export interface ReviewThreadSourceAdapterOptions {
|
|
134
|
+
/** The repo to query, as `owner` + `name`. */
|
|
135
|
+
owner: string;
|
|
136
|
+
name: string;
|
|
137
|
+
/** Working directory for the `gh` invocation (real adapter). */
|
|
138
|
+
cwd?: string;
|
|
139
|
+
/** Injectable exec seam (tests). Defaults to a `gh`-backed `safeExec`. */
|
|
140
|
+
exec?: GhExec;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* The live `ReviewThreadSource`. Constructible + exported now (slice 5a); wiring
|
|
144
|
+
* it into the spine orchestrator's `run` command is slice 5c.
|
|
145
|
+
*/
|
|
146
|
+
export declare class ReviewThreadSourceAdapter implements ReviewThreadSource {
|
|
147
|
+
private readonly owner;
|
|
148
|
+
private readonly name;
|
|
149
|
+
private readonly cwd;
|
|
150
|
+
/** Injected exec seam (tests); when absent the default is lazy-loaded once via `execPromise`. */
|
|
151
|
+
private readonly injectedExec;
|
|
152
|
+
/**
|
|
153
|
+
* Memoized lazy-load of the default `gh`-backed exec (real runs). Memoizes the
|
|
154
|
+
* PROMISE, not the resolved value, so concurrent `fetch()` calls on one adapter
|
|
155
|
+
* instance share a single `loadDefaultExec` instead of racing a `!this.exec`
|
|
156
|
+
* guard (CR #2207 — was benign since dynamic import is idempotent, now explicit).
|
|
157
|
+
*/
|
|
158
|
+
private execPromise;
|
|
159
|
+
constructor(opts: ReviewThreadSourceAdapterOptions);
|
|
160
|
+
/** Resolve the exec seam: the injected one (tests), else the memoized lazy-loaded default. */
|
|
161
|
+
private resolveExec;
|
|
162
|
+
fetch(pr: number): Promise<FetchResult>;
|
|
163
|
+
}
|
|
164
|
+
export {};
|
|
165
|
+
//# sourceMappingURL=spine-review-thread-source.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spine-review-thread-source.d.ts","sourceRoot":"","sources":["../../src/commands/spine-review-thread-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AA6BlF,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQzB,CAAC;AAsBH;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAuBvF;AAID;;;;GAIG;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;AAoBjE;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,EAAE,GAAG,YAAY,EAAE,CAWzF;AAID,MAAM,WAAW,gCAAgC;IAC/C,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,gEAAgE;IAChE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,qBAAa,yBAA0B,YAAW,kBAAkB;IAClE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,iGAAiG;IACjG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqB;IAClD;;;;;OAKG;IACH,OAAO,CAAC,WAAW,CAA8B;gBAErC,IAAI,EAAE,gCAAgC;IAOlD,8FAA8F;IAC9F,OAAO,CAAC,WAAW;IAMb,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;CAoF9C"}
|
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ADR-111 Stage-1 Extract — the live CLI `ReviewThreadSource` adapter (slice 5a,
|
|
3
|
+
* mmnto-ai/totem#2201).
|
|
4
|
+
*
|
|
5
|
+
* Core defines the `ReviewThreadSource` port and stays network-free + LLM-free +
|
|
6
|
+
* deterministic; THIS file is the IO-at-the-edge implementation that wraps the
|
|
7
|
+
* GitHub GraphQL `reviewThreads` API behind that port. It fetches a PR's merge
|
|
8
|
+
* commit + its review threads (each carrying `isResolved` / `isOutdated`), maps
|
|
9
|
+
* them to the provider-neutral `ReviewThreadContent`, and SURFACES the per-thread
|
|
10
|
+
* resolution flags to core. It does NOT filter resolved/outdated threads — the
|
|
11
|
+
* contract-owner ruling is "surface, don't filter": core decides eligibility and
|
|
12
|
+
* drop-ledgers every rejection (§8 "every rejection ledgered"). A server-side or
|
|
13
|
+
* client-side `isResolved:false` pre-filter is FORBIDDEN here.
|
|
14
|
+
*
|
|
15
|
+
* Error contract (the discriminated `FetchResult`, §6): a per-PR failure is NEVER
|
|
16
|
+
* thrown — the orchestrator iterates the whole train slice and must not abort on
|
|
17
|
+
* one bad PR. Network / not-found → `{kind:'unreachable'}`; a malformed or
|
|
18
|
+
* unmappable payload → `{kind:'unparseable'}`. The mining run continues; the loud
|
|
19
|
+
* drop is core's job.
|
|
20
|
+
*
|
|
21
|
+
* Reuses the established `gh` CLI exec pattern (Tenet-21 — no bespoke GraphQL
|
|
22
|
+
* client). The `exec` seam is injectable so the query-spy + mapping tests run
|
|
23
|
+
* fully offline (no network, CI-locked).
|
|
24
|
+
*/
|
|
25
|
+
import { z } from 'zod';
|
|
26
|
+
// ─── Named constants ─────────────────────────────────
|
|
27
|
+
/** gh exec timeout (ms). */
|
|
28
|
+
const GH_TIMEOUT_MS = 60_000;
|
|
29
|
+
/** 10MB — handles large review-thread payloads without ENOBUFS. */
|
|
30
|
+
const GH_MAX_BUFFER = 10 * 1024 * 1024;
|
|
31
|
+
/**
|
|
32
|
+
* Page size for `reviewThreads(first:)` / `comments(first:)`. A single page is
|
|
33
|
+
* fetched; if GitHub reports more, the adapter fails LOUD (`unparseable`) rather
|
|
34
|
+
* than silently truncating the corpus (§6 no-silent-shrink). The Gate-1 corpus
|
|
35
|
+
* PRs are small reviewed PRs, comfortably within one page.
|
|
36
|
+
*
|
|
37
|
+
* TODO(#2199): paginate reviewThreads/comments past one page if a future corpus
|
|
38
|
+
* PR ever exceeds PAGE_SIZE.
|
|
39
|
+
*/
|
|
40
|
+
const PAGE_SIZE = 100;
|
|
41
|
+
// ─── GraphQL response schema (Zod at the IO boundary only) ───────────────────
|
|
42
|
+
const PageInfoSchema = z.object({ hasNextPage: z.boolean() });
|
|
43
|
+
const GqlCommentSchema = z.object({
|
|
44
|
+
// `author` is null for deleted/ghost accounts — coerce downstream to ''.
|
|
45
|
+
author: z.object({ login: z.string() }).nullable(),
|
|
46
|
+
body: z.string(),
|
|
47
|
+
});
|
|
48
|
+
const GqlReviewThreadSchema = z.object({
|
|
49
|
+
isResolved: z.boolean(),
|
|
50
|
+
isOutdated: z.boolean(),
|
|
51
|
+
path: z.string(),
|
|
52
|
+
comments: z.object({
|
|
53
|
+
pageInfo: PageInfoSchema,
|
|
54
|
+
nodes: z.array(GqlCommentSchema),
|
|
55
|
+
}),
|
|
56
|
+
});
|
|
57
|
+
const GqlResponseSchema = z.object({
|
|
58
|
+
data: z.object({
|
|
59
|
+
repository: z
|
|
60
|
+
.object({
|
|
61
|
+
pullRequest: z
|
|
62
|
+
.object({
|
|
63
|
+
mergeCommit: z.object({ oid: z.string() }).nullable(),
|
|
64
|
+
reviewThreads: z.object({
|
|
65
|
+
pageInfo: PageInfoSchema,
|
|
66
|
+
nodes: z.array(GqlReviewThreadSchema),
|
|
67
|
+
}),
|
|
68
|
+
})
|
|
69
|
+
.nullable(),
|
|
70
|
+
})
|
|
71
|
+
.nullable(),
|
|
72
|
+
}),
|
|
73
|
+
});
|
|
74
|
+
// ─── Query construction (structurally requests isResolved + isOutdated) ──────
|
|
75
|
+
/**
|
|
76
|
+
* Build the `reviewThreads` GraphQL query. It REQUESTS `isResolved` and
|
|
77
|
+
* `isOutdated` per thread (so core HAS the signal to decide on) — it deliberately
|
|
78
|
+
* does NOT add an `isResolved: false` server-side filter (the "surface, don't
|
|
79
|
+
* filter" ruling; the query-spy test asserts both halves). Exported for the
|
|
80
|
+
* query-spy test.
|
|
81
|
+
*/
|
|
82
|
+
export function buildReviewThreadsQuery(owner, name, pr) {
|
|
83
|
+
return `query {
|
|
84
|
+
repository(owner: ${JSON.stringify(owner)}, name: ${JSON.stringify(name)}) {
|
|
85
|
+
pullRequest(number: ${pr}) {
|
|
86
|
+
mergeCommit { oid }
|
|
87
|
+
reviewThreads(first: ${PAGE_SIZE}) {
|
|
88
|
+
pageInfo { hasNextPage }
|
|
89
|
+
nodes {
|
|
90
|
+
isResolved
|
|
91
|
+
isOutdated
|
|
92
|
+
path
|
|
93
|
+
comments(first: ${PAGE_SIZE}) {
|
|
94
|
+
pageInfo { hasNextPage }
|
|
95
|
+
nodes {
|
|
96
|
+
author { login }
|
|
97
|
+
body
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}`;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Lazy-load `safeExec` and bind it to a `gh`-backed `GhExec` for `cwd`. The
|
|
108
|
+
* dynamic import keeps the heavy core barrel off the CLI startup path (the
|
|
109
|
+
* spine-windtunnel.ts convention).
|
|
110
|
+
*/
|
|
111
|
+
async function loadDefaultExec(cwd) {
|
|
112
|
+
const { safeExec } = await import('@mmnto/totem');
|
|
113
|
+
return (command, args) => safeExec(command, args, {
|
|
114
|
+
cwd,
|
|
115
|
+
timeout: GH_TIMEOUT_MS,
|
|
116
|
+
maxBuffer: GH_MAX_BUFFER,
|
|
117
|
+
env: { ...process.env, GH_PROMPT_DISABLED: '1' },
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
// ─── Mapping ─────────────────────────────────────────
|
|
121
|
+
/**
|
|
122
|
+
* Map a validated GraphQL response to the surviving `ReviewThread[]` with their
|
|
123
|
+
* resolution flags surfaced. Pure — exported for the mapping test. A null author
|
|
124
|
+
* (deleted/ghost) coerces to '' (`isBotIdentity('')` is false, so it stays a
|
|
125
|
+
* human-author '' that core's empty-body / count logic handles correctly; the
|
|
126
|
+
* body still gates inclusion).
|
|
127
|
+
*/
|
|
128
|
+
export function mapThreads(nodes) {
|
|
129
|
+
return nodes.map((t) => ({
|
|
130
|
+
path: t.path,
|
|
131
|
+
// SURFACE the flags — never filter on them here (core decides).
|
|
132
|
+
isResolved: t.isResolved,
|
|
133
|
+
isOutdated: t.isOutdated,
|
|
134
|
+
comments: t.comments.nodes.map((c) => ({
|
|
135
|
+
author: c.author?.login ?? '',
|
|
136
|
+
body: c.body,
|
|
137
|
+
})),
|
|
138
|
+
}));
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* The live `ReviewThreadSource`. Constructible + exported now (slice 5a); wiring
|
|
142
|
+
* it into the spine orchestrator's `run` command is slice 5c.
|
|
143
|
+
*/
|
|
144
|
+
export class ReviewThreadSourceAdapter {
|
|
145
|
+
owner;
|
|
146
|
+
name;
|
|
147
|
+
cwd;
|
|
148
|
+
/** Injected exec seam (tests); when absent the default is lazy-loaded once via `execPromise`. */
|
|
149
|
+
injectedExec;
|
|
150
|
+
/**
|
|
151
|
+
* Memoized lazy-load of the default `gh`-backed exec (real runs). Memoizes the
|
|
152
|
+
* PROMISE, not the resolved value, so concurrent `fetch()` calls on one adapter
|
|
153
|
+
* instance share a single `loadDefaultExec` instead of racing a `!this.exec`
|
|
154
|
+
* guard (CR #2207 — was benign since dynamic import is idempotent, now explicit).
|
|
155
|
+
*/
|
|
156
|
+
execPromise;
|
|
157
|
+
constructor(opts) {
|
|
158
|
+
this.owner = opts.owner;
|
|
159
|
+
this.name = opts.name;
|
|
160
|
+
this.cwd = opts.cwd ?? process.cwd();
|
|
161
|
+
this.injectedExec = opts.exec;
|
|
162
|
+
}
|
|
163
|
+
/** Resolve the exec seam: the injected one (tests), else the memoized lazy-loaded default. */
|
|
164
|
+
resolveExec() {
|
|
165
|
+
if (this.injectedExec)
|
|
166
|
+
return Promise.resolve(this.injectedExec);
|
|
167
|
+
this.execPromise ??= loadDefaultExec(this.cwd);
|
|
168
|
+
return this.execPromise;
|
|
169
|
+
}
|
|
170
|
+
async fetch(pr) {
|
|
171
|
+
const query = buildReviewThreadsQuery(this.owner, this.name, pr);
|
|
172
|
+
const exec = await this.resolveExec();
|
|
173
|
+
// totem-context: this catch does NOT silently degrade — it is the §6 port
|
|
174
|
+
// contract. A per-PR IO failure (network/404/auth) is reified into the
|
|
175
|
+
// discriminated FetchResult ('unreachable') and surfaced LOUDLY to core,
|
|
176
|
+
// which drop-ledgers it (a creditable FM-i drop). Re-throwing would abort the
|
|
177
|
+
// whole mining run on one bad PR, violating the orchestrator's train-slice
|
|
178
|
+
// sweep. The loud-fail lives in core's ledger, not a thrown exception.
|
|
179
|
+
let raw;
|
|
180
|
+
try {
|
|
181
|
+
raw = exec('gh', ['api', 'graphql', '-f', `query=${query}`]);
|
|
182
|
+
// totem-context: intentional §6 port contract — reify IO failure into the discriminated FetchResult, surfaced loudly to core's drop ledger; never swallowed.
|
|
183
|
+
}
|
|
184
|
+
catch (err) {
|
|
185
|
+
return {
|
|
186
|
+
kind: 'unreachable',
|
|
187
|
+
detail: `gh graphql fetch failed for PR #${pr}: ${err instanceof Error ? err.message : String(err)}`,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
// totem-context: intentional — same §6 port contract as above. A malformed /
|
|
191
|
+
// unmappable payload is reified into FetchResult ('unparseable', a route
|
|
192
|
+
// distinct from 'unreachable') and surfaced LOUDLY to core for drop-ledgering,
|
|
193
|
+
// not swallowed. Re-throwing would abort the orchestrator's whole train-slice
|
|
194
|
+
// sweep on one bad payload.
|
|
195
|
+
let parsed;
|
|
196
|
+
try {
|
|
197
|
+
parsed = GqlResponseSchema.parse(JSON.parse(raw));
|
|
198
|
+
// totem-context: intentional §6 port contract — reify the unparseable payload into the discriminated FetchResult, surfaced loudly to core's drop ledger; never swallowed.
|
|
199
|
+
}
|
|
200
|
+
catch (err) {
|
|
201
|
+
return {
|
|
202
|
+
kind: 'unparseable',
|
|
203
|
+
detail: `review-thread payload unparseable for PR #${pr}: ${err instanceof Error ? err.message : String(err)}`,
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
// Distinguish a null repository (repo inaccessible / token lacks scope) from a
|
|
207
|
+
// null pullRequest (PR genuinely not found): both are `unreachable`, but they
|
|
208
|
+
// need different diagnostic leads, so the detail strings differ (CR + Greptile
|
|
209
|
+
// #2207 — a shared `!pull` guard would send a token-scope failure chasing a
|
|
210
|
+
// non-existent PR).
|
|
211
|
+
const repo = parsed.data.repository;
|
|
212
|
+
if (!repo) {
|
|
213
|
+
return {
|
|
214
|
+
kind: 'unreachable',
|
|
215
|
+
detail: `repository ${this.owner}/${this.name} not found or inaccessible (check owner/name + token scope) while fetching PR #${pr}`,
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
const pull = repo.pullRequest;
|
|
219
|
+
if (!pull) {
|
|
220
|
+
return { kind: 'unreachable', detail: `PR #${pr} not found in ${this.owner}/${this.name}` };
|
|
221
|
+
}
|
|
222
|
+
// A merged train PR MUST have a merge commit (the provenance SHA core needs).
|
|
223
|
+
// Its absence is an unusable payload, not a fetch failure → 'unparseable'.
|
|
224
|
+
const mergeCommitSha = pull.mergeCommit?.oid?.toLowerCase();
|
|
225
|
+
if (!mergeCommitSha) {
|
|
226
|
+
return { kind: 'unparseable', detail: `PR #${pr} has no merge commit oid` };
|
|
227
|
+
}
|
|
228
|
+
// No-silent-shrink (§6): if the payload was paginated past one page, fail
|
|
229
|
+
// LOUD rather than mining a partial thread set.
|
|
230
|
+
if (pull.reviewThreads.pageInfo.hasNextPage) {
|
|
231
|
+
return {
|
|
232
|
+
kind: 'unparseable',
|
|
233
|
+
detail: `PR #${pr} has more than ${PAGE_SIZE} review threads (pagination unsupported)`,
|
|
234
|
+
};
|
|
235
|
+
}
|
|
236
|
+
for (const t of pull.reviewThreads.nodes) {
|
|
237
|
+
if (t.comments.pageInfo.hasNextPage) {
|
|
238
|
+
return {
|
|
239
|
+
kind: 'unparseable',
|
|
240
|
+
detail: `PR #${pr} has a review thread with more than ${PAGE_SIZE} comments (pagination unsupported)`,
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
const threads = mapThreads(pull.reviewThreads.nodes);
|
|
245
|
+
return {
|
|
246
|
+
kind: 'ok',
|
|
247
|
+
content: { pr, mergeCommitSha, threads },
|
|
248
|
+
};
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
//# sourceMappingURL=spine-review-thread-source.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spine-review-thread-source.js","sourceRoot":"","sources":["../../src/commands/spine-review-thread-source.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spine-review-thread-source.test.d.ts","sourceRoot":"","sources":["../../src/commands/spine-review-thread-source.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,284 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { buildReviewThreadsQuery, mapThreads, ReviewThreadSourceAdapter, } from './spine-review-thread-source.js';
|
|
3
|
+
// ─── Helpers ─────────────────────────────────────────
|
|
4
|
+
const OWNER = 'mmnto-ai';
|
|
5
|
+
const NAME = 'totem';
|
|
6
|
+
const MERGE_OID = 'a'.repeat(40);
|
|
7
|
+
/** A well-formed GraphQL response payload (string, as `gh` returns). */
|
|
8
|
+
function okPayload(opts) {
|
|
9
|
+
const threads = (opts?.threads ?? []).map((t) => ({
|
|
10
|
+
isResolved: t.isResolved ?? false,
|
|
11
|
+
isOutdated: t.isOutdated ?? false,
|
|
12
|
+
path: t.path ?? 'packages/core/src/x.ts',
|
|
13
|
+
comments: {
|
|
14
|
+
pageInfo: { hasNextPage: t.commentsHasNext ?? false },
|
|
15
|
+
nodes: (t.comments ?? [{ login: 'jane', body: 'a note' }]).map((c) => ({
|
|
16
|
+
author: c.login === null ? null : { login: c.login },
|
|
17
|
+
body: c.body,
|
|
18
|
+
})),
|
|
19
|
+
},
|
|
20
|
+
}));
|
|
21
|
+
return JSON.stringify({
|
|
22
|
+
data: {
|
|
23
|
+
repository: {
|
|
24
|
+
pullRequest: {
|
|
25
|
+
mergeCommit: opts?.mergeOid === null ? null : { oid: opts?.mergeOid ?? MERGE_OID },
|
|
26
|
+
reviewThreads: {
|
|
27
|
+
pageInfo: { hasNextPage: opts?.threadsHasNext ?? false },
|
|
28
|
+
nodes: threads,
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
/** An exec stub that records the args it was called with and returns a fixed payload. */
|
|
36
|
+
function stubExec(payload) {
|
|
37
|
+
const calls = [];
|
|
38
|
+
const fn = ((_command, args) => {
|
|
39
|
+
calls.push(args);
|
|
40
|
+
return payload;
|
|
41
|
+
});
|
|
42
|
+
fn.calls = calls;
|
|
43
|
+
return fn;
|
|
44
|
+
}
|
|
45
|
+
// ─── Query construction (the reframed agy fold-2: query-spy) ─────────────────
|
|
46
|
+
describe('buildReviewThreadsQuery', () => {
|
|
47
|
+
it('REQUESTS isResolved and isOutdated on reviewThreads (so core has the signal)', () => {
|
|
48
|
+
const q = buildReviewThreadsQuery(OWNER, NAME, 42);
|
|
49
|
+
expect(q).toContain('reviewThreads');
|
|
50
|
+
expect(q).toContain('isResolved');
|
|
51
|
+
expect(q).toContain('isOutdated');
|
|
52
|
+
expect(q).toContain('mergeCommit');
|
|
53
|
+
});
|
|
54
|
+
it('does NOT pre-filter with isResolved:false — surface, not filter (contract B)', () => {
|
|
55
|
+
const q = buildReviewThreadsQuery(OWNER, NAME, 42);
|
|
56
|
+
// The "surface, don't filter" ruling: no server-side resolution filter.
|
|
57
|
+
expect(q).not.toMatch(/isResolved\s*:\s*false/);
|
|
58
|
+
// requestArguments use parentheses, e.g. reviewThreads(first: 100) — there
|
|
59
|
+
// must be no boolean argument predicate on isResolved.
|
|
60
|
+
expect(q).not.toMatch(/reviewThreads\([^)]*isResolved/);
|
|
61
|
+
});
|
|
62
|
+
it('embeds owner/name as JSON-escaped strings and the numeric PR', () => {
|
|
63
|
+
const q = buildReviewThreadsQuery(OWNER, NAME, 7);
|
|
64
|
+
expect(q).toContain('owner: "mmnto-ai"');
|
|
65
|
+
expect(q).toContain('name: "totem"');
|
|
66
|
+
expect(q).toContain('pullRequest(number: 7)');
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
describe('ReviewThreadSourceAdapter — query-spy through fetch', () => {
|
|
70
|
+
it('passes a query that requests the resolution fields to gh', async () => {
|
|
71
|
+
const exec = stubExec(okPayload({ threads: [{}] }));
|
|
72
|
+
const adapter = new ReviewThreadSourceAdapter({ owner: OWNER, name: NAME, exec });
|
|
73
|
+
await adapter.fetch(99);
|
|
74
|
+
expect(exec.calls).toHaveLength(1);
|
|
75
|
+
const args = exec.calls[0];
|
|
76
|
+
expect(args[0]).toBe('api');
|
|
77
|
+
expect(args[1]).toBe('graphql');
|
|
78
|
+
const queryArg = args.find((a) => a.startsWith('query='));
|
|
79
|
+
expect(queryArg).toBeDefined();
|
|
80
|
+
expect(queryArg).toContain('isResolved');
|
|
81
|
+
expect(queryArg).toContain('isOutdated');
|
|
82
|
+
expect(queryArg).not.toMatch(/reviewThreads\([^)]*isResolved/);
|
|
83
|
+
});
|
|
84
|
+
});
|
|
85
|
+
// ─── Mapping ─────────────────────────────────────────
|
|
86
|
+
describe('mapThreads', () => {
|
|
87
|
+
it('surfaces per-thread isResolved/isOutdated flags (does not filter)', () => {
|
|
88
|
+
const mapped = mapThreads([
|
|
89
|
+
{
|
|
90
|
+
isResolved: true,
|
|
91
|
+
isOutdated: false,
|
|
92
|
+
path: 'a.ts',
|
|
93
|
+
comments: {
|
|
94
|
+
pageInfo: { hasNextPage: false },
|
|
95
|
+
nodes: [{ author: { login: 'jane' }, body: 'x' }],
|
|
96
|
+
},
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
isResolved: false,
|
|
100
|
+
isOutdated: true,
|
|
101
|
+
path: 'b.ts',
|
|
102
|
+
comments: {
|
|
103
|
+
pageInfo: { hasNextPage: false },
|
|
104
|
+
nodes: [{ author: { login: 'john' }, body: 'y' }],
|
|
105
|
+
},
|
|
106
|
+
},
|
|
107
|
+
]);
|
|
108
|
+
// BOTH threads are present — nothing filtered out (surface, not filter).
|
|
109
|
+
expect(mapped).toHaveLength(2);
|
|
110
|
+
expect(mapped[0]).toMatchObject({ path: 'a.ts', isResolved: true, isOutdated: false });
|
|
111
|
+
expect(mapped[1]).toMatchObject({ path: 'b.ts', isResolved: false, isOutdated: true });
|
|
112
|
+
});
|
|
113
|
+
it('coerces a null author (deleted/ghost) to an empty login', () => {
|
|
114
|
+
const mapped = mapThreads([
|
|
115
|
+
{
|
|
116
|
+
isResolved: false,
|
|
117
|
+
isOutdated: false,
|
|
118
|
+
path: 'a.ts',
|
|
119
|
+
comments: {
|
|
120
|
+
pageInfo: { hasNextPage: false },
|
|
121
|
+
nodes: [{ author: null, body: 'ghost note' }],
|
|
122
|
+
},
|
|
123
|
+
},
|
|
124
|
+
]);
|
|
125
|
+
expect(mapped[0].comments[0].author).toBe('');
|
|
126
|
+
expect(mapped[0].comments[0].body).toBe('ghost note');
|
|
127
|
+
});
|
|
128
|
+
});
|
|
129
|
+
// ─── fetch() — payload → ReviewThreadContent + failure mapping ────────────────
|
|
130
|
+
describe('ReviewThreadSourceAdapter.fetch — success mapping', () => {
|
|
131
|
+
it('maps a GraphQL payload to ReviewThreadContent with per-thread flags', async () => {
|
|
132
|
+
const exec = stubExec(okPayload({
|
|
133
|
+
mergeOid: MERGE_OID,
|
|
134
|
+
threads: [
|
|
135
|
+
{
|
|
136
|
+
isResolved: false,
|
|
137
|
+
isOutdated: false,
|
|
138
|
+
path: 'x.ts',
|
|
139
|
+
comments: [{ login: 'jane', body: 'eligible' }],
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
isResolved: true,
|
|
143
|
+
isOutdated: false,
|
|
144
|
+
path: 'y.ts',
|
|
145
|
+
comments: [{ login: 'john', body: 'resolved' }],
|
|
146
|
+
},
|
|
147
|
+
],
|
|
148
|
+
}));
|
|
149
|
+
const adapter = new ReviewThreadSourceAdapter({ owner: OWNER, name: NAME, exec });
|
|
150
|
+
const result = await adapter.fetch(123);
|
|
151
|
+
expect(result.kind).toBe('ok');
|
|
152
|
+
if (result.kind !== 'ok')
|
|
153
|
+
return;
|
|
154
|
+
expect(result.content.pr).toBe(123);
|
|
155
|
+
expect(result.content.mergeCommitSha).toBe(MERGE_OID);
|
|
156
|
+
expect(result.content.threads).toHaveLength(2);
|
|
157
|
+
expect(result.content.threads[0]).toMatchObject({ isResolved: false, isOutdated: false });
|
|
158
|
+
expect(result.content.threads[1]).toMatchObject({ isResolved: true, isOutdated: false });
|
|
159
|
+
});
|
|
160
|
+
it('lowercases the merge commit oid (provenance canonical form)', async () => {
|
|
161
|
+
const exec = stubExec(okPayload({ mergeOid: 'A'.repeat(40), threads: [{}] }));
|
|
162
|
+
const adapter = new ReviewThreadSourceAdapter({ owner: OWNER, name: NAME, exec });
|
|
163
|
+
const result = await adapter.fetch(1);
|
|
164
|
+
expect(result.kind).toBe('ok');
|
|
165
|
+
if (result.kind !== 'ok')
|
|
166
|
+
return;
|
|
167
|
+
expect(result.content.mergeCommitSha).toBe('a'.repeat(40));
|
|
168
|
+
});
|
|
169
|
+
});
|
|
170
|
+
describe('ReviewThreadSourceAdapter.fetch — failure mapping (§6 discriminated)', () => {
|
|
171
|
+
it('a thrown gh error (network/404/auth) maps to unreachable, never throws', async () => {
|
|
172
|
+
// totem-context: this `new Error` SIMULATES an external `gh`/network throw the
|
|
173
|
+
// adapter must catch — it is the third-party error under test, not a
|
|
174
|
+
// Totem-originated one, so it deliberately carries no [Totem Error] prefix.
|
|
175
|
+
const throwingExec = () => {
|
|
176
|
+
throw new Error('gh: HTTP 404: Not Found');
|
|
177
|
+
};
|
|
178
|
+
const adapter = new ReviewThreadSourceAdapter({ owner: OWNER, name: NAME, exec: throwingExec });
|
|
179
|
+
const result = await adapter.fetch(404);
|
|
180
|
+
expect(result.kind).toBe('unreachable');
|
|
181
|
+
if (result.kind === 'unreachable')
|
|
182
|
+
expect(result.detail).toContain('404');
|
|
183
|
+
});
|
|
184
|
+
it('invalid JSON maps to unparseable, never throws', async () => {
|
|
185
|
+
const adapter = new ReviewThreadSourceAdapter({
|
|
186
|
+
owner: OWNER,
|
|
187
|
+
name: NAME,
|
|
188
|
+
exec: stubExec('not json at all'),
|
|
189
|
+
});
|
|
190
|
+
const result = await adapter.fetch(1);
|
|
191
|
+
expect(result.kind).toBe('unparseable');
|
|
192
|
+
});
|
|
193
|
+
it('a schema-mismatched payload maps to unparseable', async () => {
|
|
194
|
+
const adapter = new ReviewThreadSourceAdapter({
|
|
195
|
+
owner: OWNER,
|
|
196
|
+
name: NAME,
|
|
197
|
+
exec: stubExec(JSON.stringify({ data: { repository: { pullRequest: { wrong: true } } } })),
|
|
198
|
+
});
|
|
199
|
+
const result = await adapter.fetch(1);
|
|
200
|
+
expect(result.kind).toBe('unparseable');
|
|
201
|
+
});
|
|
202
|
+
it('a missing pullRequest maps to unreachable (PR not found)', async () => {
|
|
203
|
+
const adapter = new ReviewThreadSourceAdapter({
|
|
204
|
+
owner: OWNER,
|
|
205
|
+
name: NAME,
|
|
206
|
+
exec: stubExec(JSON.stringify({ data: { repository: { pullRequest: null } } })),
|
|
207
|
+
});
|
|
208
|
+
const result = await adapter.fetch(1);
|
|
209
|
+
expect(result.kind).toBe('unreachable');
|
|
210
|
+
// PR-not-found detail names the PR, not the repository (CR + Greptile #2207).
|
|
211
|
+
if (result.kind === 'unreachable')
|
|
212
|
+
expect(result.detail).toContain('not found in');
|
|
213
|
+
});
|
|
214
|
+
it('a null repository (inaccessible / token scope) maps to unreachable with a repo-specific detail', async () => {
|
|
215
|
+
const adapter = new ReviewThreadSourceAdapter({
|
|
216
|
+
owner: OWNER,
|
|
217
|
+
name: NAME,
|
|
218
|
+
exec: stubExec(JSON.stringify({ data: { repository: null } })),
|
|
219
|
+
});
|
|
220
|
+
const result = await adapter.fetch(1);
|
|
221
|
+
expect(result.kind).toBe('unreachable');
|
|
222
|
+
// Distinct from PR-not-found: the detail leads with the repository, not the PR
|
|
223
|
+
// (CR + Greptile #2207 — don't send a token-scope failure chasing a missing PR).
|
|
224
|
+
if (result.kind === 'unreachable') {
|
|
225
|
+
expect(result.detail).toContain('repository');
|
|
226
|
+
expect(result.detail).toContain('token scope');
|
|
227
|
+
}
|
|
228
|
+
});
|
|
229
|
+
it('a null merge commit (unmerged / missing) maps to unparseable', async () => {
|
|
230
|
+
const adapter = new ReviewThreadSourceAdapter({
|
|
231
|
+
owner: OWNER,
|
|
232
|
+
name: NAME,
|
|
233
|
+
exec: stubExec(okPayload({ mergeOid: null, threads: [{}] })),
|
|
234
|
+
});
|
|
235
|
+
const result = await adapter.fetch(1);
|
|
236
|
+
expect(result.kind).toBe('unparseable');
|
|
237
|
+
if (result.kind === 'unparseable')
|
|
238
|
+
expect(result.detail).toContain('merge commit');
|
|
239
|
+
});
|
|
240
|
+
it('paginated review threads fail loud as unparseable (no silent shrink)', async () => {
|
|
241
|
+
const adapter = new ReviewThreadSourceAdapter({
|
|
242
|
+
owner: OWNER,
|
|
243
|
+
name: NAME,
|
|
244
|
+
exec: stubExec(okPayload({ threads: [{}], threadsHasNext: true })),
|
|
245
|
+
});
|
|
246
|
+
const result = await adapter.fetch(1);
|
|
247
|
+
expect(result.kind).toBe('unparseable');
|
|
248
|
+
if (result.kind === 'unparseable')
|
|
249
|
+
expect(result.detail).toContain('review threads');
|
|
250
|
+
});
|
|
251
|
+
it('paginated comments within a thread fail loud as unparseable', async () => {
|
|
252
|
+
const adapter = new ReviewThreadSourceAdapter({
|
|
253
|
+
owner: OWNER,
|
|
254
|
+
name: NAME,
|
|
255
|
+
exec: stubExec(okPayload({ threads: [{ commentsHasNext: true }] })),
|
|
256
|
+
});
|
|
257
|
+
const result = await adapter.fetch(1);
|
|
258
|
+
expect(result.kind).toBe('unparseable');
|
|
259
|
+
if (result.kind === 'unparseable')
|
|
260
|
+
expect(result.detail).toContain('comments');
|
|
261
|
+
});
|
|
262
|
+
});
|
|
263
|
+
describe('ReviewThreadSourceAdapter.fetch — determinism', () => {
|
|
264
|
+
it('identical payload → identical FetchResult', async () => {
|
|
265
|
+
const payload = okPayload({
|
|
266
|
+
threads: [
|
|
267
|
+
{ isResolved: false, comments: [{ login: 'jane', body: 'a' }] },
|
|
268
|
+
{ isResolved: true, comments: [{ login: 'john', body: 'b' }] },
|
|
269
|
+
],
|
|
270
|
+
});
|
|
271
|
+
const a = await new ReviewThreadSourceAdapter({
|
|
272
|
+
owner: OWNER,
|
|
273
|
+
name: NAME,
|
|
274
|
+
exec: stubExec(payload),
|
|
275
|
+
}).fetch(5);
|
|
276
|
+
const b = await new ReviewThreadSourceAdapter({
|
|
277
|
+
owner: OWNER,
|
|
278
|
+
name: NAME,
|
|
279
|
+
exec: stubExec(payload),
|
|
280
|
+
}).fetch(5);
|
|
281
|
+
expect(a).toEqual(b);
|
|
282
|
+
});
|
|
283
|
+
});
|
|
284
|
+
//# sourceMappingURL=spine-review-thread-source.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spine-review-thread-source.test.js","sourceRoot":"","sources":["../../src/commands/spine-review-thread-source.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spine-windtunnel.d.ts","sourceRoot":"","sources":["../../src/commands/spine-windtunnel.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAuB,cAAc,EAAE,MAAM,cAAc,CAAC;AAShF,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAoFtE;AAID,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAmKhE;AAID,KAAK,UAAU,GAAG,cAAc,cAAc,EAAE,QAAQ,CAAC;AAEzD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,UAAU,GACnB,OAAO,CAWT;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,UAAU,GACnB,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAkB1C;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,IAAI,CA0DhG;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,EAAE,EACrB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,GACnB,MAAM,GAAG,IAAI,CA+Cf;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,EAAE,EACrB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,GACnB,IAAI,CAmBN;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,GACnB,OAAO,CAAC,IAAI,CAAC,CAqGf;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,UAAU,EACpB,OAAO,EAAE;IACP,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IAClD,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACrD,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;CAC5C,GACA,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"spine-windtunnel.d.ts","sourceRoot":"","sources":["../../src/commands/spine-windtunnel.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAuB,cAAc,EAAE,MAAM,cAAc,CAAC;AAShF,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAoFtE;AAID,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAmKhE;AAID,KAAK,UAAU,GAAG,cAAc,cAAc,EAAE,QAAQ,CAAC;AAEzD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,UAAU,GACnB,OAAO,CAWT;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,UAAU,GACnB,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAkB1C;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,IAAI,CA0DhG;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,EAAE,EACrB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,GACnB,MAAM,GAAG,IAAI,CA+Cf;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,EAAE,EACrB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,GACnB,IAAI,CAmBN;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,GACnB,OAAO,CAAC,IAAI,CAAC,CAqGf;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,UAAU,EACpB,OAAO,EAAE;IACP,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IAClD,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACrD,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;CAC5C,GACA,MAAM,EAAE,CA+DV"}
|
|
@@ -452,11 +452,20 @@ export function enumeratePrMetas(asOfCommit, lcDir, safeExec, helpers) {
|
|
|
452
452
|
const R = '\x1e'; // record separator (LEADS each commit so its trailing file list stays in-record)
|
|
453
453
|
// One `git log --name-only` call — the changed files trail each commit's format
|
|
454
454
|
// block within the same record, avoiding an N+1 `git diff-tree` spawn per commit.
|
|
455
|
+
// `--topo-order` makes the emission order ANCESTRY (topological), not commit-date:
|
|
456
|
+
// a `bounded` window's "most recent N qualifying PRs" must mean N-most-recent-by-
|
|
457
|
+
// ancestry, never by timestamp (ADR-110 §6 ancestry-not-timestamp; strategy-claude
|
|
458
|
+
// 2026-06-18 ruling). Commit dates are non-monotonic and rewritable (rebases, clock
|
|
459
|
+
// skew), so date order would make the window's membership non-deterministic; the
|
|
460
|
+
// reachable SET is unchanged either way, only the order the window slices on. The
|
|
461
|
+
// certifying phase runs `window: all` (order-irrelevant) today, so this hardens the
|
|
462
|
+
// `bounded` path against a future non-linear merge or date-skewed history.
|
|
455
463
|
// `--end-of-options` guards asOfCommit from being parsed as an option even if a
|
|
456
464
|
// future caller passes an unvalidated ref (defense-in-depth; the lock schema
|
|
457
465
|
// already constrains asOfCommit to a 40-hex SHA, and safeExec uses no shell).
|
|
458
466
|
const raw = safeExec('git', [
|
|
459
467
|
'log',
|
|
468
|
+
'--topo-order',
|
|
460
469
|
'--name-only',
|
|
461
470
|
`--format=${R}%H${F}%an <%ae>${F}%s${F}%b${F}`,
|
|
462
471
|
'--end-of-options',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spine-windtunnel.js","sourceRoot":"","sources":["../../src/commands/spine-windtunnel.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spine-windtunnel.js","sourceRoot":"","sources":["../../src/commands/spine-windtunnel.ts"],"names":[],"mappings":"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"}
|
|
@@ -358,6 +358,25 @@ describe('enumeratePrMetas (mocked git)', () => {
|
|
|
358
358
|
'packages/core/src/b.ts',
|
|
359
359
|
]); // no \r leaked
|
|
360
360
|
});
|
|
361
|
+
it('enumerates in ANCESTRY order via `git log --topo-order` (§6 ancestry-not-timestamp)', () => {
|
|
362
|
+
// A `bounded` window takes "the N most recent qualifying PRs" off the FRONT of
|
|
363
|
+
// this list, so the git emission order must be ancestry (topological), never
|
|
364
|
+
// commit-date — dates are non-monotonic/rewritable and would make the window's
|
|
365
|
+
// membership non-deterministic (ADR-110 §6; strategy-claude 2026-06-18 ruling).
|
|
366
|
+
let logArgs;
|
|
367
|
+
const capturing = ((file, args) => {
|
|
368
|
+
if (file === 'git' && args[0] === 'log') {
|
|
369
|
+
logArgs = args;
|
|
370
|
+
return buildLog(SCENARIO_RECORDS);
|
|
371
|
+
}
|
|
372
|
+
throw new Error(`unexpected git call: ${file} ${args.join(' ')}`);
|
|
373
|
+
});
|
|
374
|
+
enumeratePrMetas('aof', 'lc', capturing, HELPERS);
|
|
375
|
+
expect(logArgs).toContain('--topo-order');
|
|
376
|
+
// Must be a walk option (before the `--end-of-options`/ref boundary) so it
|
|
377
|
+
// actually governs ordering rather than being parsed as a pathspec.
|
|
378
|
+
expect(logArgs.indexOf('--topo-order')).toBeLessThan(logArgs.indexOf('--end-of-options'));
|
|
379
|
+
});
|
|
361
380
|
it('propagates a malformed trailing ref as a throw (never silent)', () => {
|
|
362
381
|
const records = [
|
|
363
382
|
{ sha: sha40(1), author: 'Jane <j@x.com>', subject: 'bad (#abc)', files: ['src/x.ts'] },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spine-windtunnel.test.js","sourceRoot":"","sources":["../../src/commands/spine-windtunnel.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spine-windtunnel.test.js","sourceRoot":"","sources":["../../src/commands/spine-windtunnel.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mmnto/cli",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.68.0",
|
|
4
4
|
"description": "CLI for Totem — AI persistent memory and context layer",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"engines": {
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"smol-toml": "^1.6.1",
|
|
29
29
|
"yaml": "^2.4.0",
|
|
30
30
|
"zod": "^3.24.0",
|
|
31
|
-
"@mmnto/totem": "1.
|
|
31
|
+
"@mmnto/totem": "1.68.0"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@anthropic-ai/sdk": "^0.98.0",
|