@ai-dossier/sched 0.9.0 → 0.11.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 +115 -16
- package/dist/batch-dispatch.d.ts.map +1 -1
- package/dist/batch-dispatch.js +6 -1
- package/dist/batch-dispatch.js.map +1 -1
- package/dist/dispatch.d.ts +35 -4
- package/dist/dispatch.d.ts.map +1 -1
- package/dist/dispatch.js +96 -5
- package/dist/dispatch.js.map +1 -1
- package/dist/engine.d.ts +8 -0
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +185 -45
- package/dist/engine.js.map +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -3
- package/dist/index.js.map +1 -1
- package/dist/journal.d.ts +24 -4
- package/dist/journal.d.ts.map +1 -1
- package/dist/journal.js +43 -13
- package/dist/journal.js.map +1 -1
- package/dist/run-log.d.ts +113 -0
- package/dist/run-log.d.ts.map +1 -0
- package/dist/run-log.js +255 -0
- package/dist/run-log.js.map +1 -0
- package/dist/state.d.ts +9 -3
- package/dist/state.d.ts.map +1 -1
- package/dist/state.js +25 -3
- package/dist/state.js.map +1 -1
- package/dist/types.d.ts +39 -4
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +2 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-dispatch `runs.jsonl` telemetry for the scheduler (#524).
|
|
3
|
+
*
|
|
4
|
+
* `packages/sched` spawns agents detached and never read their JSON result
|
|
5
|
+
* back — `~/.dossier/runs.jsonl` had zero entries for scheduler-dispatched
|
|
6
|
+
* units, so per-issue cost could not be baselined. This module closes that
|
|
7
|
+
* gap: one entry per completed dispatch (a redispatch/takeover produces
|
|
8
|
+
* another entry, not an update to the first — each is a distinct process
|
|
9
|
+
* with its own tokens/duration), written to the SAME `runs.jsonl` `cli`'s
|
|
10
|
+
* `ai-dossier run` already writes to, using the shared `RunLogEntry` schema
|
|
11
|
+
* from `@ai-dossier/core`.
|
|
12
|
+
*
|
|
13
|
+
* Deliberately not `cli`'s `appendRunLog` (`cli/src/run-log.ts`): `sched`
|
|
14
|
+
* cannot depend on `cli` (the dependency runs the other way). It is gated by
|
|
15
|
+
* its own opt-out instead — see {@link schedTelemetryEnabled}.
|
|
16
|
+
*/
|
|
17
|
+
import type { RunLogEntry } from '@ai-dossier/core';
|
|
18
|
+
import { runsLogPath, usageParserFor } from '@ai-dossier/core';
|
|
19
|
+
export { runsLogPath as schedRunsLogPath, usageParserFor };
|
|
20
|
+
/**
|
|
21
|
+
* Whether to write sched dispatch telemetry to `runs.jsonl`. Defaults to
|
|
22
|
+
* **on** — `sched stats` and the RFC-0001 cost gates exist because this data
|
|
23
|
+
* was missing (#524), so an operator who never touched the setting keeps it.
|
|
24
|
+
*
|
|
25
|
+
* A SEPARATE key from the CLI's `auditLog` (ai-dossier#524, decision 2).
|
|
26
|
+
* `auditLog` gates what `ai-dossier run` records about the user's own CLI
|
|
27
|
+
* invocations; honouring it here would silently give an operator who disabled
|
|
28
|
+
* it zero scheduler cost visibility, and ignoring it would just as silently
|
|
29
|
+
* widen a flag whose documented scope is the audit log. Two concerns, two
|
|
30
|
+
* keys, both honest: a disabled `schedTelemetry` makes `sched stats` say so
|
|
31
|
+
* rather than report an empty cohort as if nothing had run.
|
|
32
|
+
*
|
|
33
|
+
* Unreadable or malformed config is treated as "not opted out" — telemetry is
|
|
34
|
+
* the default, and a broken config file must not silently disable it.
|
|
35
|
+
*/
|
|
36
|
+
export declare function schedTelemetryEnabled(home?: string): boolean;
|
|
37
|
+
/** Everything `buildSchedRunLogEntry` needs to build one dispatch's entry. */
|
|
38
|
+
export interface SchedRunLogInput {
|
|
39
|
+
/** Scheduler unit id, e.g. `issue:524` or `batch:b1` — the run-log correlation key. */
|
|
40
|
+
unit: string;
|
|
41
|
+
/** The role this dispatch ran as, for the synthetic `dossier` label — `sched:cycle` / `sched:report`. */
|
|
42
|
+
role: string;
|
|
43
|
+
/** Command template's binary (`cmd[0]`) — selects the usage parser. */
|
|
44
|
+
cmd0: string;
|
|
45
|
+
/** Full argv actually spawned (binary + args, prompt excluded — travels on stdin). */
|
|
46
|
+
cmd: readonly string[];
|
|
47
|
+
/**
|
|
48
|
+
* This dispatch's OWN slice of the log file — never the whole file for a
|
|
49
|
+
* unit with prior dispatches. The log is per-unit and append-mode
|
|
50
|
+
* (`createSpawnDeps`), so a caller must read only
|
|
51
|
+
* `[log_offset_at_spawn, EOF)`, e.g. via `readDispatchLog(file, offset)` —
|
|
52
|
+
* passing the whole accumulated file here would parse (or double-count)
|
|
53
|
+
* a prior dispatch's output too. Null when unreadable.
|
|
54
|
+
*/
|
|
55
|
+
logContent: string | null;
|
|
56
|
+
/** `SlotEntry.spawned_at` at the start of this dispatch, or null when unknown (pre-#524 slot). */
|
|
57
|
+
spawnedAt: string | null;
|
|
58
|
+
/** Completion time (engine's `now()`), used for `timestamp` and — with `spawnedAt` — `duration_ms`. */
|
|
59
|
+
completedAt: Date;
|
|
60
|
+
/** The tier's configured model, used when the agent's own JSON result did not report one. */
|
|
61
|
+
configuredModel: string | null;
|
|
62
|
+
/** The scheduler's repo working directory (`EngineDeps.repoDir`) — the sched analogue of a CLI invocation's cwd. */
|
|
63
|
+
cwd: string;
|
|
64
|
+
/** Process exit/signal info, when the engine has it — usually not: see the field's own doc. */
|
|
65
|
+
exitCode?: number | null;
|
|
66
|
+
spawnError?: string | null;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Build one `RunLogEntry` for a completed sched dispatch.
|
|
70
|
+
*
|
|
71
|
+
* `input_tokens`/`output_tokens`/cache tokens/cost come from `parseAgentUsage`/
|
|
72
|
+
* `parseOpenCodeUsage` (via `usageParserFor`) — `modelUsage`-sourced, never
|
|
73
|
+
* blended with a top-level `usage` block (the fix for the ~43% fabricated-
|
|
74
|
+
* saving bug, #524). Null when `logContent` is missing or does not parse as
|
|
75
|
+
* the expected agent's result shape — never fabricated, and distinguishable
|
|
76
|
+
* from "no usage reported" only by reading `spawned_command`/`exit_code`
|
|
77
|
+
* alongside it (this function does not synthesize a separate "parse failed"
|
|
78
|
+
* flag: a null log plus a normal exit is itself the signal something
|
|
79
|
+
* upstream lost the output).
|
|
80
|
+
*
|
|
81
|
+
* `exit_code` is null for sched dispatches unless the caller supplies one:
|
|
82
|
+
* children are spawned detached and unref'd (dispatch.ts) so sched can
|
|
83
|
+
* survive its own restarts without owning the agent's lifetime — there is no
|
|
84
|
+
* `'exit'` event to read a real exit code from. This is a known, accepted
|
|
85
|
+
* gap, not a regression this function introduces.
|
|
86
|
+
*/
|
|
87
|
+
export declare function buildSchedRunLogEntry(input: SchedRunLogInput): RunLogEntry;
|
|
88
|
+
/**
|
|
89
|
+
* Append one entry to `~/.dossier/runs.jsonl`. Never throws — a telemetry
|
|
90
|
+
* write must not fail the reconcile tick it runs inside. Returns `false` on
|
|
91
|
+
* failure so the caller can journal it (`recordDispatchRunLog` does) rather
|
|
92
|
+
* than the write vanishing with zero operator-visible signal.
|
|
93
|
+
*
|
|
94
|
+
* A no-op returning `true` when {@link schedTelemetryEnabled} is false: the
|
|
95
|
+
* operator opted out, so writing nothing is the SUCCESSFUL outcome, not a
|
|
96
|
+
* failure for the caller to journal as a lost entry.
|
|
97
|
+
*/
|
|
98
|
+
export declare function appendSchedRunLog(entry: RunLogEntry, home?: string, onError?: (err: Error) => void): boolean;
|
|
99
|
+
/**
|
|
100
|
+
* Read a dispatch's log file, or null when it does not exist / cannot be
|
|
101
|
+
* read (never throws) — the "0 bytes" pilot symptom (#524) reads as an
|
|
102
|
+
* empty string here, distinct from a missing file, so callers can tell "the
|
|
103
|
+
* agent wrote nothing" from "we couldn't find the log".
|
|
104
|
+
*
|
|
105
|
+
* `offset` (#524) returns only bytes from that position onward — the log is
|
|
106
|
+
* per-unit and append-mode, so a redispatched unit's file holds every prior
|
|
107
|
+
* dispatch's output too; passing `slot.log_offset_at_spawn` here isolates
|
|
108
|
+
* just the dispatch currently being recorded. Default 0 preserves "read the
|
|
109
|
+
* whole file" for a unit's first dispatch (offset unknown / not yet spawned
|
|
110
|
+
* under this scheme).
|
|
111
|
+
*/
|
|
112
|
+
export declare function readDispatchLog(logFile: string, offset?: number): string | null;
|
|
113
|
+
//# sourceMappingURL=run-log.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-log.d.ts","sourceRoot":"","sources":["../src/run-log.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH,OAAO,KAAK,EAAiB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAG/D,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,cAAc,EAAE,CAAC;AAS3D;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAe5D;AA4BD,8EAA8E;AAC9E,MAAM,WAAW,gBAAgB;IAC/B,uFAAuF;IACvF,IAAI,EAAE,MAAM,CAAC;IACb,yGAAyG;IACzG,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAC;IACb,sFAAsF;IACtF,GAAG,EAAE,SAAS,MAAM,EAAE,CAAC;IACvB;;;;;;;OAOG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,kGAAkG;IAClG,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,uGAAuG;IACvG,WAAW,EAAE,IAAI,CAAC;IAClB,6FAA6F;IAC7F,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,oHAAoH;IACpH,GAAG,EAAE,MAAM,CAAC;IACZ,+FAA+F;IAC/F,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAWD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,gBAAgB,GAAG,WAAW,CA0B1E;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,WAAW,EAClB,IAAI,CAAC,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,GAC7B,OAAO,CAGT;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAI,GAAG,MAAM,GAAG,IAAI,CA0C1E"}
|
package/dist/run-log.js
ADDED
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Per-dispatch `runs.jsonl` telemetry for the scheduler (#524).
|
|
4
|
+
*
|
|
5
|
+
* `packages/sched` spawns agents detached and never read their JSON result
|
|
6
|
+
* back — `~/.dossier/runs.jsonl` had zero entries for scheduler-dispatched
|
|
7
|
+
* units, so per-issue cost could not be baselined. This module closes that
|
|
8
|
+
* gap: one entry per completed dispatch (a redispatch/takeover produces
|
|
9
|
+
* another entry, not an update to the first — each is a distinct process
|
|
10
|
+
* with its own tokens/duration), written to the SAME `runs.jsonl` `cli`'s
|
|
11
|
+
* `ai-dossier run` already writes to, using the shared `RunLogEntry` schema
|
|
12
|
+
* from `@ai-dossier/core`.
|
|
13
|
+
*
|
|
14
|
+
* Deliberately not `cli`'s `appendRunLog` (`cli/src/run-log.ts`): `sched`
|
|
15
|
+
* cannot depend on `cli` (the dependency runs the other way). It is gated by
|
|
16
|
+
* its own opt-out instead — see {@link schedTelemetryEnabled}.
|
|
17
|
+
*/
|
|
18
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
19
|
+
if (k2 === undefined) k2 = k;
|
|
20
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
21
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
22
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
23
|
+
}
|
|
24
|
+
Object.defineProperty(o, k2, desc);
|
|
25
|
+
}) : (function(o, m, k, k2) {
|
|
26
|
+
if (k2 === undefined) k2 = k;
|
|
27
|
+
o[k2] = m[k];
|
|
28
|
+
}));
|
|
29
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
30
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
31
|
+
}) : function(o, v) {
|
|
32
|
+
o["default"] = v;
|
|
33
|
+
});
|
|
34
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
35
|
+
var ownKeys = function(o) {
|
|
36
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
37
|
+
var ar = [];
|
|
38
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
39
|
+
return ar;
|
|
40
|
+
};
|
|
41
|
+
return ownKeys(o);
|
|
42
|
+
};
|
|
43
|
+
return function (mod) {
|
|
44
|
+
if (mod && mod.__esModule) return mod;
|
|
45
|
+
var result = {};
|
|
46
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
47
|
+
__setModuleDefault(result, mod);
|
|
48
|
+
return result;
|
|
49
|
+
};
|
|
50
|
+
})();
|
|
51
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
52
|
+
exports.usageParserFor = exports.schedRunsLogPath = void 0;
|
|
53
|
+
exports.schedTelemetryEnabled = schedTelemetryEnabled;
|
|
54
|
+
exports.buildSchedRunLogEntry = buildSchedRunLogEntry;
|
|
55
|
+
exports.appendSchedRunLog = appendSchedRunLog;
|
|
56
|
+
exports.readDispatchLog = readDispatchLog;
|
|
57
|
+
const fs = __importStar(require("node:fs"));
|
|
58
|
+
const os = __importStar(require("node:os"));
|
|
59
|
+
const path = __importStar(require("node:path"));
|
|
60
|
+
const core_1 = require("@ai-dossier/core");
|
|
61
|
+
Object.defineProperty(exports, "schedRunsLogPath", { enumerable: true, get: function () { return core_1.runsLogPath; } });
|
|
62
|
+
Object.defineProperty(exports, "usageParserFor", { enumerable: true, get: function () { return core_1.usageParserFor; } });
|
|
63
|
+
const journal_1 = require("./journal");
|
|
64
|
+
/**
|
|
65
|
+
* Config key gating sched dispatch telemetry — read from the same
|
|
66
|
+
* `~/.dossier/config.json` the CLI writes (`dossier config schedTelemetry
|
|
67
|
+
* false`), but read directly here because `sched` cannot depend on `cli`.
|
|
68
|
+
*/
|
|
69
|
+
const SCHED_TELEMETRY_KEY = 'schedTelemetry';
|
|
70
|
+
/**
|
|
71
|
+
* Whether to write sched dispatch telemetry to `runs.jsonl`. Defaults to
|
|
72
|
+
* **on** — `sched stats` and the RFC-0001 cost gates exist because this data
|
|
73
|
+
* was missing (#524), so an operator who never touched the setting keeps it.
|
|
74
|
+
*
|
|
75
|
+
* A SEPARATE key from the CLI's `auditLog` (ai-dossier#524, decision 2).
|
|
76
|
+
* `auditLog` gates what `ai-dossier run` records about the user's own CLI
|
|
77
|
+
* invocations; honouring it here would silently give an operator who disabled
|
|
78
|
+
* it zero scheduler cost visibility, and ignoring it would just as silently
|
|
79
|
+
* widen a flag whose documented scope is the audit log. Two concerns, two
|
|
80
|
+
* keys, both honest: a disabled `schedTelemetry` makes `sched stats` say so
|
|
81
|
+
* rather than report an empty cohort as if nothing had run.
|
|
82
|
+
*
|
|
83
|
+
* Unreadable or malformed config is treated as "not opted out" — telemetry is
|
|
84
|
+
* the default, and a broken config file must not silently disable it.
|
|
85
|
+
*/
|
|
86
|
+
function schedTelemetryEnabled(home) {
|
|
87
|
+
try {
|
|
88
|
+
const configFile = path.join(home ?? os.homedir(), '.dossier', 'config.json');
|
|
89
|
+
const parsed = JSON.parse(fs.readFileSync(configFile, 'utf-8'));
|
|
90
|
+
if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed))
|
|
91
|
+
return true;
|
|
92
|
+
const value = parsed[SCHED_TELEMETRY_KEY];
|
|
93
|
+
// `'false'` as well as `false`: `dossier config <key> <value>` stores the
|
|
94
|
+
// raw CLI string, so an operator following the documented opt-out writes
|
|
95
|
+
// the string. Accepting only the boolean made the advertised command a
|
|
96
|
+
// silent no-op (#524 review). `cli` coerces at write time now too; this
|
|
97
|
+
// keeps every config file already on disk working.
|
|
98
|
+
return !(value === false || value === 'false');
|
|
99
|
+
}
|
|
100
|
+
catch {
|
|
101
|
+
return true;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Most bytes of a dispatch log read back for usage parsing (#524 review).
|
|
106
|
+
* The log is agent-controlled and unbounded under `stream-json`; this caps
|
|
107
|
+
* what the reconcile tick holds in memory. 32 MiB is far more than any real
|
|
108
|
+
* dispatch's tail needs to reach its `result` event.
|
|
109
|
+
*/
|
|
110
|
+
const MAX_DISPATCH_LOG_BYTES = 32 * 1024 * 1024;
|
|
111
|
+
/** `RunLogEntry.dossier` for a sched-dispatched cycle/report agent. */
|
|
112
|
+
function schedDossierLabel(role) {
|
|
113
|
+
return `sched:${role}`;
|
|
114
|
+
}
|
|
115
|
+
// Sentinel values for the CLI-shaped fields a sched dispatch has no real
|
|
116
|
+
// answer for (they describe DOSSIER RESOLUTION, not an agent process) —
|
|
117
|
+
// named here so a reader of `runs.jsonl`/`ai-dossier history` can trace
|
|
118
|
+
// what each one means back to this comment, rather than a bare literal.
|
|
119
|
+
/** `RunLogEntry.resolved_version` — sched dispatches resolve no dossier version. */
|
|
120
|
+
const SCHED_RESOLVED_VERSION = 'n/a';
|
|
121
|
+
/** `RunLogEntry.source` — closest existing enum member; no registry/cache resolution happened. */
|
|
122
|
+
const SCHED_SOURCE = 'local';
|
|
123
|
+
/** `RunLogEntry.verification` — sched dispatches a process, it does not verify a dossier. */
|
|
124
|
+
const SCHED_VERIFICATION = 'skipped';
|
|
125
|
+
/** `RunLogEntry.user` — sched entries are machine-authored, not a human CLI invocation. */
|
|
126
|
+
const SCHED_USER = 'sched';
|
|
127
|
+
/** Whole milliseconds between `spawnedAt` and `completedAt`, or null when unmeasurable. */
|
|
128
|
+
function measureDuration(spawnedAt, completedAt) {
|
|
129
|
+
if (spawnedAt === null)
|
|
130
|
+
return null;
|
|
131
|
+
const started = Date.parse(spawnedAt);
|
|
132
|
+
if (Number.isNaN(started))
|
|
133
|
+
return null; // malformed spawned_at — unmeasurable, not zero
|
|
134
|
+
const elapsed = completedAt.getTime() - started;
|
|
135
|
+
return elapsed >= 0 ? elapsed : null; // negative = clock skew, not a real duration
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Build one `RunLogEntry` for a completed sched dispatch.
|
|
139
|
+
*
|
|
140
|
+
* `input_tokens`/`output_tokens`/cache tokens/cost come from `parseAgentUsage`/
|
|
141
|
+
* `parseOpenCodeUsage` (via `usageParserFor`) — `modelUsage`-sourced, never
|
|
142
|
+
* blended with a top-level `usage` block (the fix for the ~43% fabricated-
|
|
143
|
+
* saving bug, #524). Null when `logContent` is missing or does not parse as
|
|
144
|
+
* the expected agent's result shape — never fabricated, and distinguishable
|
|
145
|
+
* from "no usage reported" only by reading `spawned_command`/`exit_code`
|
|
146
|
+
* alongside it (this function does not synthesize a separate "parse failed"
|
|
147
|
+
* flag: a null log plus a normal exit is itself the signal something
|
|
148
|
+
* upstream lost the output).
|
|
149
|
+
*
|
|
150
|
+
* `exit_code` is null for sched dispatches unless the caller supplies one:
|
|
151
|
+
* children are spawned detached and unref'd (dispatch.ts) so sched can
|
|
152
|
+
* survive its own restarts without owning the agent's lifetime — there is no
|
|
153
|
+
* `'exit'` event to read a real exit code from. This is a known, accepted
|
|
154
|
+
* gap, not a regression this function introduces.
|
|
155
|
+
*/
|
|
156
|
+
function buildSchedRunLogEntry(input) {
|
|
157
|
+
const usage = (0, core_1.usageParserFor)(input.cmd0)(input.logContent);
|
|
158
|
+
const duration_ms = measureDuration(input.spawnedAt, input.completedAt);
|
|
159
|
+
return {
|
|
160
|
+
timestamp: input.completedAt.toISOString(),
|
|
161
|
+
dossier: schedDossierLabel(input.role),
|
|
162
|
+
resolved_version: SCHED_RESOLVED_VERSION,
|
|
163
|
+
source: SCHED_SOURCE,
|
|
164
|
+
verification: SCHED_VERIFICATION,
|
|
165
|
+
llm: input.cmd0,
|
|
166
|
+
user: SCHED_USER,
|
|
167
|
+
cwd: input.cwd,
|
|
168
|
+
nested: false,
|
|
169
|
+
duration_ms,
|
|
170
|
+
spawned_command: input.cmd.join(' '),
|
|
171
|
+
model: usage?.model ?? input.configuredModel ?? null,
|
|
172
|
+
exit_code: input.exitCode ?? null,
|
|
173
|
+
spawn_error: input.spawnError ?? null,
|
|
174
|
+
input_tokens: usage?.input_tokens ?? null,
|
|
175
|
+
output_tokens: usage?.output_tokens ?? null,
|
|
176
|
+
cache_creation_tokens: usage?.cache_creation_tokens ?? null,
|
|
177
|
+
cache_read_tokens: usage?.cache_read_tokens ?? null,
|
|
178
|
+
total_cost_usd: usage?.total_cost_usd ?? null,
|
|
179
|
+
unit: input.unit,
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Append one entry to `~/.dossier/runs.jsonl`. Never throws — a telemetry
|
|
184
|
+
* write must not fail the reconcile tick it runs inside. Returns `false` on
|
|
185
|
+
* failure so the caller can journal it (`recordDispatchRunLog` does) rather
|
|
186
|
+
* than the write vanishing with zero operator-visible signal.
|
|
187
|
+
*
|
|
188
|
+
* A no-op returning `true` when {@link schedTelemetryEnabled} is false: the
|
|
189
|
+
* operator opted out, so writing nothing is the SUCCESSFUL outcome, not a
|
|
190
|
+
* failure for the caller to journal as a lost entry.
|
|
191
|
+
*/
|
|
192
|
+
function appendSchedRunLog(entry, home, onError) {
|
|
193
|
+
if (!schedTelemetryEnabled(home))
|
|
194
|
+
return true;
|
|
195
|
+
return (0, journal_1.appendJsonl)((0, core_1.runsLogPath)(home), entry, onError);
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Read a dispatch's log file, or null when it does not exist / cannot be
|
|
199
|
+
* read (never throws) — the "0 bytes" pilot symptom (#524) reads as an
|
|
200
|
+
* empty string here, distinct from a missing file, so callers can tell "the
|
|
201
|
+
* agent wrote nothing" from "we couldn't find the log".
|
|
202
|
+
*
|
|
203
|
+
* `offset` (#524) returns only bytes from that position onward — the log is
|
|
204
|
+
* per-unit and append-mode, so a redispatched unit's file holds every prior
|
|
205
|
+
* dispatch's output too; passing `slot.log_offset_at_spawn` here isolates
|
|
206
|
+
* just the dispatch currently being recorded. Default 0 preserves "read the
|
|
207
|
+
* whole file" for a unit's first dispatch (offset unknown / not yet spawned
|
|
208
|
+
* under this scheme).
|
|
209
|
+
*/
|
|
210
|
+
function readDispatchLog(logFile, offset = 0) {
|
|
211
|
+
let fd = null;
|
|
212
|
+
try {
|
|
213
|
+
const size = fs.statSync(logFile).size;
|
|
214
|
+
// Bounded read (#524 review). A `stream-json` dispatch's log grows with
|
|
215
|
+
// every turn and tool result, and its size is controlled entirely by the
|
|
216
|
+
// spawned agent — reading it whole inside the reconcile tick would hold
|
|
217
|
+
// several times the file size resident and can OOM the long-lived
|
|
218
|
+
// scheduler. Read at most the last MAX_DISPATCH_LOG_BYTES: the final
|
|
219
|
+
// `result` event lives at the tail, so the primary path is unaffected and
|
|
220
|
+
// only the per-turn fallback degrades to a partial sum.
|
|
221
|
+
const start = Math.max(offset, size - MAX_DISPATCH_LOG_BYTES);
|
|
222
|
+
const length = size - start;
|
|
223
|
+
if (length <= 0)
|
|
224
|
+
return '';
|
|
225
|
+
// Byte offsets, not UTF-16 string indices: `offset` comes from
|
|
226
|
+
// `fs.statSync().size`, and a string index would misalign against any
|
|
227
|
+
// multi-byte UTF-8 content written before it.
|
|
228
|
+
const buffer = Buffer.allocUnsafe(length);
|
|
229
|
+
fd = fs.openSync(logFile, 'r');
|
|
230
|
+
const read = fs.readSync(fd, buffer, 0, length, start);
|
|
231
|
+
const text = buffer.subarray(0, read).toString('utf-8');
|
|
232
|
+
// When the window skipped past `offset`, its first line is almost
|
|
233
|
+
// certainly a partial one — drop it rather than feeding a truncated
|
|
234
|
+
// record to a parser.
|
|
235
|
+
if (start > offset) {
|
|
236
|
+
const firstBreak = text.indexOf('\n');
|
|
237
|
+
return firstBreak === -1 ? '' : text.slice(firstBreak + 1);
|
|
238
|
+
}
|
|
239
|
+
return text;
|
|
240
|
+
}
|
|
241
|
+
catch {
|
|
242
|
+
return null;
|
|
243
|
+
}
|
|
244
|
+
finally {
|
|
245
|
+
if (fd !== null) {
|
|
246
|
+
try {
|
|
247
|
+
fs.closeSync(fd);
|
|
248
|
+
}
|
|
249
|
+
catch {
|
|
250
|
+
// Already closed / invalid fd — nothing left to release.
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
//# sourceMappingURL=run-log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-log.js","sourceRoot":"","sources":["../src/run-log.ts"],"names":[],"mappings":"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"}
|
package/dist/state.d.ts
CHANGED
|
@@ -32,9 +32,13 @@ export declare function createBatch(id: string, members: readonly number[], now:
|
|
|
32
32
|
* `last_suspect_dispatch_unit` (null) — no suspect dispatches were tracked
|
|
33
33
|
* before, so the zero value is exact, not a guess; 1.5.0 (pre-#504) slots
|
|
34
34
|
* backfill `gen` (0) and `fenced_at` (null) — nothing was fenced before
|
|
35
|
-
* fencing existed, so those values are exact too; 1.6.0
|
|
36
|
-
*
|
|
37
|
-
*
|
|
35
|
+
* fencing existed, so those values are exact too; 1.6.0 slots backfill
|
|
36
|
+
* `spawned_at` and `log_offset_at_spawn` (both null, pre-#524) — an in-flight
|
|
37
|
+
* dispatch's start time and log position are unknown, not zero, so its
|
|
38
|
+
* duration and dispatch-log boundary are simply unmeasurable until the next
|
|
39
|
+
* spawn — and 1.6.0 batches backfill `worktree` (null) and `ranges` ([],
|
|
40
|
+
* pre-#523), no batch having been dispatched before the engine drove batch
|
|
41
|
+
* execution, so those are exact too. The
|
|
38
42
|
* inference is entry-status-first, not phase-first: `phase === 'report'` is
|
|
39
43
|
* exactly the signal #500 proved unreliable for a LIVE report agent (it
|
|
40
44
|
* drifts to the issue's pre-report milestone under `phase-updated` well
|
|
@@ -67,6 +71,8 @@ export declare const CLEARED_SLOT_FIELDS: {
|
|
|
67
71
|
last_head: null;
|
|
68
72
|
gen: number;
|
|
69
73
|
fenced_at: null;
|
|
74
|
+
spawned_at: null;
|
|
75
|
+
log_offset_at_spawn: null;
|
|
70
76
|
};
|
|
71
77
|
export declare function transitionSlot(state: SchedState, slotId: number, to: SlotStatus, patch?: Partial<SlotEntry>, now?: Date): SchedState;
|
|
72
78
|
/**
|
package/dist/state.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EACL,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,eAAe,EAEpB,KAAK,WAAW,EAEhB,KAAK,UAAU,EAIf,KAAK,UAAU,EAEf,KAAK,SAAS,EAEd,KAAK,UAAU,EAEhB,MAAM,SAAS,CAAC;AA+HjB,0EAA0E;AAC1E,wBAAgB,gBAAgB,IAAI,UAAU,CAY7C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,GAAG,EAAE,IAAI,EACT,IAAI,GAAE,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,GAAG,QAAQ,GAAG,QAAQ,GAAG,iBAAiB,CAAC,CAAM,GAC5F,UAAU,CAqBZ;AAoKD
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EACL,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,eAAe,EAEpB,KAAK,WAAW,EAEhB,KAAK,UAAU,EAIf,KAAK,UAAU,EAEf,KAAK,SAAS,EAEd,KAAK,UAAU,EAEhB,MAAM,SAAS,CAAC;AA+HjB,0EAA0E;AAC1E,wBAAgB,gBAAgB,IAAI,UAAU,CAY7C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,GAAG,EAAE,IAAI,EACT,IAAI,GAAE,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,GAAG,QAAQ,GAAG,QAAQ,GAAG,iBAAiB,CAAC,CAAM,GAC5F,UAAU,CAqBZ;AAoKD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,CA6QvD;AA0BD,wBAAgB,eAAe,CAC7B,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,WAAW,EACf,KAAK,GAAE,OAAO,CAAC,UAAU,CAAM,EAC/B,GAAG,GAAE,IAAiB,GACrB,UAAU,CAeZ;AAID,wBAAgB,eAAe,CAC7B,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,WAAW,EACf,KAAK,GAAE,OAAO,CAAC,UAAU,CAAM,EAC/B,GAAG,GAAE,IAAiB,GACrB,UAAU,CAeZ;AAID;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;CAe/B,CAAC;AAEF,wBAAgB,cAAc,CAC5B,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,UAAU,EACd,KAAK,GAAE,OAAO,CAAC,SAAS,CAAM,EAC9B,GAAG,GAAE,IAAiB,GACrB,UAAU,CAiBZ;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAE5D;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAErD;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,GAAG,QAAQ,CAAC,EACjD,GAAG,GAAE,IAAiB,GACrB,UAAU,CAOZ;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EACjD,MAAM,EAAE,MAAM,EACd,GAAG,GAAE,IAAiB,EAKtB,KAAK,GAAE;IAAE,gBAAgB,CAAC,EAAE,eAAe,GAAG,IAAI,CAAA;CAAO,GACxD;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAwB1C;AAID,wBAAgB,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAElF;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAEpF;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW;kBACR,WAAW;kBACX,WAAW;iBACZ,UAAU;CACxB,CAAC"}
|
package/dist/state.js
CHANGED
|
@@ -344,9 +344,13 @@ function validateBatchRecovery(batch, id) {
|
|
|
344
344
|
* `last_suspect_dispatch_unit` (null) — no suspect dispatches were tracked
|
|
345
345
|
* before, so the zero value is exact, not a guess; 1.5.0 (pre-#504) slots
|
|
346
346
|
* backfill `gen` (0) and `fenced_at` (null) — nothing was fenced before
|
|
347
|
-
* fencing existed, so those values are exact too; 1.6.0
|
|
348
|
-
*
|
|
349
|
-
*
|
|
347
|
+
* fencing existed, so those values are exact too; 1.6.0 slots backfill
|
|
348
|
+
* `spawned_at` and `log_offset_at_spawn` (both null, pre-#524) — an in-flight
|
|
349
|
+
* dispatch's start time and log position are unknown, not zero, so its
|
|
350
|
+
* duration and dispatch-log boundary are simply unmeasurable until the next
|
|
351
|
+
* spawn — and 1.6.0 batches backfill `worktree` (null) and `ranges` ([],
|
|
352
|
+
* pre-#523), no batch having been dispatched before the engine drove batch
|
|
353
|
+
* execution, so those are exact too. The
|
|
350
354
|
* inference is entry-status-first, not phase-first: `phase === 'report'` is
|
|
351
355
|
* exactly the signal #500 proved unreliable for a LIVE report agent (it
|
|
352
356
|
* drifts to the issue's pre-report milestone under `phase-updated` well
|
|
@@ -477,6 +481,16 @@ function validateState(data) {
|
|
|
477
481
|
!isIsoDateString(slot.fenced_at)) {
|
|
478
482
|
throw new Error(`Slot ${slot.id}: fenced_at must be an ISO date string or null`);
|
|
479
483
|
}
|
|
484
|
+
if (slot.spawned_at !== null &&
|
|
485
|
+
slot.spawned_at !== undefined &&
|
|
486
|
+
!isIsoDateString(slot.spawned_at)) {
|
|
487
|
+
throw new Error(`Slot ${slot.id}: spawned_at must be an ISO date string or null`);
|
|
488
|
+
}
|
|
489
|
+
if (slot.log_offset_at_spawn !== null &&
|
|
490
|
+
slot.log_offset_at_spawn !== undefined &&
|
|
491
|
+
(!Number.isInteger(slot.log_offset_at_spawn) || slot.log_offset_at_spawn < 0)) {
|
|
492
|
+
throw new Error(`Slot ${slot.id}: log_offset_at_spawn must be a non-negative integer or null`);
|
|
493
|
+
}
|
|
480
494
|
if (!isIsoDateString(slot.updated_at)) {
|
|
481
495
|
throw new Error(`Slot ${slot.id}: updated_at must be an ISO date string`);
|
|
482
496
|
}
|
|
@@ -545,6 +559,11 @@ function validateState(data) {
|
|
|
545
559
|
// own the unfenced generation and have no takeover pending.
|
|
546
560
|
gen: slot.gen ?? 0,
|
|
547
561
|
fenced_at: slot.fenced_at ?? null,
|
|
562
|
+
// Pre-#524 (1.6.0) slots carry no spawned_at/log_offset_at_spawn — their
|
|
563
|
+
// in-flight duration and log boundary (if any) are unknown, not zero, so
|
|
564
|
+
// both backfill to null like fenced_at.
|
|
565
|
+
spawned_at: slot.spawned_at ?? null,
|
|
566
|
+
log_offset_at_spawn: slot.log_offset_at_spawn ?? null,
|
|
548
567
|
}));
|
|
549
568
|
const entries = obj.entries.map((entry) => ({
|
|
550
569
|
...entry,
|
|
@@ -630,6 +649,9 @@ exports.CLEARED_SLOT_FIELDS = {
|
|
|
630
649
|
// flight — the next unit assigned here starts unfenced at generation 0.
|
|
631
650
|
gen: 0,
|
|
632
651
|
fenced_at: null,
|
|
652
|
+
// #524: a released slot holds no dispatch — its next spawn stamps these fresh.
|
|
653
|
+
spawned_at: null,
|
|
654
|
+
log_offset_at_spawn: null,
|
|
633
655
|
};
|
|
634
656
|
function transitionSlot(state, slotId, to, patch = {}, now = new Date()) {
|
|
635
657
|
const idx = state.slots.findIndex((s) => s.id === slotId);
|
package/dist/state.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
|