@sentropic/track 0.8.0 → 0.10.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/cli/index.d.ts +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +144 -53
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/resolve.d.ts +28 -0
- package/dist/cli/resolve.d.ts.map +1 -0
- package/dist/cli/resolve.js +63 -0
- package/dist/cli/resolve.js.map +1 -0
- package/dist/events/store.d.ts +8 -0
- package/dist/events/store.d.ts.map +1 -1
- package/dist/events/store.js +59 -3
- package/dist/events/store.js.map +1 -1
- package/dist/events/types.d.ts +1 -1
- package/dist/events/types.d.ts.map +1 -1
- package/dist/events/types.js +4 -0
- package/dist/events/types.js.map +1 -1
- package/dist/ingest/contract.d.ts +2 -1
- package/dist/ingest/contract.d.ts.map +1 -1
- package/dist/ingest/contract.js +10 -0
- package/dist/ingest/contract.js.map +1 -1
- package/dist/ingest/ingest.d.ts.map +1 -1
- package/dist/ingest/ingest.js +12 -0
- package/dist/ingest/ingest.js.map +1 -1
- package/dist/ingest/map.d.ts.map +1 -1
- package/dist/ingest/map.js +4 -0
- package/dist/ingest/map.js.map +1 -1
- package/dist/mcp/cli.js +21 -2
- package/dist/mcp/cli.js.map +1 -1
- package/dist/mcp/server.d.ts +4 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +5 -0
- package/dist/mcp/server.js.map +1 -1
- package/dist/model/item.d.ts +9 -0
- package/dist/model/item.d.ts.map +1 -1
- package/dist/model/item.js.map +1 -1
- package/dist/read/commands.d.ts +4 -1
- package/dist/read/commands.d.ts.map +1 -1
- package/dist/read/commands.js +14 -3
- package/dist/read/commands.js.map +1 -1
- package/dist/read/contract.d.ts +2 -2
- package/dist/read/contract.js +1 -1
- package/dist/read/contract.js.map +1 -1
- package/dist/report/build.d.ts +9 -1
- package/dist/report/build.d.ts.map +1 -1
- package/dist/report/build.js +26 -2
- package/dist/report/build.js.map +1 -1
- package/dist/report/format.d.ts +10 -0
- package/dist/report/format.d.ts.map +1 -1
- package/dist/report/format.js +25 -0
- package/dist/report/format.js.map +1 -1
- package/dist/report/index.d.ts +2 -1
- package/dist/report/index.d.ts.map +1 -1
- package/dist/report/index.js +3 -1
- package/dist/report/index.js.map +1 -1
- package/dist/report/rollup.d.ts +33 -0
- package/dist/report/rollup.d.ts.map +1 -0
- package/dist/report/rollup.js +109 -0
- package/dist/report/rollup.js.map +1 -0
- package/dist/state/fold.js +14 -0
- package/dist/state/fold.js.map +1 -1
- package/dist/track.d.ts +8 -0
- package/dist/track.d.ts.map +1 -1
- package/dist/track.js +31 -0
- package/dist/track.js.map +1 -1
- package/package.json +1 -1
package/dist/cli/index.d.ts
CHANGED
package/dist/cli/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAsCA,MAAM,WAAW,KAAK;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACxB,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CACzB;AAsKD,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,GAAG,MAAM,CAwE3D"}
|
package/dist/cli/index.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { execFileSync } from 'node:child_process';
|
|
2
2
|
import { mkdirSync, readFileSync } from 'node:fs';
|
|
3
|
-
import { basename, isAbsolute, join } from 'node:path';
|
|
3
|
+
import { basename, dirname, isAbsolute, join } from 'node:path';
|
|
4
4
|
import { readHead } from '../events/head.js';
|
|
5
5
|
import { EventStore } from '../events/store.js';
|
|
6
6
|
import { validate } from '../events/validate.js';
|
|
7
|
+
import { initTrackDir, resolveTrackDir } from './resolve.js';
|
|
7
8
|
import { DomainError } from '../model/item.js';
|
|
8
9
|
import { formatRows } from '../report/format.js';
|
|
9
10
|
import { Track } from '../track.js';
|
|
10
|
-
import { BLOCKER_KINDS, BLOCKER_SCOPES, DECISION_KINDS, DISPOSITIONS, EVIDENCE_KINDS, GATES, ITEM_KINDS, OUTCOMES, REALIZE_TARGETS, RESOLUTION_RULES, RESULTS, SPEC_TARGETS, } from '../ingest/contract.js';
|
|
11
|
+
import { BLOCKER_KINDS, BLOCKER_SCOPES, DECISION_KINDS, DISPOSITIONS, EVIDENCE_KINDS, GATES, ITEM_KINDS, ITEM_ROLES, OUTCOMES, REALIZE_TARGETS, RESOLUTION_RULES, RESULTS, SPEC_TARGETS, } from '../ingest/contract.js';
|
|
11
12
|
import { ingest } from '../ingest/ingest.js';
|
|
12
13
|
import { TrackReader } from '../read/contract.js';
|
|
13
14
|
import { queryText, reportText } from '../read/commands.js';
|
|
@@ -16,7 +17,8 @@ import { desyncFindings } from './desync.js';
|
|
|
16
17
|
const USAGE = `usage: track <command>
|
|
17
18
|
--version | -v
|
|
18
19
|
init
|
|
19
|
-
item new --kind <feature|bug|chore> --title <t> --workspace <w> [--body <b>] [--parent <id>] [--accountable <a>] [--responsible <a,a>] [--engagement-ref <e>]
|
|
20
|
+
item new --kind <feature|bug|chore> --title <t> --workspace <w> [--body <b>] [--parent <id>] [--role workpackage] [--accountable <a>] [--responsible <a,a>] [--engagement-ref <e>]
|
|
21
|
+
item reparent <itemId> [--parent <pid>] [--detach]
|
|
20
22
|
item spec <itemId> <to-specify|specified>
|
|
21
23
|
item realize <itemId> <in-progress|done|cancelled>
|
|
22
24
|
item show <itemId>
|
|
@@ -34,8 +36,8 @@ const USAGE = `usage: track <command>
|
|
|
34
36
|
accept run --from <report> --format <junit|json> [--commit <c>] [--env <e>] [--runner <r>]
|
|
35
37
|
accept waive <criterionId> --reason <r>
|
|
36
38
|
priority assess <itemId> --ubv <n> --tc <n> --rr <n> --js <n>
|
|
37
|
-
report [--decisions] [--require-accepted] [--format json|text|md] [--commit <sha>]
|
|
38
|
-
query [--kind <k>] [--workspace <w>] [--bucket <AWAITED|DROPPED|DONE|TO-DO>] [--realization <r>] [--acceptance <a>] [--format json|text|md] [--commit <sha>]
|
|
39
|
+
report [--decisions] [--require-accepted] [--wp] [--format json|text|md] [--commit <sha>]
|
|
40
|
+
query [--kind <k>] [--role workpackage] [--workspace <w>] [--bucket <AWAITED|DROPPED|DONE|TO-DO>] [--realization <r>] [--acceptance <a>] [--format json|text|md] [--commit <sha>]
|
|
39
41
|
validate [--commit <sha>]
|
|
40
42
|
branch import <BRANCH.md> [--commit <sha>]
|
|
41
43
|
ingest <file.jsonl> --workspace <w>
|
|
@@ -50,14 +52,11 @@ const FROM_FORMATS = ['junit', 'json'];
|
|
|
50
52
|
const BUCKETS_ARG = ['AWAITED', 'DROPPED', 'DONE', 'TO-DO'];
|
|
51
53
|
// `n/a` is decision-only; `query` projects non-decision rows, so it would never match.
|
|
52
54
|
const ACCEPTANCES = ['fail', 'waived', 'unknown', 'stale', 'pass'];
|
|
53
|
-
function trackDir
|
|
54
|
-
return join(
|
|
55
|
+
function eventsPathOf(trackDir) {
|
|
56
|
+
return join(trackDir, 'events.jsonl');
|
|
55
57
|
}
|
|
56
|
-
function
|
|
57
|
-
return
|
|
58
|
-
}
|
|
59
|
-
function store(cwd) {
|
|
60
|
-
return new EventStore(eventsPath(cwd));
|
|
58
|
+
function store(ctx) {
|
|
59
|
+
return new EventStore(ctx.eventsPath);
|
|
61
60
|
}
|
|
62
61
|
function gitHead(cwd) {
|
|
63
62
|
try {
|
|
@@ -92,8 +91,8 @@ function cliActor(cwd) {
|
|
|
92
91
|
return user ? `human:${user}` : 'cli:unknown';
|
|
93
92
|
}
|
|
94
93
|
/** A writer Track for CLI commands — attributed to the local user with `cli` provenance (D3). */
|
|
95
|
-
function writeTrack(
|
|
96
|
-
return new Track(store(
|
|
94
|
+
function writeTrack(ctx) {
|
|
95
|
+
return new Track(store(ctx), { by: cliActor(ctx.io.cwd), prov: CLI_PROV });
|
|
97
96
|
}
|
|
98
97
|
function parseFlags(args) {
|
|
99
98
|
const positional = [];
|
|
@@ -143,9 +142,37 @@ function oneOf(value, allowed, name) {
|
|
|
143
142
|
function fmt(flags) {
|
|
144
143
|
return oneOf(opt(flags, 'format') ?? 'text', ['json', 'text', 'md'], '--format');
|
|
145
144
|
}
|
|
146
|
-
|
|
145
|
+
/**
|
|
146
|
+
* Pull a global `--track-dir <path>` out of argv BEFORE per-command parsing, so it works regardless
|
|
147
|
+
* of where the user places it. Returns the value (if any) and the argv with that flag removed.
|
|
148
|
+
*/
|
|
149
|
+
function extractTrackDirFlag(argv) {
|
|
150
|
+
const rest = [];
|
|
151
|
+
let trackDirFlag;
|
|
152
|
+
for (let i = 0; i < argv.length; i++) {
|
|
153
|
+
const a = argv[i];
|
|
154
|
+
if (a === '--track-dir') {
|
|
155
|
+
const next = argv[i + 1];
|
|
156
|
+
if (next !== undefined && !next.startsWith('--')) {
|
|
157
|
+
trackDirFlag = next;
|
|
158
|
+
i++;
|
|
159
|
+
continue;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
rest.push(a);
|
|
163
|
+
}
|
|
164
|
+
return trackDirFlag !== undefined ? { trackDirFlag, rest } : { rest };
|
|
165
|
+
}
|
|
166
|
+
export function runCli(rawArgv, io) {
|
|
167
|
+
const { trackDirFlag, rest: argv } = extractTrackDirFlag(rawArgv);
|
|
147
168
|
const cmd = argv[0];
|
|
148
169
|
const rest = argv.slice(1);
|
|
170
|
+
const trackDirEnv = process.env['TRACK_DIR'];
|
|
171
|
+
const resolveOpts = {
|
|
172
|
+
cwd: io.cwd,
|
|
173
|
+
...(trackDirFlag !== undefined ? { flag: trackDirFlag } : {}),
|
|
174
|
+
...(trackDirEnv !== undefined ? { env: trackDirEnv } : {}),
|
|
175
|
+
};
|
|
149
176
|
try {
|
|
150
177
|
switch (cmd) {
|
|
151
178
|
case '--version':
|
|
@@ -153,30 +180,53 @@ export function runCli(argv, io) {
|
|
|
153
180
|
case 'version':
|
|
154
181
|
io.out(`${VERSION}\n`);
|
|
155
182
|
return 0;
|
|
156
|
-
case 'init':
|
|
157
|
-
|
|
158
|
-
|
|
183
|
+
case 'init': {
|
|
184
|
+
// The ONLY command that creates a `.track` — at cwd/.track (or an explicit override).
|
|
185
|
+
const dir = initTrackDir(resolveOpts);
|
|
186
|
+
mkdirSync(dir, { recursive: true });
|
|
187
|
+
io.out(`Initialized .track/ in ${dirname(dir)}\n`);
|
|
159
188
|
return 0;
|
|
189
|
+
}
|
|
190
|
+
// Every other command resolves the nearest-ancestor `.track` and FAILS LOUD if none exists. The
|
|
191
|
+
// USAGE/rc=2 branch for an UNKNOWN command is reached BEFORE resolution (a typo must not be masked
|
|
192
|
+
// by a "no .track" error), so `resolveTrackDir` runs only for a recognized command.
|
|
160
193
|
case 'item':
|
|
161
|
-
return cmdItem(rest, io);
|
|
162
194
|
case 'decision':
|
|
163
|
-
return cmdDecision(rest, io);
|
|
164
195
|
case 'blocker':
|
|
165
|
-
return cmdBlocker(rest, io);
|
|
166
196
|
case 'accept':
|
|
167
|
-
return cmdAccept(rest, io);
|
|
168
197
|
case 'priority':
|
|
169
|
-
return cmdPriority(rest, io);
|
|
170
198
|
case 'report':
|
|
171
|
-
return cmdReport(rest, io);
|
|
172
199
|
case 'query':
|
|
173
|
-
return cmdQuery(rest, io);
|
|
174
200
|
case 'validate':
|
|
175
|
-
return cmdValidate(rest, io);
|
|
176
201
|
case 'branch':
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
202
|
+
case 'ingest': {
|
|
203
|
+
const ctx = { io, eventsPath: eventsPathOf(resolveTrackDir(resolveOpts)) };
|
|
204
|
+
switch (cmd) {
|
|
205
|
+
case 'item':
|
|
206
|
+
return cmdItem(rest, ctx);
|
|
207
|
+
case 'decision':
|
|
208
|
+
return cmdDecision(rest, ctx);
|
|
209
|
+
case 'blocker':
|
|
210
|
+
return cmdBlocker(rest, ctx);
|
|
211
|
+
case 'accept':
|
|
212
|
+
return cmdAccept(rest, ctx);
|
|
213
|
+
case 'priority':
|
|
214
|
+
return cmdPriority(rest, ctx);
|
|
215
|
+
case 'report':
|
|
216
|
+
return cmdReport(rest, ctx);
|
|
217
|
+
case 'query':
|
|
218
|
+
return cmdQuery(rest, ctx);
|
|
219
|
+
case 'validate':
|
|
220
|
+
return cmdValidate(rest, ctx);
|
|
221
|
+
case 'branch':
|
|
222
|
+
return cmdBranch(rest, ctx);
|
|
223
|
+
case 'ingest':
|
|
224
|
+
return cmdIngest(rest, ctx);
|
|
225
|
+
}
|
|
226
|
+
// unreachable — the outer case list and this inner switch are identical
|
|
227
|
+
io.err(USAGE);
|
|
228
|
+
return 2;
|
|
229
|
+
}
|
|
180
230
|
default:
|
|
181
231
|
io.err(USAGE);
|
|
182
232
|
return 2;
|
|
@@ -190,10 +240,11 @@ export function runCli(argv, io) {
|
|
|
190
240
|
function rowsOut(rows, format, io) {
|
|
191
241
|
io.out(format === 'json' ? `${JSON.stringify(rows, null, 2)}\n` : formatRows(rows, format));
|
|
192
242
|
}
|
|
193
|
-
function cmdItem(args,
|
|
243
|
+
function cmdItem(args, ctx) {
|
|
244
|
+
const { io } = ctx;
|
|
194
245
|
const sub = args[0];
|
|
195
246
|
const { positional, flags } = parseFlags(args.slice(1));
|
|
196
|
-
const track = writeTrack(
|
|
247
|
+
const track = writeTrack(ctx);
|
|
197
248
|
if (sub === 'new') {
|
|
198
249
|
const id = track.createItem({
|
|
199
250
|
kind: oneOf(req(flags, 'kind'), ITEM_KINDS, '--kind'),
|
|
@@ -201,6 +252,7 @@ function cmdItem(args, io) {
|
|
|
201
252
|
workspace: req(flags, 'workspace'),
|
|
202
253
|
...(opt(flags, 'body') !== undefined ? { body: req(flags, 'body') } : {}),
|
|
203
254
|
...(opt(flags, 'parent') !== undefined ? { parentId: req(flags, 'parent') } : {}),
|
|
255
|
+
...(opt(flags, 'role') !== undefined ? { role: oneOf(req(flags, 'role'), ITEM_ROLES, '--role') } : {}),
|
|
204
256
|
...(opt(flags, 'accountable') !== undefined ? { accountable: req(flags, 'accountable') } : {}),
|
|
205
257
|
...(opt(flags, 'responsible') !== undefined
|
|
206
258
|
? { responsible: req(flags, 'responsible').split(',').map((s) => s.trim()).filter(Boolean) }
|
|
@@ -210,6 +262,17 @@ function cmdItem(args, io) {
|
|
|
210
262
|
io.out(`${id}\n`);
|
|
211
263
|
return 0;
|
|
212
264
|
}
|
|
265
|
+
if (sub === 'reparent') {
|
|
266
|
+
// `--parent <pid>` moves; `--detach` (or neither) detaches to root (Workpackages §2).
|
|
267
|
+
const detach = flags['detach'] === true;
|
|
268
|
+
const parent = opt(flags, 'parent');
|
|
269
|
+
if (parent !== undefined && detach) {
|
|
270
|
+
throw new DomainError('item reparent: use --parent <pid> OR --detach, not both');
|
|
271
|
+
}
|
|
272
|
+
track.reparentItem(positional[0], detach ? undefined : parent);
|
|
273
|
+
io.out('ok\n');
|
|
274
|
+
return 0;
|
|
275
|
+
}
|
|
213
276
|
if (sub === 'spec') {
|
|
214
277
|
track.setSpec(positional[0], oneOf(positional[1], SPEC_TARGETS, 'spec'));
|
|
215
278
|
io.out('ok\n');
|
|
@@ -232,13 +295,14 @@ function cmdItem(args, io) {
|
|
|
232
295
|
rowsOut(rows, fmt(flags), io);
|
|
233
296
|
return 0;
|
|
234
297
|
}
|
|
235
|
-
io.err('usage: track item <new|spec|realize|show|ls>\n');
|
|
298
|
+
io.err('usage: track item <new|reparent|spec|realize|show|ls>\n');
|
|
236
299
|
return 2;
|
|
237
300
|
}
|
|
238
|
-
function cmdDecision(args,
|
|
301
|
+
function cmdDecision(args, ctx) {
|
|
302
|
+
const { io } = ctx;
|
|
239
303
|
const sub = args[0];
|
|
240
304
|
const { positional, flags } = parseFlags(args.slice(1));
|
|
241
|
-
const track = writeTrack(
|
|
305
|
+
const track = writeTrack(ctx);
|
|
242
306
|
if (sub === 'new') {
|
|
243
307
|
const id = track.createDecision({
|
|
244
308
|
decisionKind: oneOf(req(flags, 'kind'), DECISION_KINDS, '--kind'),
|
|
@@ -274,10 +338,11 @@ function cmdDecision(args, io) {
|
|
|
274
338
|
io.err('usage: track decision <new|outcome|dossier|disposition>\n');
|
|
275
339
|
return 2;
|
|
276
340
|
}
|
|
277
|
-
function cmdBlocker(args,
|
|
341
|
+
function cmdBlocker(args, ctx) {
|
|
342
|
+
const { io } = ctx;
|
|
278
343
|
const sub = args[0];
|
|
279
344
|
const { positional, flags } = parseFlags(args.slice(1));
|
|
280
|
-
const track = writeTrack(
|
|
345
|
+
const track = writeTrack(ctx);
|
|
281
346
|
if (sub === 'raise') {
|
|
282
347
|
const id = track.openBlocker({
|
|
283
348
|
targetId: req(flags, 'target'),
|
|
@@ -302,17 +367,22 @@ function cmdBlocker(args, io) {
|
|
|
302
367
|
}
|
|
303
368
|
if (sub === 'resolve-external') {
|
|
304
369
|
// A local CLI human is the trust root — explicitly unscoped (resolves the engagement's deps everywhere).
|
|
370
|
+
// WHITELISTED no-op: 0 matches is a genuine no-op (nothing to resolve / idempotent retry) and is the
|
|
371
|
+
// ONLY case where this command persists nothing — say so explicitly rather than implying a write.
|
|
305
372
|
const ids = track.resolveExternalDependency(req(flags, 'engagement-ref'), 'all-workspaces');
|
|
306
|
-
io.out(
|
|
373
|
+
io.out(ids.length === 0
|
|
374
|
+
? `no-op: 0 external dependency blocker(s) matched\n`
|
|
375
|
+
: `resolved ${ids.length} external dependency blocker(s)\n`);
|
|
307
376
|
return 0;
|
|
308
377
|
}
|
|
309
378
|
io.err('usage: track blocker <raise|resolve|resolve-external>\n');
|
|
310
379
|
return 2;
|
|
311
380
|
}
|
|
312
|
-
function cmdAccept(args,
|
|
381
|
+
function cmdAccept(args, ctx) {
|
|
382
|
+
const { io } = ctx;
|
|
313
383
|
const sub = args[0];
|
|
314
384
|
const { positional, flags } = parseFlags(args.slice(1));
|
|
315
|
-
const track = writeTrack(
|
|
385
|
+
const track = writeTrack(ctx);
|
|
316
386
|
if (sub === 'criterion') {
|
|
317
387
|
io.out(`${track.addCriterion(positional[0], req(flags, 'statement'))}\n`);
|
|
318
388
|
return 0;
|
|
@@ -329,7 +399,10 @@ function cmdAccept(args, io) {
|
|
|
329
399
|
if (from !== undefined) {
|
|
330
400
|
const content = readFileSync(isAbsolute(from) ? from : join(io.cwd, from), 'utf8');
|
|
331
401
|
const format = oneOf(req(flags, 'format'), FROM_FORMATS, '--format');
|
|
332
|
-
|
|
402
|
+
// WHITELISTED no-op: an idempotent re-ingest (every asserted result already latest in the log)
|
|
403
|
+
// records nothing — say "no-op" rather than "ingested 0 run(s)", which reads like a silent write.
|
|
404
|
+
const n = track.ingestRuns(content, format, { commit, env, runner });
|
|
405
|
+
io.out(n === 0 ? `no-op: 0 run(s) ingested (already current)\n` : `ingested ${n} run(s)\n`);
|
|
333
406
|
return 0;
|
|
334
407
|
}
|
|
335
408
|
track.recordRun(positional[0], {
|
|
@@ -349,10 +422,11 @@ function cmdAccept(args, io) {
|
|
|
349
422
|
io.err('usage: track accept <criterion|link|run|waive>\n');
|
|
350
423
|
return 2;
|
|
351
424
|
}
|
|
352
|
-
function cmdPriority(args,
|
|
425
|
+
function cmdPriority(args, ctx) {
|
|
426
|
+
const { io } = ctx;
|
|
353
427
|
const sub = args[0];
|
|
354
428
|
const { positional, flags } = parseFlags(args.slice(1));
|
|
355
|
-
const track = writeTrack(
|
|
429
|
+
const track = writeTrack(ctx);
|
|
356
430
|
if (sub === 'assess') {
|
|
357
431
|
const a = track.assessPriority(positional[0], {
|
|
358
432
|
userBusinessValue: num(flags, 'ubv'),
|
|
@@ -366,22 +440,26 @@ function cmdPriority(args, io) {
|
|
|
366
440
|
io.err('usage: track priority assess <itemId> --ubv --tc --rr --js\n');
|
|
367
441
|
return 2;
|
|
368
442
|
}
|
|
369
|
-
function cmdReport(args,
|
|
443
|
+
function cmdReport(args, ctx) {
|
|
444
|
+
const { io } = ctx;
|
|
370
445
|
const { flags } = parseFlags(args);
|
|
371
446
|
// Reads go through the shared TrackReader command layer (same path the MCP server uses).
|
|
372
|
-
const reader = new TrackReader(eventsPath
|
|
447
|
+
const reader = new TrackReader(ctx.eventsPath);
|
|
373
448
|
io.out(reportText(reader, {
|
|
374
449
|
baselineCommit: opt(flags, 'commit') ?? gitHead(io.cwd),
|
|
375
450
|
requireAccepted: flags['require-accepted'] === true,
|
|
376
451
|
decisions: flags['decisions'] === true,
|
|
452
|
+
wpTree: flags['wp'] === true,
|
|
377
453
|
}, fmt(flags)));
|
|
378
454
|
return 0;
|
|
379
455
|
}
|
|
380
|
-
function cmdQuery(args,
|
|
456
|
+
function cmdQuery(args, ctx) {
|
|
457
|
+
const { io } = ctx;
|
|
381
458
|
const { flags } = parseFlags(args);
|
|
382
|
-
const reader = new TrackReader(eventsPath
|
|
459
|
+
const reader = new TrackReader(ctx.eventsPath);
|
|
383
460
|
io.out(queryText(reader, {
|
|
384
461
|
...(opt(flags, 'kind') !== undefined ? { kind: oneOf(req(flags, 'kind'), ITEM_KINDS, '--kind') } : {}),
|
|
462
|
+
...(opt(flags, 'role') !== undefined ? { role: oneOf(req(flags, 'role'), ITEM_ROLES, '--role') } : {}),
|
|
385
463
|
...(opt(flags, 'workspace') !== undefined ? { workspace: req(flags, 'workspace') } : {}),
|
|
386
464
|
...(opt(flags, 'bucket') !== undefined ? { bucket: oneOf(req(flags, 'bucket'), BUCKETS_ARG, '--bucket') } : {}),
|
|
387
465
|
...(opt(flags, 'realization') !== undefined
|
|
@@ -393,10 +471,11 @@ function cmdQuery(args, io) {
|
|
|
393
471
|
}, { baselineCommit: opt(flags, 'commit') ?? gitHead(io.cwd) }, fmt(flags)));
|
|
394
472
|
return 0;
|
|
395
473
|
}
|
|
396
|
-
function cmdValidate(args,
|
|
474
|
+
function cmdValidate(args, ctx) {
|
|
475
|
+
const { io } = ctx;
|
|
397
476
|
const { flags } = parseFlags(args);
|
|
398
477
|
void flags;
|
|
399
|
-
const s = store(
|
|
478
|
+
const s = store(ctx);
|
|
400
479
|
let events;
|
|
401
480
|
try {
|
|
402
481
|
events = s.readAll();
|
|
@@ -405,7 +484,7 @@ function cmdValidate(args, io) {
|
|
|
405
484
|
io.out(`INVALID: ${error instanceof Error ? error.message : String(error)}\n`);
|
|
406
485
|
return 1;
|
|
407
486
|
}
|
|
408
|
-
const integrity = validate(events, readHead(eventsPath
|
|
487
|
+
const integrity = validate(events, readHead(ctx.eventsPath));
|
|
409
488
|
const desync = desyncFindings(new Track(s).state(), io.cwd);
|
|
410
489
|
const findings = [...integrity.findings.map((f) => ({ ...f })), ...desync];
|
|
411
490
|
if (findings.length === 0) {
|
|
@@ -416,7 +495,8 @@ function cmdValidate(args, io) {
|
|
|
416
495
|
io.out(`${JSON.stringify(findings, null, 2)}\n`);
|
|
417
496
|
return 1;
|
|
418
497
|
}
|
|
419
|
-
function cmdBranch(args,
|
|
498
|
+
function cmdBranch(args, ctx) {
|
|
499
|
+
const { io } = ctx;
|
|
420
500
|
if (args[0] !== 'import') {
|
|
421
501
|
io.err('usage: track branch import <BRANCH.md> [--commit <sha>]\n');
|
|
422
502
|
return 2;
|
|
@@ -428,7 +508,7 @@ function cmdBranch(args, io) {
|
|
|
428
508
|
return 2;
|
|
429
509
|
}
|
|
430
510
|
const content = readFileSync(isAbsolute(file) ? file : join(io.cwd, file), 'utf8');
|
|
431
|
-
const track = writeTrack(
|
|
511
|
+
const track = writeTrack(ctx);
|
|
432
512
|
const result = track.importBranch(content, {
|
|
433
513
|
locator: file,
|
|
434
514
|
fileSlug: basename(file).replace(/\.md$/, ''),
|
|
@@ -443,7 +523,8 @@ function cmdBranch(args, io) {
|
|
|
443
523
|
* distinguishable from interactive CLI writes in the audit log. Same shape as `branch import` /
|
|
444
524
|
* `accept run --from`: a local-file adapter, not a network transport.
|
|
445
525
|
*/
|
|
446
|
-
function cmdIngest(args,
|
|
526
|
+
function cmdIngest(args, cliCtx) {
|
|
527
|
+
const { io } = cliCtx;
|
|
447
528
|
const { positional, flags } = parseFlags(args);
|
|
448
529
|
const file = positional[0];
|
|
449
530
|
if (file === undefined) {
|
|
@@ -469,7 +550,17 @@ function cmdIngest(args, io) {
|
|
|
469
550
|
workspace,
|
|
470
551
|
prov: { transport: 'import', proposed: false, auth: 'local-user' },
|
|
471
552
|
};
|
|
472
|
-
const
|
|
553
|
+
const s = store(cliCtx);
|
|
554
|
+
// `ingest().count` is the INPUT length, not the persisted count (a dedup'd WorkEvent is skipped, not
|
|
555
|
+
// appended). To classify a genuine no-op we compare the persisted log length before/after: if nothing
|
|
556
|
+
// new landed, EVERY event was a dedup'd retry — say "no-op" explicitly (WHITELISTED), never imply a write.
|
|
557
|
+
const before = s.readAll().length;
|
|
558
|
+
const result = ingest(events, ctx, s);
|
|
559
|
+
const after = s.readAll().length;
|
|
560
|
+
if (after === before) {
|
|
561
|
+
io.out('no-op: 0 event(s) ingested (already applied)\n');
|
|
562
|
+
return 0;
|
|
563
|
+
}
|
|
473
564
|
for (const id of result.ids)
|
|
474
565
|
io.out(`${id ?? '-'}\n`);
|
|
475
566
|
return 0;
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* P0 — Shared store resolver (CLI + track-mcp). The single rule for WHERE a command's `.track` lives,
|
|
3
|
+
* so the CLI and the MCP server can never disagree and a write can never land in a stray, auto-created
|
|
4
|
+
* sidecar (root cause (b): a subdir/worktree write to `join(cwd,'.track')` while the watched root log is
|
|
5
|
+
* untouched). Resolution order:
|
|
6
|
+
* 1. an explicit `--track-dir <path>` flag, else `TRACK_DIR` env — used VERBATIM (must already exist);
|
|
7
|
+
* 2. otherwise walk UPWARD from `cwd` to the nearest existing ancestor `.track` directory.
|
|
8
|
+
* No creation, ever: `track init` is the ONLY command that creates a new `.track`. Every other command
|
|
9
|
+
* fails loud (this throws ⇒ rc=1 + stderr) when none is found, rather than silently materializing one.
|
|
10
|
+
*/
|
|
11
|
+
export declare class TrackDirNotFoundError extends Error {
|
|
12
|
+
constructor(cwd: string, hadOverride: boolean);
|
|
13
|
+
}
|
|
14
|
+
export interface ResolveOptions {
|
|
15
|
+
cwd: string;
|
|
16
|
+
/** `--track-dir <path>` (highest precedence). */
|
|
17
|
+
flag?: string | undefined;
|
|
18
|
+
/** `TRACK_DIR` env (used only if `flag` is absent). */
|
|
19
|
+
env?: string | undefined;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Resolve the `.track` directory for a NON-init command. Throws `TrackDirNotFoundError` if none is
|
|
23
|
+
* found (or an explicit override does not exist). NEVER creates a directory.
|
|
24
|
+
*/
|
|
25
|
+
export declare function resolveTrackDir(opts: ResolveOptions): string;
|
|
26
|
+
/** The `.track` directory `track init` should CREATE for `cwd` (always `cwd/.track`, or an explicit override). */
|
|
27
|
+
export declare function initTrackDir(opts: ResolveOptions): string;
|
|
28
|
+
//# sourceMappingURL=resolve.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/cli/resolve.ts"],"names":[],"mappings":"AAGA;;;;;;;;;GASG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO;CAU9C;AAUD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAA;IACX,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACzB,uDAAuD;IACvD,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACzB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAiB5D;AAED,kHAAkH;AAClH,wBAAgB,YAAY,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAMzD"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { existsSync, statSync } from 'node:fs';
|
|
2
|
+
import { dirname, isAbsolute, join, resolve } from 'node:path';
|
|
3
|
+
/**
|
|
4
|
+
* P0 — Shared store resolver (CLI + track-mcp). The single rule for WHERE a command's `.track` lives,
|
|
5
|
+
* so the CLI and the MCP server can never disagree and a write can never land in a stray, auto-created
|
|
6
|
+
* sidecar (root cause (b): a subdir/worktree write to `join(cwd,'.track')` while the watched root log is
|
|
7
|
+
* untouched). Resolution order:
|
|
8
|
+
* 1. an explicit `--track-dir <path>` flag, else `TRACK_DIR` env — used VERBATIM (must already exist);
|
|
9
|
+
* 2. otherwise walk UPWARD from `cwd` to the nearest existing ancestor `.track` directory.
|
|
10
|
+
* No creation, ever: `track init` is the ONLY command that creates a new `.track`. Every other command
|
|
11
|
+
* fails loud (this throws ⇒ rc=1 + stderr) when none is found, rather than silently materializing one.
|
|
12
|
+
*/
|
|
13
|
+
export class TrackDirNotFoundError extends Error {
|
|
14
|
+
constructor(cwd, hadOverride) {
|
|
15
|
+
super(hadOverride
|
|
16
|
+
? `track: the requested --track-dir / TRACK_DIR does not exist. ` +
|
|
17
|
+
`track never creates a store implicitly — run \`track init\` there first.`
|
|
18
|
+
: `track: no .track directory found in ${cwd} or any parent. ` +
|
|
19
|
+
`Run \`track init\` to create one (this is the ONLY command that does), or pass --track-dir / TRACK_DIR.`);
|
|
20
|
+
this.name = 'TrackDirNotFoundError';
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
function isDir(p) {
|
|
24
|
+
try {
|
|
25
|
+
return statSync(p).isDirectory();
|
|
26
|
+
}
|
|
27
|
+
catch {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Resolve the `.track` directory for a NON-init command. Throws `TrackDirNotFoundError` if none is
|
|
33
|
+
* found (or an explicit override does not exist). NEVER creates a directory.
|
|
34
|
+
*/
|
|
35
|
+
export function resolveTrackDir(opts) {
|
|
36
|
+
const override = opts.flag ?? opts.env;
|
|
37
|
+
if (override !== undefined && override.length > 0) {
|
|
38
|
+
const abs = isAbsolute(override) ? override : resolve(opts.cwd, override);
|
|
39
|
+
if (!isDir(abs))
|
|
40
|
+
throw new TrackDirNotFoundError(opts.cwd, true);
|
|
41
|
+
return abs;
|
|
42
|
+
}
|
|
43
|
+
let cur = resolve(opts.cwd);
|
|
44
|
+
for (;;) {
|
|
45
|
+
const candidate = join(cur, '.track');
|
|
46
|
+
if (existsSync(candidate) && isDir(candidate))
|
|
47
|
+
return candidate;
|
|
48
|
+
const parent = dirname(cur);
|
|
49
|
+
if (parent === cur)
|
|
50
|
+
break; // reached the filesystem root
|
|
51
|
+
cur = parent;
|
|
52
|
+
}
|
|
53
|
+
throw new TrackDirNotFoundError(opts.cwd, false);
|
|
54
|
+
}
|
|
55
|
+
/** The `.track` directory `track init` should CREATE for `cwd` (always `cwd/.track`, or an explicit override). */
|
|
56
|
+
export function initTrackDir(opts) {
|
|
57
|
+
const override = opts.flag ?? opts.env;
|
|
58
|
+
if (override !== undefined && override.length > 0) {
|
|
59
|
+
return isAbsolute(override) ? override : resolve(opts.cwd, override);
|
|
60
|
+
}
|
|
61
|
+
return join(resolve(opts.cwd), '.track');
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=resolve.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/cli/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAE9D;;;;;;;;;GASG;AACH,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,GAAW,EAAE,WAAoB;QAC3C,KAAK,CACH,WAAW;YACT,CAAC,CAAC,+DAA+D;gBAC7D,0EAA0E;YAC9E,CAAC,CAAC,uCAAuC,GAAG,kBAAkB;gBAC1D,yGAAyG,CAChH,CAAA;QACD,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAA;IACrC,CAAC;CACF;AAED,SAAS,KAAK,CAAC,CAAS;IACtB,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAUD;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,IAAoB;IAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAA;IACtC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClD,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;QACzE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,qBAAqB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QAChE,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,IAAI,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC3B,SAAS,CAAC;QACR,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;QACrC,IAAI,UAAU,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAA;QAC/D,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;QAC3B,IAAI,MAAM,KAAK,GAAG;YAAE,MAAK,CAAC,8BAA8B;QACxD,GAAG,GAAG,MAAM,CAAA;IACd,CAAC;IACD,MAAM,IAAI,qBAAqB,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;AAClD,CAAC;AAED,kHAAkH;AAClH,MAAM,UAAU,YAAY,CAAC,IAAoB;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAA;IACtC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClD,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;IACtE,CAAC;IACD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAA;AAC1C,CAAC"}
|
package/dist/events/store.d.ts
CHANGED
|
@@ -20,6 +20,14 @@ export declare class EventStore {
|
|
|
20
20
|
appendCommand(inputs: ReadonlyArray<CommandEvent>, opts?: {
|
|
21
21
|
cmdId?: Ulid;
|
|
22
22
|
}): TrackEvent[];
|
|
23
|
+
/**
|
|
24
|
+
* Post-write verification (under the append lock). Re-reads the persisted log + head and asserts:
|
|
25
|
+
* (1) the log grew by exactly `events.length` (length); (2) the persisted suffix matches the
|
|
26
|
+
* generated events by `id` + `contentHash` (identity); (3) the head's `streamLength` /
|
|
27
|
+
* `lastContentHash` match the write; (4) the full persisted stream still `validate`s (integrity).
|
|
28
|
+
* Any mismatch throws `append verification failed for <path> …` — the receipt the caller can trust.
|
|
29
|
+
*/
|
|
30
|
+
private verifyAppend;
|
|
23
31
|
/**
|
|
24
32
|
* Append all of a command's lines in one fsync'd write. Each line is the event's `canonicalize`
|
|
25
33
|
* form — the SAME serialization used for `contentHash`, so persisted bytes can never diverge
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/events/store.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,YAAY,EAAqB,UAAU,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/events/store.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,YAAY,EAAqB,UAAU,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAgBnF;;;;;;;GAOG;AACH,qBAAa,UAAU;IACT,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,MAAM;IAE7C,mFAAmF;IACnF,OAAO,IAAI,UAAU,EAAE;IAiBvB;;;;OAIG;IACH,aAAa,CACX,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,EACnC,IAAI,GAAE;QAAE,KAAK,CAAC,EAAE,IAAI,CAAA;KAAO,GAC1B,UAAU,EAAE;IA6Ef;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;IA4CpB;;;;;;;OAOG;IACH,OAAO,CAAC,YAAY;CAcrB"}
|