openpencil/crates
Fini 768ea37d7b fix(ai): add request throttle + 429/503 backoff-retry to builtin http provider
A single provider rate-limit (HTTP 429) or overload (503/529) on one
design sub-agent request had no recovery: no client-side pacing to stay
under the RPM limit, and no backoff-retry once tripped — so the section
burned its attempts and the run reported a failed subtask while the rest
of the design was fine. Add a process-wide min-gap throttle (default
350ms, env-overridable) and transparent backoff-retry that honors
Retry-After (else exponential 1/2/4s, capped) around both the openai-
compatible and anthropic send paths. Benefits every builtin path
(orchestrator, design loop, chat). retry.rs stays unchanged: 429 remains
non-retryable at the ladder level since the http layer already backed off.
2026-07-05 16:52:01 +08:00
..
op-acp
op-ai merge: sync mesh/shader rendering, web live-sync and platform fixes from remote 2026-07-03 01:25:08 +08:00
op-ai-skills fix(ai): drop the 'prefer K()' kit-catalog push from the design-loop prompt 2026-07-05 04:01:09 +08:00
op-cli feat(openpencil): add code-to-design conversion flow 2026-07-04 13:23:28 +08:00
op-codegen feat(openpencil): add code-to-design conversion flow 2026-07-04 13:23:28 +08:00
op-config-store
op-design-lint feat(orchestrator): teach the geometry detectors design intent 2026-07-03 03:02:43 +08:00
op-editor-core feat(panels): font-picker import UI + native import/remove dispatch (phase 2b) 2026-07-05 14:21:48 +08:00
op-editor-host-core feat(editor): collapse the design loop's model narration 2026-07-04 18:23:43 +08:00
op-editor-ui feat(web): user font import — family-aware CanvasKit + import UI + IndexedDB (phases 3-4) 2026-07-05 14:21:51 +08:00
op-figma fix(figma): skip swapped instances in derived pre-seeding 2026-07-04 16:48:14 +08:00
op-git
op-host-desktop fix(desktop): prune superseded font file only after the index is saved 2026-07-05 14:21:50 +08:00
op-host-native feat(panels): font-picker import UI + native import/remove dispatch (phase 2b) 2026-07-05 14:21:48 +08:00
op-host-services fix(ai): add request throttle + 429/503 backoff-retry to builtin http provider 2026-07-05 16:52:01 +08:00
op-host-web fix(web): rebuild layout scene on system-font load too 2026-07-05 14:21:53 +08:00
op-host-web-server fix(editor): repair strokes and legacy render layout 2026-06-21 16:52:31 +08:00
op-i18n chore(editor): refresh quick examples with a travel booking prompt 2026-07-04 02:17:37 +08:00
op-mcp feat(mcp): add K() batch_design op to instantiate built-in UI kits 2026-07-04 19:51:59 +08:00
op-opmerge
op-orchestrator fix(orchestrator): collapse nested horizontal padding in structural wrappers 2026-07-05 16:52:00 +08:00
op-pen-loader feat(renderer): font-generation invalidation for imported fonts (phase 1) 2026-07-05 14:21:46 +08:00
op-process-io
op-rpc-transport
op-smoke feat(ai): seed a numeric artboard when the first loop batch skips it 2026-07-04 14:34:55 +08:00
op-web-sdk feat(openpencil): add code-to-design conversion flow 2026-07-04 13:23:28 +08:00
CLAUDE.md feat(ai): make script-gen the only subagent output protocol 2026-07-04 17:31:22 +08:00