Skip to content

Commit 25bb297

Browse files
committed
docs(upstream): record the 2026-09-04 targeted lifecycle review
1 parent 7427516 commit 25bb297

1 file changed

Lines changed: 24 additions & 0 deletions

File tree

‎.agents/upstream-review.md‎

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,30 @@ Two standing sections outlive any single batch and must be read on every review:
1515

1616
## Review batches
1717

18+
## 2026-09-04 (targeted) — `beae2147a9487ec47ac992319f2216914b4cb62d..95103905f5`, lifecycle reliability only
19+
20+
**Cursor deliberately not advanced.** This was a targeted review, not a full
21+
batch. The developer asked, after the 2026-09-04 lost-message incident (Pylon
22+
PRs #264–#267), whether upstream held fixes Pylon was missing on the same
23+
paths: the Claude adapter's lifecycle emissions, synthetic turns, and
24+
`ProviderRuntimeIngestion` admission gating. Only commits touching those paths
25+
were assessed; the rest of the range stays undecided.
26+
27+
Answer to the question that prompted it: **no**. Upstream's adapter maps
28+
`system/status` to running and opens synthetic turns exactly as Pylon's did, and
29+
upstream has no strict admission gate at all — the gate and the steer intent are
30+
Pylon-only (`8d3fd193d7`, `3ba49ed5a2`). The incident was Pylon's, and so is the fix.
31+
Three upstream commits on the same files are still worth having; one landed here.
32+
33+
| Change set | Upstream | Decision | Pylon reference | Rationale or revisit condition |
34+
| ---------- | ---------------------- | -------- | ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
35+
| L1 | `560afffdea` / `#9135` | adopted | `upstream/2026-09-04-lifecycle-reliability` | Claude Agent SDK 0.3.170 → 0.3.260 plus failure classification for results the CLI abandons: `terminal_reason` values and 529 overloads now mark the turn failed with a user-facing reason instead of a silent success. Clean cherry-pick onto the adapter after #265; Pylon's handshake and between-turn guards sit above the changed code. 88 adapter tests pass. |
36+
| L2 | `01f3e50eca` / `#9653` | pending | — | OpenCode approvals and stop, and the `turn.aborted` terminal mapping in ingestion. Not standalone: it sits on `#9005`, `#8778`, `#9282`, and `#9293` in `OpenCodeAdapter.ts`, none of which Pylon has. Adopt as that five-commit series in order, oldest first, in the next OpenCode batch — not as a lone cherry-pick. |
37+
| L3 | `5b7d72aad1` / `#9167` | pending | — | Continue active threads across server self-updates. 26 files; 344 lines in `serverRuntimeStartup.ts`, which Pylon reworked for Prime turn adoption after restart (`c6881c331a`) and durable rollback (`937b3010c1`). Manual port with a Pylon-first reconciliation of the two restart models, not a cherry-pick. Depends on `#7719`, already adopted 2026-08-21. |
38+
39+
Deferred register and watch list: read, unchanged. DEF-7 and DEF-8 conditions
40+
were not re-evaluated in this targeted pass; the next full batch owes them a check.
41+
1842
## 2026-09-02 — `9b2d04317c68233782e0630464ac86d77d0686f3..beae2147a9487ec47ac992319f2216914b4cb62d`
1943

2044
The maintainer's standing instruction for this batch was to stop escalating

0 commit comments

Comments
 (0)