instar 1.3.238 → 1.3.240

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.
Files changed (49) hide show
  1. package/dist/commands/server.d.ts.map +1 -1
  2. package/dist/commands/server.js +13 -1
  3. package/dist/commands/server.js.map +1 -1
  4. package/dist/core/SessionManager.d.ts +18 -0
  5. package/dist/core/SessionManager.d.ts.map +1 -1
  6. package/dist/core/SessionManager.js +20 -0
  7. package/dist/core/SessionManager.js.map +1 -1
  8. package/dist/messaging/SpawnRequestManager.d.ts +27 -1
  9. package/dist/messaging/SpawnRequestManager.d.ts.map +1 -1
  10. package/dist/messaging/SpawnRequestManager.js +13 -1
  11. package/dist/messaging/SpawnRequestManager.js.map +1 -1
  12. package/dist/monitoring/ApprenticeshipCycleStore.d.ts +21 -0
  13. package/dist/monitoring/ApprenticeshipCycleStore.d.ts.map +1 -1
  14. package/dist/monitoring/ApprenticeshipCycleStore.js +50 -4
  15. package/dist/monitoring/ApprenticeshipCycleStore.js.map +1 -1
  16. package/dist/scheduler/MentorOnboardingRunner.d.ts +10 -1
  17. package/dist/scheduler/MentorOnboardingRunner.d.ts.map +1 -1
  18. package/dist/scheduler/MentorOnboardingRunner.js +1 -0
  19. package/dist/scheduler/MentorOnboardingRunner.js.map +1 -1
  20. package/dist/scheduler/MentorOnboardingTick.d.ts +25 -0
  21. package/dist/scheduler/MentorOnboardingTick.d.ts.map +1 -1
  22. package/dist/scheduler/MentorOnboardingTick.js +13 -0
  23. package/dist/scheduler/MentorOnboardingTick.js.map +1 -1
  24. package/dist/server/AgentServer.d.ts.map +1 -1
  25. package/dist/server/AgentServer.js +31 -0
  26. package/dist/server/AgentServer.js.map +1 -1
  27. package/dist/threadline/ThreadResumeMap.d.ts +8 -0
  28. package/dist/threadline/ThreadResumeMap.d.ts.map +1 -1
  29. package/dist/threadline/ThreadResumeMap.js +31 -0
  30. package/dist/threadline/ThreadResumeMap.js.map +1 -1
  31. package/dist/threadline/ThreadlineRouter.d.ts.map +1 -1
  32. package/dist/threadline/ThreadlineRouter.js +26 -10
  33. package/dist/threadline/ThreadlineRouter.js.map +1 -1
  34. package/dist/threadline/WarmSessionPool.d.ts +62 -0
  35. package/dist/threadline/WarmSessionPool.d.ts.map +1 -0
  36. package/dist/threadline/WarmSessionPool.js +116 -0
  37. package/dist/threadline/WarmSessionPool.js.map +1 -0
  38. package/package.json +1 -1
  39. package/src/data/builtin-manifest.json +4 -4
  40. package/upgrades/1.3.239.md +96 -0
  41. package/upgrades/1.3.240.md +72 -0
  42. package/upgrades/apprenticeship-channel-enforcement.eli16.md +16 -0
  43. package/upgrades/mentor-tick-cycle-capture.eli16.md +18 -0
  44. package/upgrades/side-effects/apprenticeship-channel-enforcement.md +39 -0
  45. package/upgrades/side-effects/mentor-tick-cycle-capture.md +39 -0
  46. package/upgrades/side-effects/threadline-a2a-live-inject.md +60 -0
  47. package/upgrades/side-effects/threadline-a2a-resume-session-id.md +59 -0
  48. package/upgrades/threadline-a2a-live-inject.eli16.md +30 -0
  49. package/upgrades/threadline-a2a-resume-session-id.eli16.md +28 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadlineRouter.js","sourceRoot":"","sources":["../../src/threadline/ThreadlineRouter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ThreadlineRouter.js","sourceRoot":"","sources":["../../src/threadline/ThreadlineRouter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * WarmSessionPool — Layer 2 core (THREADLINE-A2A-COHERENCE-SPEC).
3
+ *
4
+ * Keeps an agent-to-agent session "warm" for a TTL so rapid follow-ups inject into the running
5
+ * session (via the existing live-injection path) instead of respawning each message. The
6
+ * operator-confirmed model is **per-peer** with a **global + per-peer cap** and **TTL + LRU
7
+ * eviction**, so an inbound flood (many threads / one chatty peer) can't pin unbounded live
8
+ * Claude processes. This is the pure registry + eviction policy; the server wires it to the real
9
+ * session lifecycle (keep-alive, inject, kill-on-evict) and the SessionReaper (warm sessions are
10
+ * evict-eligible under resource pressure — eviction is lossless because the next message falls
11
+ * back to Layer 1 resume).
12
+ *
13
+ * Pure + clock-injected → fully testable. Eviction is reported (the caller kills the tmux/Claude
14
+ * session); the pool itself holds no I/O.
15
+ */
16
+ export interface WarmSessionRecord {
17
+ threadId: string;
18
+ /** Peer identity the warm session belongs to (the per-peer cap key). */
19
+ peerId: string;
20
+ /** The tmux/session name to inject into / kill on eviction. */
21
+ sessionName: string;
22
+ createdAt: number;
23
+ lastUsedAt: number;
24
+ }
25
+ export interface WarmSessionPoolConfig {
26
+ /** Max warm sessions across all peers. */
27
+ globalCap: number;
28
+ /** Max warm sessions for any one peer (the inbound-flood bound). */
29
+ perPeerCap: number;
30
+ /** Idle TTL — a warm session unused for this long is reapable. */
31
+ ttlMs: number;
32
+ }
33
+ export declare class WarmSessionPool {
34
+ private readonly config;
35
+ private readonly now;
36
+ private readonly byThread;
37
+ constructor(config: WarmSessionPoolConfig, now?: () => number);
38
+ size(): number;
39
+ private peerCount;
40
+ /** LRU among a predicate set (oldest lastUsedAt first). */
41
+ private lru;
42
+ /**
43
+ * Admit (or refresh) a warm session for a thread. Returns the records that must be EVICTED
44
+ * (killed by the caller) to honor the caps — LRU first, per-peer cap before global cap. An
45
+ * existing thread is refreshed in place (no eviction).
46
+ */
47
+ admit(input: {
48
+ threadId: string;
49
+ peerId: string;
50
+ sessionName: string;
51
+ }): WarmSessionRecord[];
52
+ /** Mark a thread's warm session used (LRU refresh). */
53
+ touch(threadId: string): void;
54
+ /** The warm session for a thread, if present and not past its idle TTL; else undefined. */
55
+ get(threadId: string): WarmSessionRecord | undefined;
56
+ remove(threadId: string): WarmSessionRecord | undefined;
57
+ /** Reap warm sessions idle past the TTL. Returns the evicted records (caller kills them). */
58
+ reapExpired(): WarmSessionRecord[];
59
+ /** Reap up to n warm sessions under resource pressure (LRU first). Returns evicted records. */
60
+ reapUnderPressure(n: number): WarmSessionRecord[];
61
+ }
62
+ //# sourceMappingURL=WarmSessionPool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WarmSessionPool.d.ts","sourceRoot":"","sources":["../../src/threadline/WarmSessionPool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC;IACf,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,oEAAoE;IACpE,UAAU,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,KAAK,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,eAAe;IAIxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAJtB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwC;gBAG9C,MAAM,EAAE,qBAAqB,EAC7B,GAAG,GAAE,MAAM,MAAyB;IAGvD,IAAI,IAAI,MAAM;IAId,OAAO,CAAC,SAAS;IAMjB,2DAA2D;IAC3D,OAAO,CAAC,GAAG;IAMX;;;;OAIG;IACH,KAAK,CAAC,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,iBAAiB,EAAE;IAqC5F,uDAAuD;IACvD,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAK7B,2FAA2F;IAC3F,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAOpD,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAMvD,6FAA6F;IAC7F,WAAW,IAAI,iBAAiB,EAAE;IAOlC,+FAA+F;IAC/F,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,iBAAiB,EAAE;CAKlD"}
@@ -0,0 +1,116 @@
1
+ /**
2
+ * WarmSessionPool — Layer 2 core (THREADLINE-A2A-COHERENCE-SPEC).
3
+ *
4
+ * Keeps an agent-to-agent session "warm" for a TTL so rapid follow-ups inject into the running
5
+ * session (via the existing live-injection path) instead of respawning each message. The
6
+ * operator-confirmed model is **per-peer** with a **global + per-peer cap** and **TTL + LRU
7
+ * eviction**, so an inbound flood (many threads / one chatty peer) can't pin unbounded live
8
+ * Claude processes. This is the pure registry + eviction policy; the server wires it to the real
9
+ * session lifecycle (keep-alive, inject, kill-on-evict) and the SessionReaper (warm sessions are
10
+ * evict-eligible under resource pressure — eviction is lossless because the next message falls
11
+ * back to Layer 1 resume).
12
+ *
13
+ * Pure + clock-injected → fully testable. Eviction is reported (the caller kills the tmux/Claude
14
+ * session); the pool itself holds no I/O.
15
+ */
16
+ export class WarmSessionPool {
17
+ config;
18
+ now;
19
+ byThread = new Map();
20
+ constructor(config, now = () => Date.now()) {
21
+ this.config = config;
22
+ this.now = now;
23
+ }
24
+ size() {
25
+ return this.byThread.size;
26
+ }
27
+ peerCount(peerId) {
28
+ let n = 0;
29
+ for (const r of this.byThread.values())
30
+ if (r.peerId === peerId)
31
+ n++;
32
+ return n;
33
+ }
34
+ /** LRU among a predicate set (oldest lastUsedAt first). */
35
+ lru(filter) {
36
+ const rs = [...this.byThread.values()].filter(r => (filter ? filter(r) : true));
37
+ rs.sort((a, b) => a.lastUsedAt - b.lastUsedAt);
38
+ return rs;
39
+ }
40
+ /**
41
+ * Admit (or refresh) a warm session for a thread. Returns the records that must be EVICTED
42
+ * (killed by the caller) to honor the caps — LRU first, per-peer cap before global cap. An
43
+ * existing thread is refreshed in place (no eviction).
44
+ */
45
+ admit(input) {
46
+ const now = this.now();
47
+ const existing = this.byThread.get(input.threadId);
48
+ if (existing) {
49
+ existing.lastUsedAt = now;
50
+ existing.sessionName = input.sessionName;
51
+ return [];
52
+ }
53
+ const evicted = [];
54
+ // Per-peer cap: evict the peer's LRU until under the cap (leaving room for the new one).
55
+ while (this.peerCount(input.peerId) >= this.config.perPeerCap) {
56
+ const victim = this.lru(r => r.peerId === input.peerId)[0];
57
+ if (!victim)
58
+ break;
59
+ this.byThread.delete(victim.threadId);
60
+ evicted.push(victim);
61
+ }
62
+ // Global cap: evict the global LRU until under the cap.
63
+ while (this.byThread.size >= this.config.globalCap) {
64
+ const victim = this.lru()[0];
65
+ if (!victim)
66
+ break;
67
+ this.byThread.delete(victim.threadId);
68
+ evicted.push(victim);
69
+ }
70
+ this.byThread.set(input.threadId, {
71
+ threadId: input.threadId,
72
+ peerId: input.peerId,
73
+ sessionName: input.sessionName,
74
+ createdAt: now,
75
+ lastUsedAt: now,
76
+ });
77
+ return evicted;
78
+ }
79
+ /** Mark a thread's warm session used (LRU refresh). */
80
+ touch(threadId) {
81
+ const r = this.byThread.get(threadId);
82
+ if (r)
83
+ r.lastUsedAt = this.now();
84
+ }
85
+ /** The warm session for a thread, if present and not past its idle TTL; else undefined. */
86
+ get(threadId) {
87
+ const r = this.byThread.get(threadId);
88
+ if (!r)
89
+ return undefined;
90
+ if (this.now() - r.lastUsedAt >= this.config.ttlMs)
91
+ return undefined;
92
+ return r;
93
+ }
94
+ remove(threadId) {
95
+ const r = this.byThread.get(threadId);
96
+ if (r)
97
+ this.byThread.delete(threadId);
98
+ return r;
99
+ }
100
+ /** Reap warm sessions idle past the TTL. Returns the evicted records (caller kills them). */
101
+ reapExpired() {
102
+ const now = this.now();
103
+ const expired = [...this.byThread.values()].filter(r => now - r.lastUsedAt >= this.config.ttlMs);
104
+ for (const r of expired)
105
+ this.byThread.delete(r.threadId);
106
+ return expired;
107
+ }
108
+ /** Reap up to n warm sessions under resource pressure (LRU first). Returns evicted records. */
109
+ reapUnderPressure(n) {
110
+ const victims = this.lru().slice(0, Math.max(0, n));
111
+ for (const r of victims)
112
+ this.byThread.delete(r.threadId);
113
+ return victims;
114
+ }
115
+ }
116
+ //# sourceMappingURL=WarmSessionPool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WarmSessionPool.js","sourceRoot":"","sources":["../../src/threadline/WarmSessionPool.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "instar",
3
- "version": "1.3.238",
3
+ "version": "1.3.240",
4
4
  "description": "Coherence infrastructure for self-evolving AI agents — on the Claude Code or Codex subscription you already have.",
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-06-04T04:05:54.086Z",
5
- "instarVersion": "1.3.238",
4
+ "generatedAt": "2026-06-04T06:02:09.524Z",
5
+ "instarVersion": "1.3.240",
6
6
  "entryCount": 198,
7
7
  "entries": {
8
8
  "hook:session-start": {
@@ -1498,7 +1498,7 @@
1498
1498
  "type": "subsystem",
1499
1499
  "domain": "server",
1500
1500
  "sourcePath": "src/server/AgentServer.ts",
1501
- "contentHash": "aef725dff8db8e03973977c8d962c87bc678a4c21cfc39cd54c763331e830137",
1501
+ "contentHash": "e72905d8a8de5d22c7cedb5c599f9341f61ac9139f65f32bde7011a1c5202ef7",
1502
1502
  "since": "2025-01-01"
1503
1503
  },
1504
1504
  "subsystem:session-manager": {
@@ -1506,7 +1506,7 @@
1506
1506
  "type": "subsystem",
1507
1507
  "domain": "sessions",
1508
1508
  "sourcePath": "src/core/SessionManager.ts",
1509
- "contentHash": "7bc6fbf224cd3d6a77fe2966cc0221ee2d5bb98d6c7e50b6174274afffc43483",
1509
+ "contentHash": "cf87f05acf0ee9e4dab65be206048e19cd7c9036b4733019e8372fd5f81e5a1f",
1510
1510
  "since": "2025-01-01"
1511
1511
  },
1512
1512
  "subsystem:auto-updater": {
@@ -0,0 +1,96 @@
1
+ # Upgrade Guide — vNEXT
2
+
3
+ <!-- assembled-by: assemble-next-md -->
4
+ <!-- bump: patch -->
5
+
6
+ ## What Changed
7
+
8
+ The automated mentor-onboarding tick now records a keystone
9
+ `mentor-mentee-differential` apprenticeship **cycle** each run (in addition to the
10
+ existing per-finding ledger capture) — the structural version of the manual
11
+ differential-oversight loop. The mentee's Stage-A transcript becomes the cycle's
12
+ `menteeOutput`; the forensics findings become the `overseerDifferential`.
13
+
14
+ It is wired via a new optional `recordCycle` injected into `runMentorTick` and
15
+ `MentorOnboardingRunner`, and a new `mentor.apprenticeshipInstanceId` config field.
16
+ `AgentServer.buildMentorRunner` resolves it to the ApprenticeshipCycleStore only
17
+ when that instance id is set — so it is **opt-in and a no-op by default**
18
+ (back-compat). This makes the automated loop fire the keystone axis the program's
19
+ role-coverage drift-warning watches, instead of only the easy finding-capture path.
20
+
21
+ Fixed the production **agent-to-agent (Threadline) continuity break**: a live
22
+ Echo↔Dawn round-trip proved that every peer-to-peer follow-up message was being
23
+ handled by a fresh, memoryless session (2 Spawned / 0 Resumed on a single thread)
24
+ instead of the session already in the conversation — the "crowd of fragments
25
+ wearing my name" incoherence.
26
+
27
+ Root cause funnels through one guard. `ThreadResumeMap.get()`
28
+ (`src/threadline/ThreadResumeMap.ts`) nulled the entire resume entry whenever the
29
+ session transcript JSONL was absent — and for relay/pipe-spawned A2A sessions the
30
+ uuid is a spawn-time placeholder that never gets upgraded, so the guard discarded
31
+ the entry (including the still-valid live `sessionName`) on every follow-up. With
32
+ a null entry, `ThreadlineRouter.handleInboundMessage` skips the already-built
33
+ `tryInjectIntoLiveSession` + `resumeThread` machinery and cold-spawns.
34
+
35
+ The fix has two parts. **(1)** When the transcript is absent, `get()` now returns
36
+ the entry anyway **if its tmux session is still alive** (new protected
37
+ `sessionAlive()`, exact-match `tmux has-session -t =name`), so the follow-up routes
38
+ into the running session (live-inject, or a resume that carries the conversation
39
+ history) — no transcript needed. Dead session + no transcript still nulls (resume
40
+ guard intact); topic-bound + pinned exemptions unchanged. **(2)** Part 1 was inert
41
+ without the real session name: `spawnNewThread` recorded the resume entry's
42
+ `sessionName` from the spawn result, but the `spawnSession` callback only returned
43
+ the bare instar session id, so a useless fallback name was stored that
44
+ `sessionAlive()`/`getBySessionName` could never match. The callback contract now
45
+ returns `string | { sessionId, tmuxSession }` (back-compatible);
46
+ `SpawnRequestManager.evaluate` forwards the real tmux name through to the entry. Also lands the `WarmSessionPool`
47
+ (`src/threadline/WarmSessionPool.ts`) per-peer warm-session registry (caps + TTL +
48
+ LRU) — the tested foundation for the follow-up that keeps A2A sessions warm so
49
+ follow-ups inject even after the first reply completes.
50
+
51
+ 1511 threadline unit tests pass; tsc clean. Tier-1 (ELI16 +
52
+ side-effects artifact).
53
+
54
+ ## What to Tell Your User
55
+
56
+ Nothing changes by default. When I'm running an automated mentorship for a
57
+ configured apprenticeship instance, the loop now records proper differential cycles
58
+ on its own — the same keystone cycles I capture by hand — so the program can see
59
+ the real mentor↔mentee work, not just logged findings.
60
+
61
+ When another agent talks to me across several messages in a row, I now stay one
62
+ coherent conversation instead of answering each message as if I'd never seen the
63
+ earlier ones. This is the foundation the agent-to-agent collaboration (and the
64
+ upcoming feedback-process work) relies on. It's an internal robustness fix — there
65
+ is nothing to turn on, and it doesn't change how I talk to you directly.
66
+
67
+ ## Summary of New Capabilities
68
+
69
+ - **Threadline A2A continuity:** agent-to-agent threads stay coherent across rapid
70
+ follow-ups — a follow-up now injects into the session already handling the thread
71
+ instead of cold-spawning a fresh, memoryless one.
72
+ - **WarmSessionPool foundation:** a per-peer warm-session registry (caps + TTL +
73
+ LRU) lands as the tested groundwork for keeping A2A sessions warm.
74
+
75
+ ## Evidence
76
+
77
+ Reproduced on this machine, before/after.
78
+
79
+ **Before (live Echo↔Dawn round-trip, 2026-06-04 ~01:55Z):** sent Dawn one opener on
80
+ a fresh non-topic thread `echo-dawn-continuity-20260604`; her inbound replies
81
+ produced — in `logs/server.log` — `2× [relay] Spawned session`, `0× Resumed
82
+ session`, `1× Spawn denied: Cooldown`. The resume-map never gained an entry for the
83
+ thread; every follow-up cold-spawned a memoryless session (a parallel relay-spawn
84
+ even answered Dawn with "No previous history available").
85
+
86
+ **After (integration test against REAL tmux —
87
+ `tests/integration/threadline-live-inject-real-tmux.test.ts`, 2026-06-04):** with a
88
+ placeholder uuid (no transcript) on a non-topic thread —
89
+ - while a real tmux session of that name is **alive** → `get()` returns the entry,
90
+ so `ThreadlineRouter.tryInjectIntoLiveSession` is reachable (was: null →
91
+ cold-spawn). ✓
92
+ - after the tmux session is **killed** → `get()` returns null (resume guard intact;
93
+ dead session → cold-spawn). ✓
94
+
95
+ The end-to-end live Dawn round-trip showing `Injected`/`Resumed` instead of
96
+ `Spawned` runs post-deploy (Echo auto-updates on this release).
@@ -0,0 +1,72 @@
1
+ # Upgrade Guide — vNEXT
2
+
3
+ <!-- assembled-by: assemble-next-md -->
4
+ <!-- bump: patch -->
5
+
6
+ ## What Changed
7
+
8
+ Enforces the dogfooded-channel standard (APPRENTICESHIP-PROGRAM-PROJECT-DESIGN §4a) in
9
+ code. Every `ApprenticeshipCycleStore` record now carries a `channel`
10
+ (`telegram-playwright` | `threadline-backup` | `direct-shortcut` | `unknown`), with an
11
+ idempotent migration for existing DBs. `roleCoverage` now counts a
12
+ `mentor-mentee-differential` cycle toward the keystone axis **only** when it did NOT run
13
+ through a `direct-shortcut` — a shortcut cycle is still recorded (for honesty, surfaced via
14
+ the new `shortcutDifferentialCount`) but can never make the keystone look healthy. Unset /
15
+ pre-field channels are grandfathered as `unknown` and still count, so an already-earned
16
+ keystone is never retroactively un-fired.
17
+
18
+ Path 1 of the Threadline A2A continuity fix. Headless one-shot `claude -p` reply
19
+ sessions never report their session id, so the resume entry kept a placeholder
20
+ uuid and every spaced follow-up cold-spawned (a live Echo↔Dawn round-trip proved
21
+ Resumed=0 even after the prior foundation shipped).
22
+
23
+ Fix: `ThreadlineRouter.spawnNewThread` now mints a uuid and launches the reply
24
+ session with `claude --session-id <uuid>` (so its transcript is created at exactly
25
+ `<uuid>.jsonl`), persisting that uuid as the thread's resume handle.
26
+ `resumeThread` launches the follow-up with `claude --resume <uuid>` — reloading
27
+ the full prior transcript — and sends only the new message + grounding (the
28
+ transcript already holds the history, so re-injecting it is dropped). The
29
+ `sessionId`/`resumeSessionId` options are threaded through
30
+ `SessionManager.spawnSession` (spliced as `--session-id`/`--resume` into the
31
+ claude-code headless argv before `-p`, mutually exclusive, gated on framework) and
32
+ `SpawnRequestManager`. Additive + gated: every non-A2A spawn is unchanged when the
33
+ options are absent; the stale-uuid resume-crash guard falls back to a fresh spawn.
34
+
35
+ ## What to Tell Your User
36
+
37
+ Nothing user-facing changes. Internally, the apprenticeship now records which channel each
38
+ mentor↔mentee cycle ran through and structurally refuses to let a CLI/API shortcut count as
39
+ real keystone progress — so "is the real mentorship happening?" can't be faked.
40
+
41
+ When another agent and I have a back-and-forth, I now stay in the same
42
+ conversation across messages instead of forgetting between each one — so the
43
+ realistic turn-based exchange (which the upcoming agent-to-agent feedback work
44
+ relies on) holds its thread. It's an internal robustness fix; nothing to turn on.
45
+ The rapid-fire 3-messages-in-10-seconds case is smoothed by a separate follow-up.
46
+
47
+ ## Summary of New Capabilities
48
+
49
+ - **Turn-based agent-to-agent continuity:** a peer agent's follow-up message now resumes the SAME conversation (full prior context) instead of cold-spawning a memoryless reply session.
50
+
51
+ ## Evidence
52
+
53
+ Verified on this machine, before/after.
54
+
55
+ **Mechanism (directly verified, 2026-06-04):** `claude --session-id
56
+ a6b1c2d3-…-0002 -p "remember BANANA77"` created the transcript at exactly
57
+ `<that-uuid>.jsonl` (29 lines). `claude --resume <that-uuid> -p "what was the
58
+ secret word?"` grew the SAME transcript to 55 lines and the planted word
59
+ `BANANA77` appears in the resumed transcript (6×) — i.e. `--resume` reloaded the
60
+ full prior conversation. So set-then-resume by a known id gives real continuity.
61
+
62
+ **Before (live A6 round-trip, `echo-dawn-A6-verify-…`, server on v1.3.239):**
63
+ 2× `[relay] Spawned session`, 0× `Resumed`; `onSessionComplete` fired + matched
64
+ the thread ("demoted 1 thread(s)") but `claudeSessionId` POST events = 0, so the
65
+ placeholder uuid was never upgraded → `jsonlExists` failed → cold-spawn.
66
+
67
+ **After (unit):** spawning with `sessionId` emits `--session-id <uuid>` before
68
+ `-p`; with `resumeSessionId` emits `--resume <uuid>`; neither when absent.
69
+ `spawnNewThread` persists the minted uuid as the entry uuid (not a placeholder);
70
+ `resumeThread` forwards `resumeSessionId = entry.uuid`. tsc clean; 1548
71
+ threadline/fixes/continuity tests green. The live Dawn round-trip showing
72
+ `Resumed` (not `Spawned`) runs post-deploy.
@@ -0,0 +1,16 @@
1
+ # Enforcing the dogfooded channel — explained simply
2
+
3
+ The apprenticeship rule (just documented) is: a mentor must drive its mentee through
4
+ the REAL Telegram UX (via Playwright), because experiencing the user experience IS the
5
+ test. A shortcut — calling the mentee's CLI directly — gets an answer but skips the
6
+ thing we're actually testing.
7
+
8
+ A doc alone is a wish. This makes it a guarantee: every recorded apprenticeship cycle
9
+ now writes down WHICH channel it actually ran through. And the keystone check — the one
10
+ that tells us the real mentor↔mentee work is happening — only counts a cycle if it ran
11
+ through the real channel (Telegram-Playwright, or the backup). A shortcut cycle is still
12
+ saved (so we're honest it happened), but it does NOT light up the keystone. So a shortcut
13
+ can never make the program look healthier than it is.
14
+
15
+ Older cycles (recorded before this field existed) are grandfathered in — they still
16
+ count, so this never retroactively "un-fires" a keystone we already earned.
@@ -0,0 +1,18 @@
1
+ # Mentor tick records keystone cycles — explained simply
2
+
3
+ When the automated mentor job runs a "tick" (it watches the mentee, gathers
4
+ findings), it used to log those findings to one place — but it never recorded a
5
+ proper "cycle" of the mentorship the way the apprenticeship program tracks them.
6
+
7
+ That mattered because the program's #1 failure mode is "role drift": the easy work
8
+ gets logged, but the actual keystone — the mentor↔mentee differential — quietly
9
+ never gets exercised. The manual loop I run by hand records those keystone cycles;
10
+ the automated job didn't.
11
+
12
+ This change wires the automated tick to ALSO record a real
13
+ `mentor-mentee-differential` cycle each time: the mentee's output becomes the
14
+ cycle's menteeOutput, the forensics findings become the differential. It only
15
+ does this when an apprenticeship instance is configured (a new
16
+ `mentor.apprenticeshipInstanceId` setting) — so by default nothing changes; it's
17
+ opt-in. Now the automated loop fires the same keystone axis the manual loop does,
18
+ which is the structural fix for that drift.
@@ -0,0 +1,39 @@
1
+ # Side-Effects Review — Apprenticeship dogfooded-channel enforcement
2
+
3
+ **Slug:** `apprenticeship-channel-enforcement` · **Date:** `2026-06-04` · **Author:** `echo`
4
+ **Second-pass reviewer:** `not required` (additive field + a counting gate; grandfathered)
5
+
6
+ ## Summary
7
+
8
+ Adds a `channel` field to ApprenticeshipCycleStore records (`telegram-playwright` |
9
+ `threadline-backup` | `direct-shortcut` | `unknown`), an idempotent ALTER-TABLE migration
10
+ for existing DBs (default `unknown`), and a `roleCoverage` gate: a
11
+ `mentor-mentee-differential` cycle on `direct-shortcut` is recorded but does NOT count
12
+ toward the keystone axis (surfaced via a new `shortcutDifferentialCount`). Enforces the
13
+ §4a dogfooded-channel standard in code.
14
+
15
+ ## Decision-point inventory
16
+
17
+ One new branch in `roleCoverage`: a mentor-mentee-differential cycle is skipped from axis
18
+ tallying iff `channel === 'direct-shortcut'`. Covered both-sides (dogfooded fires; shortcut
19
+ doesn't + increments the counter; grandfathered/backup fire).
20
+
21
+ ## 1. Over-block
22
+
23
+ Rejects nothing. Garbage/unset channels normalize to `unknown`, which COUNTS (grandfathered)
24
+ — so it never retroactively un-fires an earned keystone (cycle #4, recorded pre-field, holds).
25
+ Only an EXPLICIT `direct-shortcut` is gated, and even then the cycle is still stored + listed.
26
+
27
+ ## 2. Under-block
28
+
29
+ The mentor tick (#743) records cycles without setting `channel` → they default to `unknown`
30
+ → count. That is intentionally grandfathered for now; aligning the automated tick to set
31
+ `direct-shortcut` (or to drive via Playwright, the real fix) is the follow-on once Codey's
32
+ Playwright driving capability exists. The gate is per-axis-tally; it does not retro-rewrite
33
+ stored rows.
34
+
35
+ ## 3. Level-of-abstraction fit
36
+
37
+ Right layer: the enforcement lives in the cycle store's `roleCoverage` (the single place the
38
+ keystone is computed), reusing the existing axis-tally loop. No route/server change — the
39
+ existing `GET /apprenticeship/instances/:id/role-coverage` surfaces the new field for free.
@@ -0,0 +1,39 @@
1
+ # Side-Effects Review — Mentor tick keystone cycle capture
2
+
3
+ **Slug:** `mentor-tick-cycle-capture` · **Date:** `2026-06-04` · **Author:** `echo`
4
+ **Second-pass reviewer:** `not required` (additive, opt-in, no-op by default)
5
+
6
+ ## Summary
7
+
8
+ `runMentorTick` now (after the existing per-finding ledger capture) records a
9
+ `mentor-mentee-differential` apprenticeship CYCLE via an injected, optional
10
+ `recordCycle`. The host (`AgentServer.buildMentorRunner`) wires it to the
11
+ ApprenticeshipCycleStore ONLY when `mentor.apprenticeshipInstanceId` is set, so it
12
+ is a no-op by default. The mentee's transcript is the cycle's menteeOutput; the
13
+ forensics findings (mapped to titles) are the differential.
14
+
15
+ ## Decision-point inventory
16
+
17
+ One new branch: record a cycle iff `recordCycle` is wired AND the transcript is
18
+ non-empty. Both sides covered (records on a real tick; skips on empty transcript;
19
+ no-op when unwired).
20
+
21
+ ## 1. Over-block
22
+
23
+ Rejects nothing real. The transcript guard skips an empty/failed Stage A (not a
24
+ cycle) — intended. Without `apprenticeshipInstanceId`, no cycle is recorded
25
+ (back-compat); the existing finding-capture path is unchanged.
26
+
27
+ ## 2. Under-block
28
+
29
+ It records ALL of a tick's findings as the differential without de-duping against
30
+ prior cycles (acceptable — each tick is a distinct cycle). The cycle's `task` is a
31
+ generic per-tick descriptor, not the full Stage-A prompt (kept terse on purpose).
32
+ cycleNumber is computed as max-existing+1 (single-writer mentor tick, no race).
33
+
34
+ ## 3. Level-of-abstraction fit
35
+
36
+ Right layer: the pure tick gets an injected callback (no store dependency in the
37
+ pure core); the store wiring + instance resolution live in `buildMentorRunner`
38
+ beside the existing `capture` wiring, reading the cycle store lazily to dodge the
39
+ boot-order (buildMentorRunner runs before the store is constructed).