instar 1.0.11 → 1.0.13

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.
@@ -0,0 +1,43 @@
1
+ /**
2
+ * FrameworkSessionStore — resolve a session's transcript file path for the
3
+ * runtime that produced it.
4
+ *
5
+ * Portability audit Gap 3. PreCompactionFlush and ResumeValidator hardcoded
6
+ * Claude Code's transcript convention (`~/.claude/projects/<encoded-cwd>/
7
+ * <sessionId>.jsonl`). A Codex session is never found there, so compaction
8
+ * flush and resume validation silently no-op for Codex agents.
9
+ *
10
+ * Codex's layout was determined empirically from a live ~/.codex/ (Codex CLI
11
+ * 0.78.0), NOT guessed:
12
+ * ~/.codex/sessions/YYYY/MM/DD/rollout-<ISO8601-dashes>-<uuid>.jsonl
13
+ * where the trailing <uuid> equals the session id (and the first JSONL line
14
+ * is a `session_meta` record whose payload.id is that same uuid). Sessions
15
+ * are date-partitioned, NOT cwd-keyed, so a Codex lookup globs by id across
16
+ * the date tree rather than building a deterministic path.
17
+ *
18
+ * Pure path resolution + filesystem lookup. No mutation, no network.
19
+ */
20
+ export type SessionFramework = 'claude-code' | 'codex-cli';
21
+ export interface ResolveTranscriptOptions {
22
+ framework: SessionFramework;
23
+ sessionId: string;
24
+ /** Project working directory (used by the Claude Code cwd-encoded path). */
25
+ projectDir: string;
26
+ /** Home dir override (testing). Defaults to os.homedir(). */
27
+ homeDir?: string;
28
+ /**
29
+ * Root override (testing). For claude-code this replaces
30
+ * `<home>/.claude/projects`; for codex-cli it replaces
31
+ * `<home>/.codex/sessions`.
32
+ */
33
+ rootOverride?: string;
34
+ }
35
+ /**
36
+ * Resolve the transcript path for a session under the given framework.
37
+ * Returns '' when it cannot be resolved (no session id, or — for Codex —
38
+ * no matching file on disk yet). Callers already treat '' / missing-file
39
+ * as "nothing to flush/validate", so the failure mode is a safe no-op,
40
+ * identical to the pre-Gap-3 Claude behavior.
41
+ */
42
+ export declare function resolveFrameworkTranscriptPath(opts: ResolveTranscriptOptions): string;
43
+ //# sourceMappingURL=FrameworkSessionStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FrameworkSessionStore.d.ts","sourceRoot":"","sources":["../../src/core/FrameworkSessionStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAMH,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG,WAAW,CAAC;AAE3D,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,gBAAgB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAoDD;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM,CASrF"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * FrameworkSessionStore — resolve a session's transcript file path for the
3
+ * runtime that produced it.
4
+ *
5
+ * Portability audit Gap 3. PreCompactionFlush and ResumeValidator hardcoded
6
+ * Claude Code's transcript convention (`~/.claude/projects/<encoded-cwd>/
7
+ * <sessionId>.jsonl`). A Codex session is never found there, so compaction
8
+ * flush and resume validation silently no-op for Codex agents.
9
+ *
10
+ * Codex's layout was determined empirically from a live ~/.codex/ (Codex CLI
11
+ * 0.78.0), NOT guessed:
12
+ * ~/.codex/sessions/YYYY/MM/DD/rollout-<ISO8601-dashes>-<uuid>.jsonl
13
+ * where the trailing <uuid> equals the session id (and the first JSONL line
14
+ * is a `session_meta` record whose payload.id is that same uuid). Sessions
15
+ * are date-partitioned, NOT cwd-keyed, so a Codex lookup globs by id across
16
+ * the date tree rather than building a deterministic path.
17
+ *
18
+ * Pure path resolution + filesystem lookup. No mutation, no network.
19
+ */
20
+ import * as fs from 'node:fs';
21
+ import * as os from 'node:os';
22
+ import * as path from 'node:path';
23
+ /**
24
+ * Claude Code: deterministic path
25
+ * `<home>/.claude/projects/<cwd with [/.] → ->/<sessionId>.jsonl`.
26
+ * This mirrors the exact pre-Gap-3 logic in PreCompactionFlush so the
27
+ * Claude path is byte-for-byte unchanged.
28
+ */
29
+ function claudeTranscriptPath(opts) {
30
+ const home = opts.homeDir ?? os.homedir();
31
+ const root = opts.rootOverride ?? path.join(home, '.claude', 'projects');
32
+ const encoded = opts.projectDir.replace(/[\/.]/g, '-');
33
+ return path.join(root, encoded, `${opts.sessionId}.jsonl`);
34
+ }
35
+ /**
36
+ * Codex CLI: glob `<home>/.codex/sessions/YYYY/MM/DD/rollout-*-<id>.jsonl`.
37
+ * Empirically the filename ends with `-<sessionId>.jsonl`. Returns the
38
+ * first match (a session id is unique), or '' when not found.
39
+ */
40
+ function codexTranscriptPath(opts) {
41
+ const home = opts.homeDir ?? os.homedir();
42
+ const root = opts.rootOverride ?? path.join(home, '.codex', 'sessions');
43
+ if (!fs.existsSync(root))
44
+ return '';
45
+ const suffix = `-${opts.sessionId}.jsonl`;
46
+ // sessions/YYYY/MM/DD/<file>. Walk at most 3 levels deep.
47
+ const years = safeReaddir(root);
48
+ for (const y of years) {
49
+ const yDir = path.join(root, y);
50
+ for (const m of safeReaddir(yDir)) {
51
+ const mDir = path.join(yDir, m);
52
+ for (const d of safeReaddir(mDir)) {
53
+ const dDir = path.join(mDir, d);
54
+ for (const f of safeReaddir(dDir)) {
55
+ if (f.startsWith('rollout-') && f.endsWith(suffix)) {
56
+ return path.join(dDir, f);
57
+ }
58
+ }
59
+ }
60
+ }
61
+ }
62
+ return '';
63
+ }
64
+ function safeReaddir(dir) {
65
+ try {
66
+ return fs.readdirSync(dir);
67
+ }
68
+ catch {
69
+ return [];
70
+ }
71
+ }
72
+ /**
73
+ * Resolve the transcript path for a session under the given framework.
74
+ * Returns '' when it cannot be resolved (no session id, or — for Codex —
75
+ * no matching file on disk yet). Callers already treat '' / missing-file
76
+ * as "nothing to flush/validate", so the failure mode is a safe no-op,
77
+ * identical to the pre-Gap-3 Claude behavior.
78
+ */
79
+ export function resolveFrameworkTranscriptPath(opts) {
80
+ if (!opts.sessionId)
81
+ return '';
82
+ switch (opts.framework) {
83
+ case 'codex-cli':
84
+ return codexTranscriptPath(opts);
85
+ case 'claude-code':
86
+ default:
87
+ return claudeTranscriptPath(opts);
88
+ }
89
+ }
90
+ //# sourceMappingURL=FrameworkSessionStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FrameworkSessionStore.js","sourceRoot":"","sources":["../../src/core/FrameworkSessionStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAmBlC;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,IAA8B;IAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IACzE,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,QAAQ,CAAC,CAAC;AAC7D,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,IAA8B;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IACxE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,QAAQ,CAAC;IAC1C,0DAA0D;IAC1D,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAChC,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAChC,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBAChC,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;oBAClC,IAAI,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;wBACnD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBAC5B,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,WAAW,CAAC,GAAW;IAC9B,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,8BAA8B,CAAC,IAA8B;IAC3E,IAAI,CAAC,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAC/B,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;QACvB,KAAK,WAAW;YACd,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACnC,KAAK,aAAa,CAAC;QACnB;YACE,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;AACH,CAAC"}
@@ -54,6 +54,15 @@ export interface PreCompactionFlushDeps {
54
54
  agentLabel?: string;
55
55
  /** Optional override for transcript root (testing). Defaults to ~/.claude/projects. */
56
56
  claudeProjectsRoot?: string;
57
+ /**
58
+ * Runtime that produced this session. Drives transcript-path resolution
59
+ * via FrameworkSessionStore (portability audit Gap 3). Defaults to
60
+ * 'claude-code' — the historical behavior, so Claude installs are
61
+ * byte-for-byte unchanged.
62
+ */
63
+ framework?: 'claude-code' | 'codex-cli';
64
+ /** Optional override for the Codex sessions root (testing). */
65
+ codexSessionsRoot?: string;
57
66
  /** Now provider — overridable for tests. */
58
67
  now?: () => Date;
59
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PreCompactionFlush.d.ts","sourceRoot":"","sources":["../../src/core/PreCompactionFlush.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAMH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD,MAAM,WAAW,wBAAwB;IACvC,oCAAoC;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,uEAAuE;IACvE,gBAAgB,EAAE,MAAM,CAAC;IACzB,sEAAsE;IACtE,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,mCAAmC,EAAE,wBAIjD,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC1C,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uFAAuF;IACvF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,4CAA4C;IAC5C,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,YAAY,GACpB,IAAI,GACJ,UAAU,GACV,iBAAiB,GACjB,eAAe,GACf,eAAe,GACf,UAAU,GACV,eAAe,GACf,gBAAgB,GAChB,aAAa,CAAC;AAElB,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,YAAY,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAyB;IAC9C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2B;gBAEtC,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,wBAAwB;IAK1E;;;OAGG;IACG,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;IA2DlE,wEAAwE;IACxE,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;IA2B3C,oGAAoG;IACpG,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,EAAE;IA2B1C,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,kBAAkB;IAqB1B,OAAO,CAAC,SAAS;IA0BjB,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,UAAU;CAUnB"}
1
+ {"version":3,"file":"PreCompactionFlush.d.ts","sourceRoot":"","sources":["../../src/core/PreCompactionFlush.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAMH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGvD,MAAM,WAAW,wBAAwB;IACvC,oCAAoC;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,uEAAuE;IACvE,gBAAgB,EAAE,MAAM,CAAC;IACzB,sEAAsE;IACtE,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,mCAAmC,EAAE,wBAIjD,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC1C,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uFAAuF;IACvF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,aAAa,GAAG,WAAW,CAAC;IACxC,+DAA+D;IAC/D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,4CAA4C;IAC5C,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,YAAY,GACpB,IAAI,GACJ,UAAU,GACV,iBAAiB,GACjB,eAAe,GACf,eAAe,GACf,UAAU,GACV,eAAe,GACf,gBAAgB,GAChB,aAAa,CAAC;AAElB,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,YAAY,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAyB;IAC9C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2B;gBAEtC,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,wBAAwB;IAK1E;;;OAGG;IACG,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;IA2DlE,wEAAwE;IACxE,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;IA2B3C,oGAAoG;IACpG,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,EAAE;IA2B1C,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,kBAAkB;IAqB1B,OAAO,CAAC,SAAS;IA0BjB,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,UAAU;CAUnB"}
@@ -38,8 +38,8 @@
38
38
  */
39
39
  import fs from 'node:fs';
40
40
  import path from 'node:path';
41
- import os from 'node:os';
42
41
  import crypto from 'node:crypto';
42
+ import { resolveFrameworkTranscriptPath } from './FrameworkSessionStore.js';
43
43
  export const DEFAULT_PRE_COMPACTION_FLUSH_CONFIG = {
44
44
  enabled: false,
45
45
  maxFactsPerFlush: 5,
@@ -193,9 +193,15 @@ export class PreCompactionFlush {
193
193
  return payload.transcript_path;
194
194
  if (!payload.session_id)
195
195
  return '';
196
- const root = this.deps.claudeProjectsRoot ?? path.join(os.homedir(), '.claude', 'projects');
197
- const encoded = this.deps.projectDir.replace(/[\/.]/g, '-');
198
- return path.join(root, encoded, `${payload.session_id}.jsonl`);
196
+ const framework = this.deps.framework ?? 'claude-code';
197
+ return resolveFrameworkTranscriptPath({
198
+ framework,
199
+ sessionId: payload.session_id,
200
+ projectDir: this.deps.projectDir,
201
+ rootOverride: framework === 'codex-cli'
202
+ ? this.deps.codexSessionsRoot
203
+ : this.deps.claudeProjectsRoot,
204
+ });
199
205
  }
200
206
  readTranscriptTail(transcriptPath) {
201
207
  if (!transcriptPath || !fs.existsSync(transcriptPath))
@@ -1 +1 @@
1
- {"version":3,"file":"PreCompactionFlush.js","sourceRoot":"","sources":["../../src/core/PreCompactionFlush.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PreCompactionFlush.js","sourceRoot":"","sources":["../../src/core/PreCompactionFlush.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,12 @@ export interface ResumeValidatorDeps {
42
42
  evaluateFn?: (prompt: string) => Promise<string>;
43
43
  /** Override session JSONL reader for testing */
44
44
  readSessionJsonl?: (uuid: string) => string;
45
+ /**
46
+ * Runtime that produced the session being validated. Drives transcript
47
+ * path resolution via FrameworkSessionStore (portability audit Gap 3).
48
+ * Defaults to 'claude-code' — historical behavior, Claude unchanged.
49
+ */
50
+ framework?: 'claude-code' | 'codex-cli';
45
51
  }
46
52
  /**
47
53
  * Validate that a resume UUID's session content is coherent with a topic's history.
@@ -1 +1 @@
1
- {"version":3,"file":"ResumeValidator.d.ts","sourceRoot":"","sources":["../../src/core/ResumeValidator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAKH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACvH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC1D;AAED,MAAM,WAAW,mBAAmB;IAClC,yCAAyC;IACzC,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC,CAAC;IAC1G,0CAA0C;IAC1C,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CAC7C;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,0BAA0B,CAC9C,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,oBAAoB,GAAG,IAAI,EACtC,YAAY,CAAC,EAAE,oBAAoB,GAAG,IAAI,EAC1C,IAAI,GAAE,mBAAwB,GAC7B,OAAO,CAAC,OAAO,CAAC,CAiKlB"}
1
+ {"version":3,"file":"ResumeValidator.d.ts","sourceRoot":"","sources":["../../src/core/ResumeValidator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGvD,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACvH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC1D;AAED,MAAM,WAAW,mBAAmB;IAClC,yCAAyC;IACzC,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC,CAAC;IAC1G,0CAA0C;IAC1C,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC5C;;;;OAIG;IACH,SAAS,CAAC,EAAE,aAAa,GAAG,WAAW,CAAC;CACzC;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,0BAA0B,CAC9C,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,oBAAoB,GAAG,IAAI,EACtC,YAAY,CAAC,EAAE,oBAAoB,GAAG,IAAI,EAC1C,IAAI,GAAE,mBAAwB,GAC7B,OAAO,CAAC,OAAO,CAAC,CAmKlB"}
@@ -18,8 +18,7 @@
18
18
  * which runs on the user's existing Claude subscription.
19
19
  */
20
20
  import fs from 'node:fs';
21
- import path from 'node:path';
22
- import os from 'node:os';
21
+ import { resolveFrameworkTranscriptPath } from './FrameworkSessionStore.js';
23
22
  /**
24
23
  * Validate that a resume UUID's session content is coherent with a topic's history.
25
24
  *
@@ -84,9 +83,15 @@ export async function llmValidateResumeCoherence(resumeUuid, topicId, topicName,
84
83
  sessionContext = deps.readSessionJsonl(resumeUuid);
85
84
  }
86
85
  else {
87
- const projectHash = projectDir.replace(/\//g, '-');
88
- const jsonlPath = path.join(os.homedir(), '.claude', 'projects', projectHash, `${resumeUuid}.jsonl`);
89
- if (fs.existsSync(jsonlPath)) {
86
+ // Gap 3: resolve per-framework. Default claude-code reproduces the
87
+ // exact prior path (.claude/projects/<hash>/<uuid>.jsonl); codex-cli
88
+ // globs ~/.codex/sessions/YYYY/MM/DD/rollout-*-<uuid>.jsonl.
89
+ const jsonlPath = resolveFrameworkTranscriptPath({
90
+ framework: deps.framework ?? 'claude-code',
91
+ sessionId: resumeUuid,
92
+ projectDir,
93
+ });
94
+ if (jsonlPath && fs.existsSync(jsonlPath)) {
90
95
  try {
91
96
  const stat = fs.statSync(jsonlPath);
92
97
  const fd = fs.openSync(jsonlPath, 'r');
@@ -1 +1 @@
1
- {"version":3,"file":"ResumeValidator.js","sourceRoot":"","sources":["../../src/core/ResumeValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResumeValidator.js","sourceRoot":"","sources":["../../src/core/ResumeValidator.ts"],"names":[],"mappings":"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"}
@@ -59,8 +59,8 @@ export async function bootstrapThreadline(config) {
59
59
  });
60
60
  // Start heartbeat for liveness detection
61
61
  const stopHeartbeat = discovery.startPresenceHeartbeat();
62
- // ── 4. Register MCP server into Claude Code config ───────────────
63
- registerThreadlineMcp(config.projectDir, config.agentName, config.stateDir);
62
+ // ── 4. Register MCP server into framework config(s) ──────────────
63
+ await registerThreadlineMcp(config.projectDir, config.agentName, config.stateDir);
64
64
  // ── 5. Cloud Relay Connection (opt-in) ─────────────────────────
65
65
  const relayEnabled = config.relayEnabled === true
66
66
  || process.env.THREADLINE_RELAY_ENABLED === 'true';
@@ -299,14 +299,23 @@ function loadOrCreateIdentityKeys(threadlineDir) {
299
299
  }
300
300
  // ── MCP Registration ─────────────────────────────────────────────────
301
301
  /**
302
- * Register the Threadline MCP server into Claude Code's config.
302
+ * Register the Threadline MCP server into every framework config present.
303
303
  *
304
- * Uses the same pattern as ensurePlaywrightMcp() — registers in both
305
- * ~/.claude.json (local scope) and .mcp.json (project scope).
304
+ * Claude Code: ~/.claude.json (local scope) + .mcp.json (project scope).
305
+ * Codex CLI: `[mcp_servers."threadline"]` in ~/.codex/config.toml — added
306
+ * for the cross-framework portability audit (Gap 2). Before this, a
307
+ * Codex agent that joined the Threadline network had the relay running
308
+ * but no MCP tools advertised to its runtime. The Codex TOML format and
309
+ * path were empirically verified from a live ~/.codex/ (Codex CLI
310
+ * 0.78.0); registration reuses the existing, tested
311
+ * OpenAiCodexMcpToolRegistry so the two writers cannot drift.
306
312
  *
307
- * The MCP server is a stdio process that Claude Code launches as a subprocess.
313
+ * The MCP server is a stdio process the framework launches as a subprocess.
314
+ * Codex registration is gated on ~/.codex/ existing (Codex installed on
315
+ * this machine) so a Claude-only host is never given a Codex config it
316
+ * does not use.
308
317
  */
309
- function registerThreadlineMcp(projectDir, agentName, stateDir) {
318
+ async function registerThreadlineMcp(projectDir, agentName, stateDir) {
310
319
  const absDir = path.resolve(projectDir);
311
320
  // The MCP server entry point — runs as a child process of Claude Code.
312
321
  // Resolve the actual instar package location (handles both node_modules and npm-linked).
@@ -374,5 +383,26 @@ function registerThreadlineMcp(projectDir, agentName, stateDir) {
374
383
  catch {
375
384
  // Non-fatal
376
385
  }
386
+ // ── 3. Also register in Codex's ~/.codex/config.toml (portability Gap 2) ──
387
+ // Gated on ~/.codex/ existing so a Claude-only host never gets a Codex
388
+ // config it does not use. Reuses the existing OpenAiCodexMcpToolRegistry
389
+ // (idempotent remove-then-append of the [mcp_servers."threadline"] table)
390
+ // so the TOML writer is never duplicated. Non-fatal, matching the Claude
391
+ // registration blocks above.
392
+ try {
393
+ const codexHome = process.env['CODEX_HOME'] || path.join(os.homedir(), '.codex');
394
+ if (fs.existsSync(codexHome)) {
395
+ const { createMcpToolRegistry } = await import('../providers/adapters/openai-codex/integration/mcpToolRegistry.js');
396
+ await createMcpToolRegistry().register({
397
+ kind: 'stdio',
398
+ name: 'threadline',
399
+ command: mcpEntry.command,
400
+ args: mcpEntry.args,
401
+ }, { scope: 'user' });
402
+ }
403
+ }
404
+ catch {
405
+ // Non-fatal — Claude registration above is unaffected.
406
+ }
377
407
  }
378
408
  //# sourceMappingURL=ThreadlineBootstrap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadlineBootstrap.js","sourceRoot":"","sources":["../../src/threadline/ThreadlineBootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ThreadlineBootstrap.js","sourceRoot":"","sources":["../../src/threadline/ThreadlineBootstrap.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "instar",
3
- "version": "1.0.11",
3
+ "version": "1.0.13",
4
4
  "description": "Persistent autonomy infrastructure for AI agents",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "$schema": "./builtin-manifest.schema.json",
3
3
  "schemaVersion": 1,
4
- "generatedAt": "2026-05-19T20:32:50.611Z",
5
- "instarVersion": "1.0.11",
4
+ "generatedAt": "2026-05-19T21:07:55.340Z",
5
+ "instarVersion": "1.0.13",
6
6
  "entryCount": 189,
7
7
  "entries": {
8
8
  "hook:session-start": {
@@ -0,0 +1,64 @@
1
+ # Upgrade Guide — v1.0.12 (portability hardening 4 of 6)
2
+
3
+ <!-- bump: patch -->
4
+
5
+ ## What Changed
6
+
7
+ Fourth shipped of the six cross-framework portability hardening patches
8
+ (v1.0.9–v1.0.14).
9
+
10
+ Two safety features — pre-compaction context flush and resume validation —
11
+ could only locate Claude Code session transcripts, so they silently did
12
+ nothing for a Codex agent. A new shared resolver locates the transcript for
13
+ whichever runtime produced the session. The Codex transcript layout was
14
+ verified by inspecting a live Codex install on disk, not assumed.
15
+
16
+ It also fixes a pre-existing latent bug: the resume validator built the
17
+ Claude transcript path replacing only slashes in the project directory, while
18
+ the real Claude layout also replaces dots. For any project whose path
19
+ contains a dot, resume validation was looking in a directory that does not
20
+ exist and silently failing. Routing it through the shared, empirically-correct
21
+ resolver fixes that.
22
+
23
+ ## Evidence
24
+
25
+ Reproduction prior to this change: run a Codex agent through a context
26
+ compaction. The pre-compaction flush looked for the transcript under Claude
27
+ Code's directory convention, found nothing, and produced no learning capture.
28
+ Separately, validate a resume for any agent whose project path contains a dot
29
+ (for example a path with `.instar`): the resume validator's slash-only path
30
+ encoding produced a non-existent directory and the JSONL sample came back
31
+ empty.
32
+
33
+ Observed after this change: the shared resolver returns
34
+ `~/.codex/sessions/YYYY/MM/DD/rollout-...-<id>.jsonl` for Codex (verified
35
+ against a live `~/.codex/`, Codex CLI 0.78.0) and the correctly-encoded
36
+ Claude path (dots and slashes both replaced, matching the real
37
+ `~/.claude/projects/` directory naming) for Claude Code. Claude installs whose
38
+ project path has no dot are byte-for-byte unchanged.
39
+
40
+ Unit verification: `tests/unit/FrameworkSessionStore.test.ts` — seven cases
41
+ including the dot-and-slash Claude encoding, the Codex date-tree glob with a
42
+ decoy file that must not match, and safe-empty returns when nothing is found.
43
+ Thirty-five existing pre-compaction-flush and resume-validator tests pass
44
+ unchanged.
45
+
46
+ ## What to Tell Your User
47
+
48
+ - "Context-saving before compaction and resume validation now work for Codex agents, not just Claude Code. We also fixed a quiet bug where resume validation failed for any project whose folder path contained a dot. Claude Code agents without a dot in their path are unaffected."
49
+
50
+ ## Summary of New Capabilities
51
+
52
+ | Capability | How to Use |
53
+ |-----------|-----------|
54
+ | Per-runtime transcript resolution | Automatic. The session-store resolver locates transcripts for Claude Code and Codex. |
55
+ | Correct Claude path encoding | Automatic. Resume validation now uses the real directory-naming convention (dots and slashes both replaced). |
56
+
57
+ ## Deferred (Tracked Follow-ups)
58
+
59
+ - Threading the real per-session framework value through every flush/resume
60
+ call site is incremental; callers that do not pass it get the Claude
61
+ default (unchanged behavior).
62
+ - Two cross-framework gaps remain (v1.0.x): framework-aware connector-server
63
+ registration, and the migrator/identity-renderer unification (an
64
+ architecture decision being reviewed with the operator).
@@ -0,0 +1,57 @@
1
+ # Upgrade Guide — v1.0.13 (portability hardening 6 of 6 code gaps)
2
+
3
+ <!-- bump: patch -->
4
+
5
+ ## What Changed
6
+
7
+ The final code-level cross-framework portability hardening patch. Five of the
8
+ six audit gaps shipped as v1.0.9–v1.0.12; this is the sixth (Gap 2).
9
+
10
+ When an agent joins the agent-to-agent Threadline network, the Threadline MCP
11
+ server was registered only into Claude Code configuration. A Codex agent had
12
+ the network connection running but its runtime never knew the Threadline
13
+ tools existed. Setup now also registers the Threadline MCP server into Codex
14
+ configuration when Codex is installed on the machine.
15
+
16
+ The Codex configuration format and location were verified against a live
17
+ Codex install, not assumed. Registration reuses the existing, already-tested
18
+ Codex configuration writer, so there is no second copy of that logic to drift.
19
+
20
+ ## Evidence
21
+
22
+ Reproduction prior to this change: run a Codex agent, join the Threadline
23
+ network. The relay connects, but the Threadline MCP tools
24
+ (discover/send/trust/relay) are absent from the Codex runtime because
25
+ registration only wrote Claude Code's configuration files.
26
+
27
+ Observed after this change: on a host where Codex is installed, the
28
+ Threadline MCP server is also written as a `[mcp_servers."threadline"]` table
29
+ in Codex's user configuration, so Codex launches it and the tools are
30
+ reachable. On a Claude-only host (no Codex installed) nothing changes — the
31
+ Codex step is skipped. Existing Claude Code configuration writes are
32
+ byte-for-byte unchanged and still happen first.
33
+
34
+ Unit verification: `tests/unit/threadline-codex-mcp-registration.test.ts` —
35
+ four cases against an isolated Codex config location: the stdio server table
36
+ is written; re-registration replaces rather than duplicates the table;
37
+ unrelated operator configuration content is preserved; the registered state
38
+ is reported correctly. The ThreadlineBootstrap regression suite passes.
39
+
40
+ ## What to Tell Your User
41
+
42
+ - "If you run an agent on Codex and connect it to the agent network, its tools now actually work from Codex, not just from Claude Code. Claude-only setups are unchanged."
43
+
44
+ ## Summary of New Capabilities
45
+
46
+ | Capability | How to Use |
47
+ |-----------|-----------|
48
+ | Codex MCP registration | Automatic when joining the Threadline network on a host with Codex installed. |
49
+ | No-duplication guarantee | Re-running setup replaces the Threadline server entry rather than duplicating it, and leaves other Codex configuration intact. |
50
+
51
+ ## Deferred (Tracked Follow-ups)
52
+
53
+ - One audit item remains: unifying the post-update migrator's identity
54
+ handling with the identity renderer (how the rich Claude capability
55
+ document relates to the canonical identity source). This is a genuine
56
+ architecture decision and is being reviewed with the operator rather than
57
+ refactored blind — it is not a deferral of doable work.
@@ -0,0 +1,62 @@
1
+ # Side-effects review — Framework-aware Threadline MCP registration (Gap 2)
2
+
3
+ Per L6. Seven dimensions.
4
+
5
+ ## 1. Over-block / under-block
6
+
7
+ Before: UNDER — Codex agents on the network had no advertised MCP tools.
8
+ After: no over-block. Codex registration only runs when `~/.codex/` exists;
9
+ a Claude-only host is untouched. Both Claude registration blocks are
10
+ byte-identical.
11
+
12
+ ## 2. Level-of-abstraction fit
13
+
14
+ Reuses the existing `OpenAiCodexMcpToolRegistry` (the dedicated Codex TOML
15
+ writer). ThreadlineBootstrap orchestrates; the registry owns the format. No
16
+ TOML logic duplicated.
17
+
18
+ ## 3. Signal vs Authority compliance
19
+
20
+ `~/.codex/` existence is the SIGNAL that a Codex runtime is present; the
21
+ registry is the single AUTHORITY for the TOML shape. No brittle inline
22
+ writer.
23
+
24
+ ## 4. Interactions with adjacent systems
25
+
26
+ - **Claude registration (~/.claude.json, .mcp.json)** — unchanged,
27
+ byte-identical, still first.
28
+ - **OpenAiCodexMcpToolRegistry** — used as-is; its existing tests plus 4 new
29
+ Gap-2 tests cover the path. No change to the registry itself.
30
+ - **bootstrapThreadline** — the one call site now awaits the (now async)
31
+ registerThreadlineMcp; downstream steps already followed it sequentially,
32
+ so ordering is preserved.
33
+ - **Operator config.toml** — idempotent remove-then-append of only the
34
+ `threadline` table; unrelated `[mcp_servers."other"]` / `model = ...`
35
+ content preserved (tested).
36
+
37
+ ## 5. Rollback cost
38
+
39
+ Low. One function made async + one awaited call site + one appended block +
40
+ one new test. `git revert` restores prior behavior. A leftover
41
+ `[mcp_servers."threadline"]` in a Codex config after revert is inert (Codex
42
+ just launches an MCP that isn't used).
43
+
44
+ ## 6. Backwards compatibility / drift surface
45
+
46
+ Claude-only hosts: byte-identical behavior (Codex block gated out). Dual/
47
+ Codex hosts: strictly better (tools now advertised). Drift surface: none —
48
+ the TOML writer is the single existing registry, not a copy.
49
+
50
+ ## 7. Authorization / Trust posture
51
+
52
+ No new authority. Writes only the `threadline` MCP table to a config the
53
+ operator's Codex already owns, gated on Codex being installed. Non-fatal:
54
+ failure cannot break Claude registration or bootstrap, cannot escalate.
55
+
56
+ ## Outcome
57
+
58
+ Ship. Empirically grounded, reuses a tested writer (no duplication),
59
+ default-safe (Codex-presence gated), idempotent, operator-content
60
+ preserving, trivial rollback. Sixth shipped of the v1.0.9–v1.0.14 series
61
+ (1.0.13) — the final code-level portability gap. Gap 6 remains for operator
62
+ architecture review by design.
@@ -0,0 +1,62 @@
1
+ # Side-effects review — FrameworkSessionStore (Gap 3)
2
+
3
+ Per L6. Seven dimensions.
4
+
5
+ ## 1. Over-block / under-block
6
+
7
+ Before: UNDER — flush/resume silently no-op for Codex. After: no over-block.
8
+ Claude path is byte-identical (default framework = claude-code, same encoding
9
+ empirically confirmed against ~/.claude/projects/). Codex path returns '' when
10
+ no file (same safe no-op the callers already handle). No new over-block.
11
+
12
+ ## 2. Level-of-abstraction fit
13
+
14
+ Path resolution extracted into one pure module (`FrameworkSessionStore`).
15
+ Consumers delegate. Correct altitude — resolution logic in one tested unit,
16
+ orchestration unchanged in the consumers.
17
+
18
+ ## 3. Signal vs Authority compliance
19
+
20
+ `framework` (dep) is the SIGNAL of which runtime produced the session; the
21
+ resolver is the single AUTHORITY for the path. Missing/unknown framework
22
+ fails safe to claude-code (status quo).
23
+
24
+ ## 4. Interactions with adjacent systems
25
+
26
+ - **PreCompactionFlush** — only `resolveTranscriptPath` changed; tail-read,
27
+ flush, audit logic untouched. 35 regression tests (with ResumeValidator)
28
+ green.
29
+ - **ResumeValidator** — delegates; the `readSessionJsonl` test override path
30
+ is unchanged (still wins when provided). Latent slash-only encoding bug
31
+ fixed (see §6).
32
+ - **CompactionSentinel / other transcript readers** — not touched; they can
33
+ adopt the resolver incrementally. No behavior change for them.
34
+ - **Codex sessions dir** — read-only globbing; no writes, no mutation.
35
+
36
+ ## 5. Rollback cost
37
+
38
+ Low. One new module + two delegating edits + one new test. `git revert`
39
+ restores prior behavior. The new optional deps are ignored by callers that
40
+ don't set them.
41
+
42
+ ## 6. Backwards compatibility / drift surface
43
+
44
+ Claude-code: byte-identical path for slash-only project dirs; for dirs
45
+ containing a dot, ResumeValidator now produces the CORRECT path (the real
46
+ ~/.claude/projects/ naming replaces `.` too) — this fixes a pre-existing
47
+ latent failure rather than introducing one. PreCompactionFlush already used
48
+ the `[\/.]` encoding, so it is unchanged. This correctness delta is
49
+ documented, not silent. Drift surface: reduced — one resolver instead of two
50
+ divergent inline encodings.
51
+
52
+ ## 7. Authorization / Trust posture
53
+
54
+ No new authority. Pure read-only path resolution + fs.existsSync/readdir.
55
+ Cannot write, cannot escalate. Unreadable/missing Codex tree → '' (safe
56
+ no-op).
57
+
58
+ ## Outcome
59
+
60
+ Ship. Empirically grounded (no fabrication), both consumers wired, a latent
61
+ correctness bug fixed transparently, trivial rollback. Fourth shipped of the
62
+ v1.0.9–v1.0.14 hardening series (1.0.12).