 ciregenzandClaude Opus 5
|
df85e9ea86
|
[eric] tests: the surface a test needs is public, not reached into
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-25 01:59:48 -07:00 |
|
 ciregenzandClaude Opus 5
|
164956965e
|
[eric] tests: follow the code the file splits moved, without loosening any assertion
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 23:15:03 -07:00 |
|
 ciregenzandClaude Opus 5
|
857a374bf0
|
[eric] tests: the innocent case for every guard added since 1.7.9
A fix that fires beyond its intent is a trade, not a win. Each control was verified to fail with its guard removed.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 23:13:44 -07:00 |
|
 ciregenzandClaude Opus 5
|
fb92d785b4
|
[eric] agents: a human's Stop outranks every recovery path, checked before any of them (ENG-402, ENG-369)
The liveness door resurrected stopped sessions; a stopped browser agent looks exactly like a dead sidecar.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 22:59:44 -07:00 |
|
 ciregenzandClaude Opus 5
|
10084b1b28
|
[eric] agents: split the delegation backstop and the quit telemetry into their own files
Both host files crossed the 300-line ceiling; the seams were already there (quick-tool wedge vs delegation backstop, ladder logic vs its telemetry).
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 22:07:31 -07:00 |
|
 ciregenzandClaude Opus 5
|
b2ae28bd8c
|
[eric] agents: record the one nudge outcome the user actually sees (ENG-399)
1,695 nudges were counted on one install and zero outcomes, so "how often does the recovery fail" was unanswerable.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 22:02:03 -07:00 |
|
 ciregenzandClaude Opus 5
|
2b2c08a541
|
[eric] chat: the MCP suggestion card reserves room for its dismiss X, so Activate cannot sit under it (ENG-405)
Reported by Haik Decie. Padding derived from the X's own footprint so the two cannot drift apart.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 21:30:11 -07:00 |
|
 ciregenzandClaude Opus 5
|
8761320213
|
[eric] agents: a frozen sidecar can no longer hang a delegation forever (ENG-402)
Exempt from the 25s wedge deadline was silently also exempt from the 300s ceiling; the discriminator is liveness, not time. Reported by Haik Decie.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 21:27:13 -07:00 |
|
 ciregenzandClaude Opus 5
|
51296ed24b
|
[eric] docs: the asar trap, because gitignored and unpacked are different lists
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 13:27:55 -07:00 |
|
 ciregenzandClaude Opus 5
|
c0bf5156e6
|
[eric] release: the 181MB dictation model is a runtime download, not something to ship in app.asar
Gitignored is not the same as excluded from electron-builder; the two lists had diverged, costing 175MB on every auto-update.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 12:53:12 -07:00 |
|
 ciregenzandClaude Opus 5
|
dc014c5377
|
[eric] skills: an export never ships a venv, and a licence id is not an API key (ENG-401)
Both halves diagnosed by Haik Decie.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 11:38:26 -07:00 |
|
 ciregenzandClaude Opus 5
|
2e8d431118
|
[eric] agents: a run's result is not a replay, so the final answer survives the trail (ENG-396)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 11:16:06 -07:00 |
|
 ciregenzandClaude Opus 5
|
264f2ef6de
|
[eric] agents: the nudge ladder's last rung is bounded by construction, and can never widen a ratchet (ENG-399)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 10:54:05 -07:00 |
|
 ciregenzandClaude Opus 5
|
5d3eb5cc52
|
[eric] agents: no renderer bound for a model replays another agent's turns (ENG-396)
Four paths still emitted the USER:/ASSISTANT: shape ENG-358 removed from the recap, because they were tool results and aux calls rather than the recap.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 10:30:36 -07:00 |
|
 ciregenzandClaude Opus 5
|
596c0479ca
|
[eric] agents: a ceiling on harness-started turns, so a runaway loop cannot spend an account (ENG-398)
Measured across 79 installs: median 1/min, 76 of 79 under 10/min, and one install at 186/min that produced 44 of 45 policy blocks.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 10:22:54 -07:00 |
|
 ciregenzandClaude Opus 5
|
9541310a4a
|
[eric] agents: a policy block records which chat and what shape it sent, so the class can be tested (ENG-397)
model_error was the one envelope kind carrying no session_id at all: 1,028 of 1,028 null.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 10:05:14 -07:00 |
|
 ciregenzandClaude Opus 5
|
482e94ecb2
|
[eric] tests: one shared logger capture, and the shaper's names follow the p_ convention
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 01:06:56 -07:00 |
|
 ciregenzandClaude Opus 5
|
f8d67fdfd1
|
[eric] release: 1.7.9 ships with a story, and two log assertions stop reading the root logger
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 01:04:59 -07:00 |
|
 ciregenzandClaude Opus 5
|
3e0e1f67c6
|
[eric] agents: a malformed request is never transient, whatever reset hint rides along (ENG-395)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 00:48:51 -07:00 |
|
 ciregenzandClaude Opus 5
|
626d9ea4dd
|
[eric] agents: bound what one tool result costs the model, without ever deleting the answer (ENG-385)
The 50KB cap shaped our own transcript copy, never the model's context, so it could not have cut a token at any threshold.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-24 00:45:37 -07:00 |
|
 ciregenzandClaude Opus 5
|
cf5093d24f
|
[eric] agents: a process that will inject failures says so, and names a typo that armed nothing
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-23 21:12:06 -07:00 |
|
 ciregenzandClaude Opus 5
|
dc807e09ef
|
[eric] agents: a drilled fault must be the one the real classifier catches, and fire once (ENG-382)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-23 21:09:23 -07:00 |
|
ciregenz
|
b047e31abd
|
[eric] agents: a refusal guard may not eat a real answer; wording alone never destroys content (ENG-387)
|
2026-08-23 15:27:36 -07:00 |
|
ciregenz
|
8ed2330c76
|
[eric] agents: the two guards that could fail silently now declare themselves (ENG-388, ENG-386)
|
2026-08-23 13:19:26 -07:00 |
|
ciregenz
|
d4bfc122f0
|
[eric] agents: OSW_FAULT fires real provider failures on demand so the guards get drilled, not hoped for
|
2026-08-23 11:31:58 -07:00 |
|
ciregenz
|
7e4bb7a43b
|
[eric] agents: OSW_COMPACT_CEILING_TOKENS makes the mid-turn breaker drillable without a 180K turn
|
2026-08-22 21:55:05 -07:00 |
|
ciregenz
|
690da2940b
|
[eric] release: bump to 1.7.9-exp.1
|
2026-08-21 18:46:14 -07:00 |
|
ciregenz
|
628f6e57a0
|
[eric] dictation: the Accessibility check waits on the Input Monitoring request by callback, not line order (rdar://7381305)
|
2026-08-21 15:52:59 -07:00 |
|
ciregenz
|
07566a77e5
|
[eric] dictation: ask for Input Monitoring before any Accessibility check, or macOS never shows the prompt (rdar://7381305)
|
2026-08-21 15:50:14 -07:00 |
|
ciregenz
|
89f7621140
|
[eric] dictation: a denied watcher stays listed in the Input Monitoring pane instead of vanishing (ENG-360)
|
2026-08-21 14:45:26 -07:00 |
|
ciregenz
|
1947238dec
|
[eric] dictation: using dictation asks for the fn grant every time, not once per launch (ENG-360)
|
2026-08-21 14:30:31 -07:00 |
|
ciregenz
|
76ef467a6e
|
[eric] tests: bound the relay assertion on the region, not a magic char count
|
2026-08-21 14:16:01 -07:00 |
|
ciregenz
|
4be3f0fb7e
|
[eric] dictation: log the trigger path so a dead key can be told from an unpressed one
|
2026-08-21 14:15:01 -07:00 |
|
ciregenz
|
35a4b18647
|
[eric] dictation: fn recovers without a relaunch, and no OS is left with a silent dead key (ENG-360)
|
2026-08-21 13:51:09 -07:00 |
|
ciregenz
|
5e2fe299a3
|
[eric] dictation: a live fn watcher now MEANS a working tap, and a dead fn key says so (ENG-360)
|
2026-08-21 13:20:57 -07:00 |
|
ciregenz
|
05cd0f1990
|
[eric] agents: drop an unused import from the aging recap
|
2026-08-21 11:51:14 -07:00 |
|
ciregenz
|
df31e8d5d2
|
[eric] tests: the suite can never resume real chats with live credentials (ENG-388)
|
2026-08-21 11:51:14 -07:00 |
|
ciregenz
|
6cc705c0ee
|
[eric] models: only the catalog retires a pinned model, so a router bounce cannot move a chat vendors (ENG-386)
|
2026-08-21 11:51:14 -07:00 |
|
ciregenz
|
2c8ae9a3b8
|
[eric] agents: extraction-shaped handoffs and relayed refusals never reach the subscription lane (ENG-387)
|
2026-08-21 11:51:14 -07:00 |
|
ciregenz
|
2583c80f6c
|
[eric] agents: a session about to continue reports running, and releases it if the continuation dies (ENG-390)
|
2026-08-21 11:51:14 -07:00 |
|
 ciregenzandClaude Opus 5
|
771a7243b0
|
[eric] agents: a silent quit rebuilds only when the rebuild would buy something (ENG-354)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-21 10:29:56 -07:00 |
|
 ciregenzandClaude Opus 5
|
da18c0a5ef
|
[eric] agents: the Resume chip is a human, so a stopped chat honours it (ENG-384)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
|
2026-08-21 08:07:55 -07:00 |
|
 ciregenzandClaude Fable 5
|
f3e7f7b1af
|
[eric] release: bump to 1.7.8-exp.21
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01En8dRGsJPLrJCQBEkTH4Mp
|
2026-08-21 00:20:05 -07:00 |
|
 ciregenzandClaude Fable 5
|
de70e9fe79
|
[eric] agents: a subscription-lane policy block fails over to the user's own API key (ENG-383)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01En8dRGsJPLrJCQBEkTH4Mp
|
2026-08-21 00:20:05 -07:00 |
|
 ciregenzandClaude Fable 5
|
42e4f9116b
|
[eric] agents: transport heals respawn the CLI on the same transcript instead of rebuilding it (ENG-382)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01En8dRGsJPLrJCQBEkTH4Mp
|
2026-08-21 00:20:04 -07:00 |
|
 ciregenzandClaude Fable 5
|
a4be8c469f
|
[eric] agents: the recap carries no model text, nudges are short and unlabeled (ENG-358)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01En8dRGsJPLrJCQBEkTH4Mp
|
2026-08-21 00:20:04 -07:00 |
|
 ciregenzandClaude Fable 5
|
295a7b52e2
|
[eric] agents: a policy block ratchets the recap down instead of bricking the chat (ENG-358)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01En8dRGsJPLrJCQBEkTH4Mp
|
2026-08-20 23:44:44 -07:00 |
|
 ciregenzandClaude Fable 5
|
e8dc7c5fdd
|
[eric] import: only markdown becomes a bare skill, and skills always confirm (ENG-376)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01En8dRGsJPLrJCQBEkTH4Mp
|
2026-08-20 22:22:49 -07:00 |
|
 ciregenzandClaude Fable 5
|
5e0e89abe1
|
[eric] agents: a fresh heartbeat extends the unwedger to a 300s hard ceiling (ENG-368)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01En8dRGsJPLrJCQBEkTH4Mp
|
2026-08-20 22:22:49 -07:00 |
|
 ciregenzandClaude Fable 5
|
e90abb7bfc
|
[eric] system: watchdog deaths blame no workflow, card tails not owed, 20s probe (ENG-366)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01En8dRGsJPLrJCQBEkTH4Mp
|
2026-08-20 22:22:49 -07:00 |
|