Commit Graph
3130 Commits
Author SHA1 Message Date
ciregenzandClaude Fable 5.1 96cb953a27 [eric] models: Fable 5 back on both lanes (1-token probe 200, drill turn completed), Fable 5.1 API-key only (the pinned router's CLI version is refused on the sub lane), gpt-5.4 off the ChatGPT lane (OpenAI refuses it), Sonnet 5 at its $2/$10 rate
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 20:58:03 -07:00
ciregenzandClaude Fable 5.1 e188b704f8 [eric] oauth: the refresh loop POSTs the router's test route (a GET was 405 and read as unknown, so it renewed nothing), reads the router's live rows instead of a stale db.json, and logs any answer it cannot read
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 20:58:03 -07:00
ciregenzandClaude Fable 5.1 a6ab863724 [eric] health: a dead-login verdict owns its second look; the lane answering again closes the pill and resumes its chats, capped at two resumes per chat so a flapping login cannot loop
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 20:58:03 -07:00
ciregenz bc7d61e8c9 [eric] canvas: the pure tether geometry moves into its own module, the hook keeps the link collection
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015xkMseod9vJ3hCrE43ctDo
(cherry picked from commit 4955505dac2250c4ab3030137d1ba1655d669d7d)
2026-09-06 20:22:01 -07:00
ciregenz ddd2e3c0f0 [eric] canvas: tethers leave facing edges and fan out, hold 1.5px and a 9px head at any zoom, link a running child, and ignore streaming
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015xkMseod9vJ3hCrE43ctDo
(cherry picked from commit aff630a730c4d7fd12364956fb680a2e311f9788)
2026-09-06 20:22:01 -07:00
ciregenz 96bcd37cd8 [eric] canvas: chats lose the resting drop shadow, pressing anywhere in a card selects it, pills counter-zoom so labels stay legible zoomed out
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015xkMseod9vJ3hCrE43ctDo
(cherry picked from commit 2cce32ac7a68f6ee010d6e9a0e3024535f6f58e5)
2026-09-06 20:22:01 -07:00
ciregenz d49f4bc1aa [eric] canvas: the camera writer publishes --canvas-zoom for chrome that must not shrink with the map
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015xkMseod9vJ3hCrE43ctDo
(cherry picked from commit f492d6af5c1bac1ec9e2c3966cf0907a80a4af86)
2026-09-06 20:22:01 -07:00
ciregenzandClaude Fable 5.1 df324b8af8 [eric] ci: dogfood stays Windows-only, its steps are the Windows build and the restored Mac leg failed before dogfooding anything; a Mac leg needs its own build step (ENG-486)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 19:27:25 -07:00
ciregenzandClaude Fable 5.1 9ff73b779f [eric] ci: a hung backend test fails by name after ten minutes (pytest-timeout) instead of burning the 60-minute job nameless, both Mac legs sat at 97% (ENG-486)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 19:07:14 -07:00
ciregenzandClaude Fable 5.1 28684b7a81 [eric] ci: the Windows leg's three failures were the harness, not the code: --import needs a file URL, autocrlf broke every source-pin test (LF pinned), the suite runs under the product's PYTHONUTF8; a poll test waits on state, not a clock (ENG-486)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 18:17:28 -07:00
ciregenzandClaude Fable 5.1 9d68ac6d5d [eric] ci: the three suites run on macOS arm64, macOS Intel and Windows on every eric/dev push, and dogfood gets its Mac leg back (ENG-486)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 17:58:24 -07:00
ciregenzandClaude Fable 5.1 2bc9d4eeb9 [eric] diagnostics: every envelope names the machine that wrote it (OS, version, chip, cores, memory), the fleet is not one M-series Mac
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 17:58:24 -07:00
ciregenzandClaude Fable 5.1 5f0ea16c68 [eric] canvas: a composer past its cap scrolls; the wheel walk caches only the overflow style and measures capacity live, the cached verdict outlived the box it judged (ENG-485)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 17:58:24 -07:00
ciregenzandClaude Fable 5.1 cca034fce3 [eric] models: GPT-6 Astra on both lanes (gpt-6-astra, 1.05M ctx, $10/$50); the gpt-5 body patch covers gpt-6; the sub-lane row is unverified until ChatGPT is reconnected
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 15:55:27 -07:00
ciregenzandClaude Fable 5.1 a6f6fbedd7 [eric] toolui: a failed widget chunk load is forgotten and every chunk is warmed at idle; one blip no longer leaves every later table a couldn't-draw line
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 15:55:27 -07:00
ciregenzandClaude Fable 5.1 da56b2cd1a [eric] auth: a dead login heals itself: renewed before expiry, a turn's 401 advances the verdict, the retry pushes the pill, a reconnect resumes the chats; preflight never restarts the router
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 15:55:26 -07:00
ciregenzandClaude Fable 5.1 063fb6863c [eric] release: 1.7.10-exp.9
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 14:04:13 -07:00
ciregenzandClaude Fable 5.1 c1fcfa6797 [eric] chat: stats density follows the container, the capped note sits on the widget, the reconnect pill yields to a tile, the docked browser grows in
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 14:03:29 -07:00
ciregenz ae297de242 [eric] toolui: a data-table renders a 60-row window and one layout; 5,000 rows were 742K of the page's 794K fibers, mounted twice
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
(cherry picked from commit d2bb3c82b948790ec340a886834a3ad9f0109962)
2026-09-06 13:50:52 -07:00
ciregenzandClaude Fable 5.1 8a991a85cc [eric] canvas: the pill's compact stats flag rides extraProps past the zod gate; in the wire props the strict parse stripped it and the widget never saw it
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 12:38:54 -07:00
ciregenzandClaude Fable 5.1 9ce20689b9 [eric] toolui: the vendored loader owns its readiness; a code-split widget under a fallback boundary stayed a skeleton forever above the memoized bubble
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 12:31:01 -07:00
ciregenzandClaude Fable 5.1 548a55a6d2 [eric] preflight: a lane is dead only on the router's CURRENT verdict, a stale errorCode 401 on an active row bounced the router every turn
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-05 10:23:28 -07:00
ciregenzandClaude Fable 5.1 224fd6884a [eric] canvas: a pill caps its artifact (8 rows, compact stats), ShowUI rows memoized on message identity, spawn pill yields to a tiled composer
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-05 09:29:00 -07:00
ciregenzandClaude Fable 5.1 05e8310691 [eric] health: a mid-refresh 401 that outlives the token rotation window is a dead login; recheck at 240s and push the pill
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-05 09:28:59 -07:00
ciregenzandClaude Fable 5.1 5ac58919e5 [eric] usage: the lane labels live in their own module; the previous commit's test imported the React component and was red when pushed
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-04 14:36:32 -07:00
ciregenzandClaude Fable 5.1 b965bf9118 [eric] usage: a By lane list names which credential served the requests; the by-lane counter read a key the router never sends and showed 0 everywhere
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-04 14:35:46 -07:00
ciregenzandClaude Fable 5.1 a54233b695 [eric] usage: the dollar figure says it is worth at API prices and not billed; a subscriber read "API value covered" as a charge and filmed it rising
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-04 13:30:19 -07:00
ciregenzandClaude Fable 5.1 3054024285 [eric] settings: the agent and the Help agent read connected subscriptions from the router; three dead token fields told a subscribed user nothing was connected
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-04 13:22:26 -07:00
ciregenzandClaude Fable 5.1 1fe148305b [eric] tests: the Tisusa-shaped image is incompressible like a real one, and the importer's regenerated .env is counted as its own
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-04 12:59:48 -07:00
ciregenzandClaude Fable 5.1 126d23a539 [eric] tests: the Tisusa-shaped path is exactly 80 characters, as the client's longest name is
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-04 12:58:13 -07:00
ciregenzandClaude Fable 5.1 2378414b88 [eric] swarm: a Tisusa-shaped bundle (507 files, eight deep, dotfiles, spaces, a 1.2 MB file) round-trips through the real exporter and importer, drilled on windows-latest
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-04 12:57:34 -07:00
ciregenzandClaude Fable 5.1 efba6ea26a [eric] telemetry: every diagnostic envelope carries app_version; Alex's -11 crashes had to be dated by which fields they carried
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-04 12:17:12 -07:00
ciregenzandClaude Fable 5.1 8f8cadea79 [eric] outputs: POST /outputs/create honours the workspace_id its request model advertises; the route dropped it and an API-created app had no workspace
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-04 11:11:53 -07:00
ciregenzandClaude Fable 5.1 2721ded6aa [eric] ci: the Windows .swarm round trip runs inside the health step while the app is up; a relaunch after the kill never came back within its budget
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-04 10:46:19 -07:00
ciregenzandClaude Fable 5.1 255a26519f [eric] ci: the Windows round trip prints what it seeded, exported and imported, so a hollow import names the stage that lost the files
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-04 09:58:00 -07:00
ciregenzandClaude Fable 5.1 58ccfeb475 [eric] ci: the Windows verify job exports a workspace app to a .swarm and imports it back, so a hollow Windows import can never pass again
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-04 09:32:05 -07:00
ciregenzandClaude Fable 5.1 88dd1f14d9 [eric] release: 1.7.10-exp.8 (adds the Windows .swarm import fix and the cloud-unavailable wording)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
v1.7.10-exp.8
2026-09-04 09:30:05 -07:00
ciregenzandClaude Fable 5.1 6abc71e2ac [eric] swarm: bundle keys are slashes on every OS; a Windows import walked staged files with backslashes, matched no workspace/ entry, and saved a hollow app that then said its files were missing
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-04 09:30:05 -07:00
ciregenzandClaude Fable 5.1 425df32fc4 [eric] workflows: a cloud with no workflows API reads as unavailable with the honest reason, not as the cloud declining the request
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-04 08:24:20 -07:00
ciregenzandClaude Fable 5.1 4d2cd934b5 [eric] smoke: the packaged smoke launches with the updater off; it shares the real updater cache and staged a 1.7.9 downgrade onto the user's app
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 18:56:00 -07:00
ciregenzandClaude Fable 5.1 d167cdcf3d [eric] release: 1.7.10-exp.7 (adds the dead-engine respawn and the connector auth broadcast)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 17:52:43 -07:00
ciregenzandClaude Fable 5.1 9bad3f5ab3 [eric] tools: a connector's auth change is broadcast and the Tools page settles on it; the popup-close guess read the status once, before the claim landed, and never again until a reload
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 17:52:01 -07:00
ciregenzandClaude Fable 5.1 377c5f3a69 [eric] agents: a CLI that died between turns is respawned and resumed instead of carded on every send; a crash signal is named on the exhausted card
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 17:45:29 -07:00
ciregenzandClaude Fable 5.1 e20ff99631 [eric] tests: serve mode's URL is the bundle server's root, not the deep serve route
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 17:24:17 -07:00
ciregenzandClaude Fable 5.1 06474998a4 [eric] release: 1.7.10-exp.6 (exp.5 never left draft; adds the serve-mode app fix and app icons)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 17:17:59 -07:00
ciregenzandClaude Fable 5.1 35bafaa2f4 [eric] outputs: serve mode hands a built bundle out from the root of its own loopback server; a deep path under the serve route left every React Router app blank after a reload
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 17:17:59 -07:00
ciregenzandClaude Fable 5.1 aadcf45398 [eric] outputs: an app's icon is one emoji (ported from eric/feature-requests, ENG-425); Material icon names were stored and never rendered, so every tile fell back to the grid
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 17:09:25 -07:00
ciregenzandClaude Fable 5.1 da1d6bd95e [eric] chat: the breathing mark stands alone; a real step label shows by itself instead of beside the dots
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 16:34:40 -07:00
ciregenzandClaude Fable 5.1 3ecc80ad4d [eric] release: 1.7.10-exp.5 (exp.4 never left draft; its notes carry over plus the still-thinking fix)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 16:15:25 -07:00
ciregenzandClaude Fable 5.1 5b7c8ee2ba [eric] streaming: a finished reply no longer hands a still-thinking bubble to the next socket; the live thought is dropped when the answer starts and at every turn end, and a snapshot is only built for a turn in flight
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 16:14:53 -07:00