@ai-dossier/cli 0.71.1 → 0.73.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +51 -1
- package/dist/color.d.ts +25 -0
- package/dist/color.d.ts.map +1 -0
- package/dist/color.js +38 -0
- package/dist/color.js.map +1 -0
- package/dist/commands/keys.d.ts.map +1 -1
- package/dist/commands/keys.js +84 -0
- package/dist/commands/keys.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +29 -1
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/sched.d.ts.map +1 -1
- package/dist/commands/sched.js +23 -0
- package/dist/commands/sched.js.map +1 -1
- package/dist/helpers.js +1 -1
- package/dist/helpers.js.map +1 -1
- package/dist/risk-prompt.d.ts +30 -0
- package/dist/risk-prompt.d.ts.map +1 -0
- package/dist/risk-prompt.js +43 -0
- package/dist/risk-prompt.js.map +1 -0
- package/dist/sched-run-stats.d.ts +7 -0
- package/dist/sched-run-stats.d.ts.map +1 -1
- package/dist/sched-run-stats.js +10 -1
- package/dist/sched-run-stats.js.map +1 -1
- package/dist/usage/batch-prep.d.ts +63 -0
- package/dist/usage/batch-prep.d.ts.map +1 -0
- package/dist/usage/batch-prep.js +176 -0
- package/dist/usage/batch-prep.js.map +1 -0
- package/dist/usage/ledger.d.ts.map +1 -1
- package/dist/usage/ledger.js +2 -0
- package/dist/usage/ledger.js.map +1 -1
- package/dist/usage/types.d.ts +2 -0
- package/dist/usage/types.d.ts.map +1 -1
- package/dist/verify-dossier.d.ts.map +1 -1
- package/dist/verify-dossier.js +39 -29
- package/dist/verify-dossier.js.map +1 -1
- package/dist/verify-guidance.d.ts +34 -0
- package/dist/verify-guidance.d.ts.map +1 -0
- package/dist/verify-guidance.js +81 -0
- package/dist/verify-guidance.js.map +1 -0
- package/package.json +1 -1
package/dist/sched-run-stats.js
CHANGED
|
@@ -307,6 +307,8 @@ function buildBatchAmortizationSummary({ batchId, batch, journal, entries, }) {
|
|
|
307
307
|
total_cost_usd: costTerms.length > 0 ? costTerms.reduce((a, b) => a + b, 0) : null,
|
|
308
308
|
tokens_per_member: billable !== null && perMemberDenominator > 0 ? billable / perMemberDenominator : null,
|
|
309
309
|
by_model: byModel,
|
|
310
|
+
prep_tokens: null,
|
|
311
|
+
prep_sessions: 0,
|
|
310
312
|
};
|
|
311
313
|
}
|
|
312
314
|
/** One human line: members in/out, issues per gate run, tokens per member, tokens by model. */
|
|
@@ -322,10 +324,17 @@ function formatAmortizationLine(a) {
|
|
|
322
324
|
.map((m) => `${m.model ?? '<unknown>'} ${(0, cost_format_1.formatCount)(m.billable_tokens)} ×${m.runs}`)
|
|
323
325
|
.join(', ')
|
|
324
326
|
: 'none recorded';
|
|
327
|
+
const denominator = a.members_shipped ?? a.members_landed;
|
|
328
|
+
const prepNote = a.prep_tokens === null
|
|
329
|
+
? '; prep tokens n/a (no prep session recorded)'
|
|
330
|
+
: `; prep ${(0, cost_format_1.formatCount)(a.prep_tokens)} tokens, not included above` +
|
|
331
|
+
(denominator > 0
|
|
332
|
+
? ` (${(0, cost_format_1.formatCount)(Math.round(a.prep_tokens / denominator))}/member)`
|
|
333
|
+
: '');
|
|
325
334
|
return [
|
|
326
335
|
`Summary: ${a.members_enqueued} enqueued, ${a.members_landed} landed, ${a.evictions} evicted` +
|
|
327
336
|
`${a.handed_back > 0 ? `, ${a.handed_back} handed back` : ''}; ${outcome};`,
|
|
328
|
-
`${(0, cost_format_1.formatCount)(a.billable_tokens)} billable tokens${perMember}; by model: ${models}`,
|
|
337
|
+
`${(0, cost_format_1.formatCount)(a.billable_tokens)} billable tokens${perMember}; by model: ${models}${prepNote}`,
|
|
329
338
|
].join(' ');
|
|
330
339
|
}
|
|
331
340
|
//# sourceMappingURL=sched-run-stats.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sched-run-stats.js","sourceRoot":"","sources":["../src/sched-run-stats.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;AAyHH,wDA+BC;AAiBD,oDAqBC;AA0DD,sDA6CC;AAwBD,sCAqBC;AA4CD,sEAmEC;AAGD,wDAoBC;AArdD,6CAAgD;AAUvC,4FAVA,mBAAW,OAUA;AATpB,+CAA4C;AAW5C,oGAAoG;AACpG,SAAS,QAAQ,CACf,OAAsB,EACtB,KAAwB;IAExB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,qEAAqE;QACrE,wEAAwE;QACxE,wEAAwE;QACxE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC,EAAE,CAAC;YAC1F,KAAK,IAAI,KAAK,CAAC;YACf,OAAO,IAAI,CAAC,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAC5B,CAAC;AA4CD,8DAA8D;AAC9D,MAAM,UAAU,GAAG;IACjB,cAAc;IACd,eAAe;IACf,kBAAkB;IAClB,OAAO;IACP,uBAAuB;IACvB,mBAAmB;IACnB,gBAAgB;IAChB,aAAa;CAEO,CAAC;AAEvB;;;;;;GAMG;AACH,SAAS,oBAAoB,CAC3B,OAAsB,EACtB,KAAoC;IAEpC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE;YAAE,SAAS;QACxD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,OAAO;gBAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3D,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,sBAAsB,CAAC,OAAsB;IAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAC5B,MAAM,MAAM,GAAG,EAGd,CAAC;IACF,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7C,CAAC;IACD,MAAM,KAAK,GAAG,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,oBAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACnD,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,KAAK,KAAK,CAAC,CAAC;IAChF,MAAM,IAAI,GAAsB,eAAe;QAC7C,CAAC,CAAC,MAAM,CAAC,cAAc,KAAK,IAAI;YAC9B,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,SAAS;QACb,CAAC,CAAC,MAAM,CAAC,cAAc,KAAK,IAAI;YAC9B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,QAAQ,CAAC;IACf,MAAM,KAAK,GACT,IAAI,GAAG,CAAC;QACR,MAAM,CAAC,YAAY,KAAK,IAAI;QAC5B,MAAM,CAAC,aAAa,KAAK,IAAI;QAC7B,MAAM,CAAC,gBAAgB,KAAK,IAAI;QAChC,MAAM,CAAC,qBAAqB,KAAK,IAAI;QACrC,MAAM,CAAC,iBAAiB,KAAK,IAAI;QAC/B,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,IAAI,CAAC;IACX,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,oBAAoB,CAClC,OAAsB,EACtB,MAA0B;IAE1B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IACjD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,KAAK,KAAK,IAAI;YAAE,SAAS;QAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;YACtB,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3F,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACpC,KAAK;QACL,GAAG,sBAAsB,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;KACpD,CAAC,CAAC,CAAC;IACJ,MAAM,MAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAE7F,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAClC,CAAC;AAuCD,8EAA8E;AAC9E,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,SAAS;IACT,cAAc;IACd,eAAe;IACf,iBAAiB;IACjB,gBAAgB;IAChB,oBAAoB;IACpB,mBAAmB;IACnB,sFAAsF;IACtF,uBAAuB;IACvB,gBAAgB;IAChB,0BAA0B;IAC1B,aAAa;IACb,kBAAkB;IAClB,cAAc;CACf,CAAC,CAAC;AAEH,yEAAyE;AACzE,SAAgB,qBAAqB,CACnC,MAAoC,EACpC,OAAe;IAEf,MAAM,IAAI,GAAG,SAAS,OAAO,EAAE,CAAC;IAChC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,OAAO,GAAkB,IAAI,CAAC;IAClC,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,EAAE,IAAI,KAAK,IAAI,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;YAAE,SAAS;QACtE,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QACnE,IAAI,KAAK,KAAK,IAAI,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC/E,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,eAAe;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACzE,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,aAAa,IAAI,KAAK,CAAC,KAAK,KAAK,gBAAgB,CAAC,EAAE,CAAC;YAC1F,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,oBAAoB;YAAE,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClF,6EAA6E;QAC7E,iFAAiF;QACjF,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,0BAA0B,EAAE,CAAC;YACjE,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,KAAK,CAAC,KAAK,KAAK,cAAc;YAAE,aAAa,IAAI,CAAC,CAAC;QACvD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,mBAAmB;YAAE,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjF,IAAI,KAAK,CAAC,KAAK,KAAK,eAAe;YAAE,OAAO,GAAG,KAAK,CAAC,MAAM,IAAI,SAAS,CAAC;QACzE,0DAA0D;QAC1D,IAAI,KAAK,CAAC,KAAK,KAAK,eAAe;YAAE,OAAO,GAAG,IAAI,CAAC;QACpD,IAAI,KAAK,CAAC,KAAK,KAAK,iBAAiB;YAAE,SAAS,GAAG,IAAI,CAAC;IAC1D,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,CAAc,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;QACxB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;QACtB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;QACxB,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;QAC9B,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;QAC9B,aAAa;QACb,OAAO;QACP,SAAS;KACV,CAAC;AACJ,CAAC;AAYD,qFAAqF;AACrF,SAAS,gBAAgB,CAAC,KAAkB;IAC1C,MAAM,KAAK,GAAG;QACZ,KAAK,CAAC,YAAY;QAClB,KAAK,CAAC,qBAAqB;QAC3B,KAAK,CAAC,iBAAiB;QACvB,KAAK,CAAC,aAAa;KACpB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1E,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACpE,CAAC;AAED,0GAA0G;AAC1G,SAAgB,aAAa,CAAC,OAA+B;IAC3D,MAAM,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IACjD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACrF,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;YACtB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE;QACxD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QACjF,MAAM,KAAK,GAAG,IAAI;aACf,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;aAC5B,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,OAAO;YACL,KAAK,EAAE,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;YAClC,IAAI,EAAE,IAAI,CAAC,MAAM;YACjB,eAAe,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YAC7E,cAAc,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SAC3E,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACpF,CAAC;AAED,oFAAoF;AACpF,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;AAmC/D;;;;;GAKG;AACH,SAAgB,6BAA6B,CAAC,EAC5C,OAAO,EACP,KAAK,EACL,OAAO,EACP,OAAO,GAMR;IACC,MAAM,YAAY,GAAG,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;IAC5C,MAAM,UAAU,GAAG,IAAI,GAAG,CAAS;QACjC,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;QAC7B,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;KAC5E,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,IAAI,GAAG,CACrB;QACE,GAAG,OAAO,CAAC,OAAO;QAClB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;KAC5E;QACC,uEAAuE;QACvE,kDAAkD;SACjD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAC7C,CAAC;IACF,0DAA0D;IAC1D,MAAM,GAAG,GAAG,IAAI,GAAG,CAAS,CAAC,GAAG,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAS,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;IAC1F,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,KAAK,KAAK,IAAI;YAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,uFAAuF;IACvF,kFAAkF;IAClF,MAAM,OAAO,GACX,KAAK,KAAK,IAAI,IAAI,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;QACxD,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;YACjB,CAAC,CAAC,MAAM,CAAC,MAAM;YACf,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;QAC3D,CAAC,CAAC,IAAI,CAAC;IACX,yFAAyF;IACzF,iFAAiF;IACjF,MAAM,QAAQ,GAAG,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IAChG,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IAC9F,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACtF,MAAM,oBAAoB,GAAG,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC;IACtD,OAAO;QACL,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,IAAI;QAC7B,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,IAAI;QACrB,gBAAgB,EAAE,QAAQ,CAAC,IAAI;QAC/B,cAAc,EAAE,MAAM,CAAC,MAAM;QAC7B,SAAS,EAAE,OAAO,CAAC,IAAI;QACvB,WAAW,EAAE,UAAU,CAAC,IAAI;QAC5B,eAAe,EAAE,OAAO;QACxB,SAAS,EAAE,QAAQ;QACnB,mBAAmB,EAAE,OAAO,KAAK,IAAI,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI;QACjF,cAAc,EAAE,OAAO,CAAC,aAAa;QACrC,eAAe,EAAE,QAAQ;QACzB,cAAc,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QAClF,iBAAiB,EACf,QAAQ,KAAK,IAAI,IAAI,oBAAoB,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,oBAAoB,CAAC,CAAC,CAAC,IAAI;QACxF,QAAQ,EAAE,OAAO;KAClB,CAAC;AACJ,CAAC;AAED,+FAA+F;AAC/F,SAAgB,sBAAsB,CAAC,CAA2B;IAChE,MAAM,OAAO,GACX,CAAC,CAAC,eAAe,KAAK,IAAI;QACxB,CAAC,CAAC,GAAG,CAAC,CAAC,eAAe,eAAe,CAAC,CAAC,SAAS,kBAAkB,CAAC,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC,CAAC,kBAAkB;QACrH,CAAC,CAAC,sCAAsC,CAAC,CAAC,MAAM,IAAI,SAAS,yBAAyB,CAAC;IAC3F,MAAM,SAAS,GACb,CAAC,CAAC,iBAAiB,KAAK,IAAI;QAC1B,CAAC,CAAC,KAAK,IAAA,yBAAW,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,UAAU;QAClH,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,MAAM,GACV,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QACnB,CAAC,CAAC,CAAC,CAAC,QAAQ;aACP,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,WAAW,IAAI,IAAA,yBAAW,EAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;aACpF,IAAI,CAAC,IAAI,CAAC;QACf,CAAC,CAAC,eAAe,CAAC;IACtB,OAAO;QACL,YAAY,CAAC,CAAC,gBAAgB,cAAc,CAAC,CAAC,cAAc,YAAY,CAAC,CAAC,SAAS,UAAU;YAC3F,GAAG,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,GAAG;QAC7E,GAAG,IAAA,yBAAW,EAAC,CAAC,CAAC,eAAe,CAAC,mBAAmB,SAAS,eAAe,MAAM,EAAE;KACrF,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC"}
|
|
1
|
+
{"version":3,"file":"sched-run-stats.js","sourceRoot":"","sources":["../src/sched-run-stats.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Batch-prep token attribution (#796, parent #770 P6).
|
|
3
|
+
*
|
|
4
|
+
* `batch-issues-preparation` (classifier / prescreen agents) runs in the
|
|
5
|
+
* operator's Claude Code session, not as a scheduler dispatch, so no
|
|
6
|
+
* `runs/batch-<id>-*.log` carries its tokens. The one deterministic hook is
|
|
7
|
+
* `sched enqueue`, which prep calls to create the batch: it records the calling
|
|
8
|
+
* session id (`CLAUDE_CODE_SESSION_ID`, set by Claude Code for every child
|
|
9
|
+
* process) in `<sched-dir>/batch-prep.jsonl`. The usage ledger then attributes
|
|
10
|
+
* that session's spend — subagents included — to `batch:<id>`.
|
|
11
|
+
*
|
|
12
|
+
* An operator session outlives any one batch, so a record does not claim the
|
|
13
|
+
* whole session: it claims the window since the previous record of the same
|
|
14
|
+
* session (capped at {@link MAX_PREP_LOOKBACK_MS}) up to its own enqueue time.
|
|
15
|
+
* That is an upper bound — unrelated operator work inside the window counts
|
|
16
|
+
* too — and the figure is disclosed separately for that reason.
|
|
17
|
+
*/
|
|
18
|
+
import { type LedgerPaths } from './ledger';
|
|
19
|
+
import type { UsageRow } from './types';
|
|
20
|
+
export declare const BATCH_PREP_FILE = "batch-prep.jsonl";
|
|
21
|
+
/** A window never reaches further back than this, however long the session idled before enqueue. */
|
|
22
|
+
export declare const MAX_PREP_LOOKBACK_MS: number;
|
|
23
|
+
export interface BatchPrepRecord {
|
|
24
|
+
ts: string;
|
|
25
|
+
batch: string;
|
|
26
|
+
session_id: string;
|
|
27
|
+
/** How the session id was learned — the environment (deterministic) or an explicit flag. */
|
|
28
|
+
source: 'env' | 'flag';
|
|
29
|
+
}
|
|
30
|
+
export interface PrepWindow {
|
|
31
|
+
batch: string;
|
|
32
|
+
session_id: string;
|
|
33
|
+
fromMs: number;
|
|
34
|
+
toMs: number;
|
|
35
|
+
}
|
|
36
|
+
/** The calling Claude Code session, or null outside one. */
|
|
37
|
+
export declare function currentSessionId(env?: NodeJS.ProcessEnv): string | null;
|
|
38
|
+
/** Append one record per batch. Never throws (telemetry must not fail an enqueue). */
|
|
39
|
+
export declare function recordBatchPrep(schedDir: string, batches: readonly string[], sessionId: string, source: BatchPrepRecord['source'], now?: Date): void;
|
|
40
|
+
export declare function readBatchPrep(schedDir: string): BatchPrepRecord[];
|
|
41
|
+
/** Records → the time window each one claims (see the module comment). */
|
|
42
|
+
export declare function prepWindows(records: readonly BatchPrepRecord[]): PrepWindow[];
|
|
43
|
+
/**
|
|
44
|
+
* Stamp `batch:<id>` onto rows of a prep session (or its subagents) inside a
|
|
45
|
+
* window. Rows already attributed to a dispatch keep that attribution; a row
|
|
46
|
+
* two windows both claim (two batches from one enqueue call) goes to the first.
|
|
47
|
+
*/
|
|
48
|
+
export declare function applyPrepWindows(rows: UsageRow[], windows: readonly PrepWindow[]): void;
|
|
49
|
+
/** Every project's records under `schedRoot`, as windows. */
|
|
50
|
+
export declare function readAllPrepWindows(schedRoot: string): PrepWindow[];
|
|
51
|
+
export interface BatchPrepTokens {
|
|
52
|
+
/** Tokens of every class (input + output + cache) — the scorecard's billable total. */
|
|
53
|
+
billable_tokens: number;
|
|
54
|
+
sessions: number;
|
|
55
|
+
messages: number;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Prep tokens per batch id recorded in `schedDir`. A batch with no record on
|
|
59
|
+
* this host is absent from the map (unknown, not zero); a recorded batch whose
|
|
60
|
+
* transcripts are gone reads 0.
|
|
61
|
+
*/
|
|
62
|
+
export declare function batchPrepTokens(schedDir: string, batchIds?: readonly string[], paths?: LedgerPaths): Map<string, BatchPrepTokens>;
|
|
63
|
+
//# sourceMappingURL=batch-prep.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"batch-prep.d.ts","sourceRoot":"","sources":["../../src/usage/batch-prep.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,OAAO,EAAqC,KAAK,WAAW,EAAY,MAAM,UAAU,CAAC;AACzF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGxC,eAAO,MAAM,eAAe,qBAAqB,CAAC;AAElD,oGAAoG;AACpG,eAAO,MAAM,oBAAoB,QAAqB,CAAC;AAEvD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,4FAA4F;IAC5F,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,4DAA4D;AAC5D,wBAAgB,gBAAgB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,GAAG,IAAI,CAGpF;AAED,sFAAsF;AACtF,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,EACjC,GAAG,GAAE,IAAiB,GACrB,IAAI,CAKN;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,EAAE,CAYjE;AAED,0EAA0E;AAC1E,wBAAgB,WAAW,CAAC,OAAO,EAAE,SAAS,eAAe,EAAE,GAAG,UAAU,EAAE,CAmB7E;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI,CAYvF;AAED,6DAA6D;AAC7D,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,EAAE,CAMlE;AAED,MAAM,WAAW,eAAe;IAC9B,uFAAuF;IACvF,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,EAC5B,KAAK,GAAE,WAAkC,GACxC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAyB9B"}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Batch-prep token attribution (#796, parent #770 P6).
|
|
4
|
+
*
|
|
5
|
+
* `batch-issues-preparation` (classifier / prescreen agents) runs in the
|
|
6
|
+
* operator's Claude Code session, not as a scheduler dispatch, so no
|
|
7
|
+
* `runs/batch-<id>-*.log` carries its tokens. The one deterministic hook is
|
|
8
|
+
* `sched enqueue`, which prep calls to create the batch: it records the calling
|
|
9
|
+
* session id (`CLAUDE_CODE_SESSION_ID`, set by Claude Code for every child
|
|
10
|
+
* process) in `<sched-dir>/batch-prep.jsonl`. The usage ledger then attributes
|
|
11
|
+
* that session's spend — subagents included — to `batch:<id>`.
|
|
12
|
+
*
|
|
13
|
+
* An operator session outlives any one batch, so a record does not claim the
|
|
14
|
+
* whole session: it claims the window since the previous record of the same
|
|
15
|
+
* session (capped at {@link MAX_PREP_LOOKBACK_MS}) up to its own enqueue time.
|
|
16
|
+
* That is an upper bound — unrelated operator work inside the window counts
|
|
17
|
+
* too — and the figure is disclosed separately for that reason.
|
|
18
|
+
*/
|
|
19
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
20
|
+
if (k2 === undefined) k2 = k;
|
|
21
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
22
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
23
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
24
|
+
}
|
|
25
|
+
Object.defineProperty(o, k2, desc);
|
|
26
|
+
}) : (function(o, m, k, k2) {
|
|
27
|
+
if (k2 === undefined) k2 = k;
|
|
28
|
+
o[k2] = m[k];
|
|
29
|
+
}));
|
|
30
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
31
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
32
|
+
}) : function(o, v) {
|
|
33
|
+
o["default"] = v;
|
|
34
|
+
});
|
|
35
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
36
|
+
var ownKeys = function(o) {
|
|
37
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
38
|
+
var ar = [];
|
|
39
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
40
|
+
return ar;
|
|
41
|
+
};
|
|
42
|
+
return ownKeys(o);
|
|
43
|
+
};
|
|
44
|
+
return function (mod) {
|
|
45
|
+
if (mod && mod.__esModule) return mod;
|
|
46
|
+
var result = {};
|
|
47
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
48
|
+
__setModuleDefault(result, mod);
|
|
49
|
+
return result;
|
|
50
|
+
};
|
|
51
|
+
})();
|
|
52
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
53
|
+
exports.MAX_PREP_LOOKBACK_MS = exports.BATCH_PREP_FILE = void 0;
|
|
54
|
+
exports.currentSessionId = currentSessionId;
|
|
55
|
+
exports.recordBatchPrep = recordBatchPrep;
|
|
56
|
+
exports.readBatchPrep = readBatchPrep;
|
|
57
|
+
exports.prepWindows = prepWindows;
|
|
58
|
+
exports.applyPrepWindows = applyPrepWindows;
|
|
59
|
+
exports.readAllPrepWindows = readAllPrepWindows;
|
|
60
|
+
exports.batchPrepTokens = batchPrepTokens;
|
|
61
|
+
const path = __importStar(require("node:path"));
|
|
62
|
+
const sched_1 = require("@ai-dossier/sched");
|
|
63
|
+
const ledger_1 = require("./ledger");
|
|
64
|
+
const util_1 = require("./util");
|
|
65
|
+
exports.BATCH_PREP_FILE = 'batch-prep.jsonl';
|
|
66
|
+
/** A window never reaches further back than this, however long the session idled before enqueue. */
|
|
67
|
+
exports.MAX_PREP_LOOKBACK_MS = 6 * 60 * 60 * 1000;
|
|
68
|
+
/** The calling Claude Code session, or null outside one. */
|
|
69
|
+
function currentSessionId(env = process.env) {
|
|
70
|
+
const id = env.CLAUDE_CODE_SESSION_ID;
|
|
71
|
+
return typeof id === 'string' && /^[A-Za-z0-9._-]{8,128}$/.test(id) ? id : null;
|
|
72
|
+
}
|
|
73
|
+
/** Append one record per batch. Never throws (telemetry must not fail an enqueue). */
|
|
74
|
+
function recordBatchPrep(schedDir, batches, sessionId, source, now = new Date()) {
|
|
75
|
+
for (const batch of [...new Set(batches)]) {
|
|
76
|
+
const record = { ts: now.toISOString(), batch, session_id: sessionId, source };
|
|
77
|
+
(0, sched_1.appendJsonl)(path.join(schedDir, exports.BATCH_PREP_FILE), record);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
function readBatchPrep(schedDir) {
|
|
81
|
+
try {
|
|
82
|
+
return (0, sched_1.readJsonl)(path.join(schedDir, exports.BATCH_PREP_FILE)).filter((r) => r &&
|
|
83
|
+
typeof r.batch === 'string' &&
|
|
84
|
+
typeof r.session_id === 'string' &&
|
|
85
|
+
!Number.isNaN(Date.parse(r.ts)));
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
return [];
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
/** Records → the time window each one claims (see the module comment). */
|
|
92
|
+
function prepWindows(records) {
|
|
93
|
+
const sorted = [...records].sort((a, b) => Date.parse(a.ts) - Date.parse(b.ts) || a.batch.localeCompare(b.batch));
|
|
94
|
+
return sorted.map((r) => {
|
|
95
|
+
const toMs = Date.parse(r.ts);
|
|
96
|
+
// Latest strictly-earlier enqueue from the same session bounds the window.
|
|
97
|
+
let prevMs = Number.NEGATIVE_INFINITY;
|
|
98
|
+
for (const other of sorted) {
|
|
99
|
+
const otherMs = Date.parse(other.ts);
|
|
100
|
+
if (other.session_id === r.session_id && otherMs < toMs)
|
|
101
|
+
prevMs = Math.max(prevMs, otherMs);
|
|
102
|
+
}
|
|
103
|
+
return {
|
|
104
|
+
batch: r.batch,
|
|
105
|
+
session_id: r.session_id,
|
|
106
|
+
fromMs: Math.max(prevMs, toMs - exports.MAX_PREP_LOOKBACK_MS),
|
|
107
|
+
toMs,
|
|
108
|
+
};
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Stamp `batch:<id>` onto rows of a prep session (or its subagents) inside a
|
|
113
|
+
* window. Rows already attributed to a dispatch keep that attribution; a row
|
|
114
|
+
* two windows both claim (two batches from one enqueue call) goes to the first.
|
|
115
|
+
*/
|
|
116
|
+
function applyPrepWindows(rows, windows) {
|
|
117
|
+
if (windows.length === 0)
|
|
118
|
+
return;
|
|
119
|
+
for (const row of rows) {
|
|
120
|
+
if (row.unit !== null)
|
|
121
|
+
continue;
|
|
122
|
+
const root = row.session_id.split('/')[0];
|
|
123
|
+
const ts = Date.parse(row.ts);
|
|
124
|
+
const hit = windows.find((w) => w.session_id === root && ts > w.fromMs && ts <= w.toMs);
|
|
125
|
+
if (!hit)
|
|
126
|
+
continue;
|
|
127
|
+
row.unit = `batch:${hit.batch}`;
|
|
128
|
+
row.batch = hit.batch;
|
|
129
|
+
row.role = 'prep';
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
/** Every project's records under `schedRoot`, as windows. */
|
|
133
|
+
function readAllPrepWindows(schedRoot) {
|
|
134
|
+
const records = [];
|
|
135
|
+
for (const project of (0, util_1.safeReaddir)(schedRoot)) {
|
|
136
|
+
if (project.isDirectory())
|
|
137
|
+
records.push(...readBatchPrep(path.join(schedRoot, project.name)));
|
|
138
|
+
}
|
|
139
|
+
return prepWindows(records);
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Prep tokens per batch id recorded in `schedDir`. A batch with no record on
|
|
143
|
+
* this host is absent from the map (unknown, not zero); a recorded batch whose
|
|
144
|
+
* transcripts are gone reads 0.
|
|
145
|
+
*/
|
|
146
|
+
function batchPrepTokens(schedDir, batchIds, paths = (0, ledger_1.defaultLedgerPaths)()) {
|
|
147
|
+
const wanted = batchIds ? new Set(batchIds) : null;
|
|
148
|
+
const records = readBatchPrep(schedDir).filter((r) => !wanted || wanted.has(r.batch));
|
|
149
|
+
const out = new Map();
|
|
150
|
+
if (records.length === 0)
|
|
151
|
+
return out;
|
|
152
|
+
const windows = prepWindows(records);
|
|
153
|
+
const sessions = new Map();
|
|
154
|
+
for (const w of windows) {
|
|
155
|
+
out.set(w.batch, out.get(w.batch) ?? { billable_tokens: 0, sessions: 0, messages: 0 });
|
|
156
|
+
sessions.set(w.batch, (sessions.get(w.batch) ?? new Set()).add(w.session_id));
|
|
157
|
+
}
|
|
158
|
+
for (const [batch, set] of sessions)
|
|
159
|
+
out.get(batch).sessions = set.size;
|
|
160
|
+
const { rows } = (0, ledger_1.collectLedger)({
|
|
161
|
+
sinceMs: Math.min(...windows.map((w) => w.fromMs)),
|
|
162
|
+
untilMs: Math.max(...windows.map((w) => w.toMs)) + 1,
|
|
163
|
+
paths,
|
|
164
|
+
});
|
|
165
|
+
for (const row of rows) {
|
|
166
|
+
if (row.role !== 'prep' || row.batch === null)
|
|
167
|
+
continue;
|
|
168
|
+
const entry = out.get(row.batch);
|
|
169
|
+
if (!entry)
|
|
170
|
+
continue;
|
|
171
|
+
entry.billable_tokens += (0, ledger_1.rowTotal)(row);
|
|
172
|
+
entry.messages += 1;
|
|
173
|
+
}
|
|
174
|
+
return out;
|
|
175
|
+
}
|
|
176
|
+
//# sourceMappingURL=batch-prep.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"batch-prep.js","sourceRoot":"","sources":["../../src/usage/batch-prep.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger.d.ts","sourceRoot":"","sources":["../../src/usage/ledger.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"ledger.d.ts","sourceRoot":"","sources":["../../src/usage/ledger.ts"],"names":[],"mappings":"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"}
|
package/dist/usage/ledger.js
CHANGED
|
@@ -54,6 +54,7 @@ exports.limitContexts = limitContexts;
|
|
|
54
54
|
const os = __importStar(require("node:os"));
|
|
55
55
|
const path = __importStar(require("node:path"));
|
|
56
56
|
const core_1 = require("@ai-dossier/core");
|
|
57
|
+
const batch_prep_1 = require("./batch-prep");
|
|
57
58
|
const collect_claude_1 = require("./collect-claude");
|
|
58
59
|
const collect_dispatch_1 = require("./collect-dispatch");
|
|
59
60
|
const collect_opencode_1 = require("./collect-opencode");
|
|
@@ -114,6 +115,7 @@ function collectLedger(opts) {
|
|
|
114
115
|
}
|
|
115
116
|
const index = (0, collect_dispatch_1.indexDispatchLogs)(opts.paths.schedRoot, opts.sinceMs);
|
|
116
117
|
(0, collect_dispatch_1.applyDispatchIndex)(rows, index);
|
|
118
|
+
(0, batch_prep_1.applyPrepWindows)(rows, (0, batch_prep_1.readAllPrepWindows)(opts.paths.schedRoot));
|
|
117
119
|
collectors.push({ source: 'sched-dispatch-logs', status: 'ok', rows: index.size });
|
|
118
120
|
limits.push(...(0, collect_dispatch_1.collectSchedLimitEvents)(opts.paths.schedRoot, opts.sinceMs, opts.untilMs, host));
|
|
119
121
|
limits.sort((a, b) => a.ts.localeCompare(b.ts));
|
package/dist/usage/ledger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../src/usage/ledger.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../src/usage/ledger.ts"],"names":[],"mappings":"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"}
|
package/dist/usage/types.d.ts
CHANGED
|
@@ -42,6 +42,8 @@ export interface UsageRow {
|
|
|
42
42
|
batch: string | null;
|
|
43
43
|
/** Scheduler unit (`issue:<n>`, `batch:<id>`) when the session was sched-dispatched. */
|
|
44
44
|
unit: string | null;
|
|
45
|
+
/** `prep` when the row is batch-prep spend attributed to `batch` by enqueue-time session capture (#796). */
|
|
46
|
+
role?: 'prep';
|
|
45
47
|
}
|
|
46
48
|
/** A provider limit / rate-limit wall observed in a source store. */
|
|
47
49
|
export interface LimitEvent {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/usage/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,uCAAuC;AACvC,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,UAAU,CAAC;AAErD,oHAAoH;AACpH,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3D,MAAM,WAAW,QAAQ;IACvB,iGAAiG;IACjG,EAAE,EAAE,MAAM,CAAC;IACX,8EAA8E;IAC9E,IAAI,EAAE,MAAM,CAAC;IACb,4GAA4G;IAC5G,QAAQ,EAAE,MAAM,CAAC;IACjB,2FAA2F;IAC3F,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,4FAA4F;IAC5F,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,sGAAsG;IACtG,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB,uFAAuF;IACvF,UAAU,EAAE,MAAM,CAAC;IACnB,oHAAoH;IACpH,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,wGAAwG;IACxG,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,WAAW,GAAG,IAAI,CAAC;IACjC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,wFAAwF;IACxF,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/usage/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,uCAAuC;AACvC,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,UAAU,CAAC;AAErD,oHAAoH;AACpH,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3D,MAAM,WAAW,QAAQ;IACvB,iGAAiG;IACjG,EAAE,EAAE,MAAM,CAAC;IACX,8EAA8E;IAC9E,IAAI,EAAE,MAAM,CAAC;IACb,4GAA4G;IAC5G,QAAQ,EAAE,MAAM,CAAC;IACjB,2FAA2F;IAC3F,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,4FAA4F;IAC5F,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,sGAAsG;IACtG,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB,uFAAuF;IACvF,UAAU,EAAE,MAAM,CAAC;IACnB,oHAAoH;IACpH,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,wGAAwG;IACxG,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,WAAW,GAAG,IAAI,CAAC;IACjC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,wFAAwF;IACxF,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,4GAA4G;IAC5G,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,qEAAqE;AACrE,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC;IAChC,uFAAuF;IACvF,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,0DAA0D;IAC1D,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,6CAA6C;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,mHAAmH;IACnH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,6GAA6G;AAC7G,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,IAAI,GAAG,aAAa,GAAG,OAAO,CAAC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,+CAA+C;AAC/C,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,qGAAqG;IACrG,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify-dossier.d.ts","sourceRoot":"","sources":["../src/verify-dossier.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAEV,kBAAkB,EAInB,MAAM,kBAAkB,CAAC;AAsD1B,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;CAClB;AAQD,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,SAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAkClF;AAMD,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,kBAAkB,GAC9B,OAAO,CAAC,oBAAoB,CAAC,CAqD/B;AAsDD,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"verify-dossier.d.ts","sourceRoot":"","sources":["../src/verify-dossier.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAEV,kBAAkB,EAInB,MAAM,kBAAkB,CAAC;AAsD1B,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;CAClB;AAQD,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,SAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAkClF;AAMD,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,kBAAkB,GAC9B,OAAO,CAAC,oBAAoB,CAAC,CAqD/B;AAsDD,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CA6I3F;AAMD,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,wBAAgB,SAAS,IAAI,UAAU,CAmBtC;AAED,wBAAgB,QAAQ,IAAI,IAAI,CAsC/B;AAMD,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAe1C"}
|
package/dist/verify-dossier.js
CHANGED
|
@@ -19,20 +19,14 @@ const node_fs_1 = __importDefault(require("node:fs"));
|
|
|
19
19
|
const node_http_1 = __importDefault(require("node:http"));
|
|
20
20
|
const node_https_1 = __importDefault(require("node:https"));
|
|
21
21
|
const core_1 = require("@ai-dossier/core");
|
|
22
|
+
const color_1 = require("./color");
|
|
22
23
|
const github_url_1 = require("./github-url");
|
|
24
|
+
const verify_guidance_1 = require("./verify-guidance");
|
|
23
25
|
// ============================================================================
|
|
24
26
|
// Terminal colors
|
|
25
27
|
// ============================================================================
|
|
26
|
-
const colors = {
|
|
27
|
-
reset: '\x1b[0m',
|
|
28
|
-
bright: '\x1b[1m',
|
|
29
|
-
red: '\x1b[31m',
|
|
30
|
-
green: '\x1b[32m',
|
|
31
|
-
yellow: '\x1b[33m',
|
|
32
|
-
cyan: '\x1b[36m',
|
|
33
|
-
};
|
|
34
28
|
function log(message, color = 'reset') {
|
|
35
|
-
console.log(`${colors[color]}${message}${colors.reset}`);
|
|
29
|
+
console.log(`${color_1.colors[color]}${message}${color_1.colors.reset}`);
|
|
36
30
|
}
|
|
37
31
|
function error(message) {
|
|
38
32
|
log(`\u274C ${message}`, 'red');
|
|
@@ -46,6 +40,13 @@ function warning(message) {
|
|
|
46
40
|
function info(message) {
|
|
47
41
|
log(`\u2139\uFE0F ${message}`, 'cyan');
|
|
48
42
|
}
|
|
43
|
+
/** Print indented guidance lines under a failure. */
|
|
44
|
+
function printGuidance(lines) {
|
|
45
|
+
console.log('');
|
|
46
|
+
for (const line of lines)
|
|
47
|
+
console.log(line ? ` ${line}` : '');
|
|
48
|
+
console.log('');
|
|
49
|
+
}
|
|
49
50
|
// ============================================================================
|
|
50
51
|
// Download with redirect depth limit
|
|
51
52
|
// ============================================================================
|
|
@@ -148,7 +149,7 @@ function printTrustHint(signature) {
|
|
|
148
149
|
? signature?.key_id
|
|
149
150
|
: signature?.public_key && (0, core_1.normalizePublicKey)(signature.public_key);
|
|
150
151
|
if (!publicKey || !((0, core_1.isSupportedPublicKey)(publicKey) || (0, core_1.isKmsKeyIdentifier)(publicKey))) {
|
|
151
|
-
console.log(`\n ${colors.cyan}This signature carries no key in a form that can be trusted.${colors.reset}\n`);
|
|
152
|
+
console.log(`\n ${color_1.colors.cyan}This signature carries no key in a form that can be trusted.${color_1.colors.reset}\n`);
|
|
152
153
|
return;
|
|
153
154
|
}
|
|
154
155
|
const identifier = signature?.signed_by
|
|
@@ -158,15 +159,15 @@ function printTrustHint(signature) {
|
|
|
158
159
|
.replace(/\s+/g, '-')
|
|
159
160
|
.replace(/[^a-z0-9._-]/g, '')
|
|
160
161
|
.slice(0, MAX_SUGGESTED_IDENTIFIER_LENGTH) || 'unknown-signer';
|
|
161
|
-
console.log(`\n ${colors.cyan}To trust this signer, run:${colors.reset}`);
|
|
162
|
-
console.log(` ${colors.bright}ai-dossier keys add "${publicKey}" "${identifier}"${colors.reset}\n`);
|
|
162
|
+
console.log(`\n ${color_1.colors.cyan}To trust this signer, run:${color_1.colors.reset}`);
|
|
163
|
+
console.log(` ${color_1.colors.bright}ai-dossier keys add "${publicKey}" "${identifier}"${color_1.colors.reset}\n`);
|
|
163
164
|
}
|
|
164
165
|
// ============================================================================
|
|
165
166
|
// Main verification
|
|
166
167
|
// ============================================================================
|
|
167
168
|
async function verifyDossier(input, options) {
|
|
168
169
|
try {
|
|
169
|
-
log(`\n${colors.bright}\uD83D\uDD10 Dossier Verification Tool${colors.reset}\n`);
|
|
170
|
+
log(`\n${color_1.colors.bright}\uD83D\uDD10 Dossier Verification Tool${color_1.colors.reset}\n`);
|
|
170
171
|
const isUrl = input.startsWith('http://') || input.startsWith('https://');
|
|
171
172
|
let content;
|
|
172
173
|
if (isUrl) {
|
|
@@ -185,13 +186,13 @@ async function verifyDossier(input, options) {
|
|
|
185
186
|
const { frontmatter, body } = parsed;
|
|
186
187
|
success(`Parsed: ${frontmatter.title} v${frontmatter.version}`);
|
|
187
188
|
if (options.verbose) {
|
|
188
|
-
console.log(`\n${colors.bright}Dossier Metadata:${colors.reset}`);
|
|
189
|
+
console.log(`\n${color_1.colors.bright}Dossier Metadata:${color_1.colors.reset}`);
|
|
189
190
|
console.log(` Title: ${frontmatter.title}`);
|
|
190
191
|
console.log(` Version: ${frontmatter.version}`);
|
|
191
192
|
console.log(` Risk Level: ${frontmatter.risk_level ?? 'not specified'}`);
|
|
192
193
|
}
|
|
193
194
|
// Verify checksum (using core directly)
|
|
194
|
-
console.log(`\n${colors.bright}\uD83D\uDCCA Integrity Check:${colors.reset}`);
|
|
195
|
+
console.log(`\n${color_1.colors.bright}\uD83D\uDCCA Integrity Check:${color_1.colors.reset}`);
|
|
195
196
|
const integrityResult = (0, core_1.verifyIntegrity)(body, frontmatter.checksum?.hash);
|
|
196
197
|
const checksumPassed = integrityResult.status === 'valid';
|
|
197
198
|
if (checksumPassed) {
|
|
@@ -201,14 +202,17 @@ async function verifyDossier(input, options) {
|
|
|
201
202
|
}
|
|
202
203
|
}
|
|
203
204
|
else {
|
|
204
|
-
error(
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
205
|
+
error(integrityResult.status === 'missing'
|
|
206
|
+
? 'Checksum MISSING - dossier declares no checksum'
|
|
207
|
+
: 'Checksum INVALID - content has been modified!');
|
|
208
|
+
printGuidance((0, verify_guidance_1.checksumFailureGuidance)({
|
|
209
|
+
input,
|
|
210
|
+
expected: integrityResult.expectedHash,
|
|
211
|
+
actual: integrityResult.actualHash,
|
|
212
|
+
}));
|
|
209
213
|
}
|
|
210
214
|
// Verify signature
|
|
211
|
-
console.log(`\n${colors.bright}\uD83D\uDD0F Authenticity Check:${colors.reset}`);
|
|
215
|
+
console.log(`\n${color_1.colors.bright}\uD83D\uDD0F Authenticity Check:${color_1.colors.reset}`);
|
|
212
216
|
const signatureResult = await checkSignature(body, frontmatter);
|
|
213
217
|
if (signatureResult.present) {
|
|
214
218
|
if (signatureResult.verified && signatureResult.trusted) {
|
|
@@ -226,13 +230,19 @@ async function verifyDossier(input, options) {
|
|
|
226
230
|
if (frontmatter.signature?.signed_by) {
|
|
227
231
|
console.log(` Signed by: ${frontmatter.signature.signed_by}`);
|
|
228
232
|
}
|
|
233
|
+
printGuidance((0, verify_guidance_1.signatureFailureGuidance)({
|
|
234
|
+
input,
|
|
235
|
+
error: signatureResult.message.startsWith('Verification error: ')
|
|
236
|
+
? signatureResult.message.slice('Verification error: '.length)
|
|
237
|
+
: undefined,
|
|
238
|
+
}));
|
|
229
239
|
}
|
|
230
240
|
}
|
|
231
241
|
else {
|
|
232
242
|
warning('No signature present (dossier is unsigned)');
|
|
233
243
|
}
|
|
234
244
|
// Assess risk (using core function)
|
|
235
|
-
console.log(`\n${colors.bright}\uD83D\uDD34 Risk Assessment:${colors.reset}`);
|
|
245
|
+
console.log(`\n${color_1.colors.bright}\uD83D\uDD34 Risk Assessment:${color_1.colors.reset}`);
|
|
236
246
|
const checksumStatus = { passed: checksumPassed };
|
|
237
247
|
const signatureStatus = {
|
|
238
248
|
present: signatureResult.present,
|
|
@@ -254,7 +264,7 @@ async function verifyDossier(input, options) {
|
|
|
254
264
|
});
|
|
255
265
|
}
|
|
256
266
|
// Recommendation
|
|
257
|
-
console.log(`\n${colors.bright}Recommendation:${colors.reset}`, risk.recommendation);
|
|
267
|
+
console.log(`\n${color_1.colors.bright}Recommendation:${color_1.colors.reset}`, risk.recommendation);
|
|
258
268
|
if (risk.recommendation === 'BLOCK') {
|
|
259
269
|
error('\nDO NOT EXECUTE this dossier');
|
|
260
270
|
console.log(' Security verification failed.');
|
|
@@ -303,18 +313,18 @@ function parseArgs() {
|
|
|
303
313
|
}
|
|
304
314
|
function showHelp() {
|
|
305
315
|
console.log(`
|
|
306
|
-
${colors.bright}Dossier Verification CLI${colors.reset}
|
|
316
|
+
${color_1.colors.bright}Dossier Verification CLI${color_1.colors.reset}
|
|
307
317
|
|
|
308
|
-
${colors.bright}Usage:${colors.reset}
|
|
318
|
+
${color_1.colors.bright}Usage:${color_1.colors.reset}
|
|
309
319
|
dossier-verify <file-or-url> Verify dossier security
|
|
310
320
|
dossier-verify --verbose <file-or-url> Show detailed verification
|
|
311
321
|
|
|
312
|
-
${colors.bright}Exit Codes:${colors.reset}
|
|
322
|
+
${color_1.colors.bright}Exit Codes:${color_1.colors.reset}
|
|
313
323
|
0 - Verification passed (safe to execute)
|
|
314
324
|
1 - Verification failed (do not execute)
|
|
315
325
|
2 - Error occurred (cannot verify)
|
|
316
326
|
|
|
317
|
-
${colors.bright}Examples:${colors.reset}
|
|
327
|
+
${color_1.colors.bright}Examples:${color_1.colors.reset}
|
|
318
328
|
# Verify local file
|
|
319
329
|
dossier-verify path/to/dossier.ds.md
|
|
320
330
|
|
|
@@ -328,13 +338,13 @@ ${colors.bright}Examples:${colors.reset}
|
|
|
328
338
|
echo "Security verification failed"
|
|
329
339
|
fi
|
|
330
340
|
|
|
331
|
-
${colors.bright}Security Checks:${colors.reset}
|
|
341
|
+
${color_1.colors.bright}Security Checks:${color_1.colors.reset}
|
|
332
342
|
\u2713 SHA256 checksum verification (required)
|
|
333
343
|
\u2713 Signature verification (if present)
|
|
334
344
|
\u2713 Trusted keys check
|
|
335
345
|
\u2713 Risk level assessment
|
|
336
346
|
|
|
337
|
-
${colors.bright}More Information:${colors.reset}
|
|
347
|
+
${color_1.colors.bright}More Information:${color_1.colors.reset}
|
|
338
348
|
Documentation: https://github.com/imboard/ai-dossier
|
|
339
349
|
Security: SECURITY_STATUS.md
|
|
340
350
|
Protocol: PROTOCOL.md
|