fix(encyclopedia): room for thinking, merge duplicate new slugs, header timeouts retryable #20

Merged
k.renner merged 1 commits from fix/encyclopedia-thinking-caps into main 2026-10-27 06:14:36 +00:00
Member

Findings from the first production bootstrap run (2026-10-26):

  • Token caps: assign replies hit the 8000 cap. The adapter sends no thinking field, so claude-sonnet-5 thinks adaptively and thinking tokens count against max_tokens. Defaults raised: AssignMaxTokens 32000, SplitMaxTokens 32000, FoldMaxTokens 8000 (fold at 1000 was worse: a truncated fold is remembered like keep). Requests stream, so this is safe.
  • Duplicate new slugs: the model proposed new articles whose slug already existed (e.g. rook-ceph-storage, garage-object-storage); the proposal and the notes pointing at it were dropped. A new slug equal to a live article is now a reference to it. Redirected/retired slugs still drop.
  • Header timeout: an HttpClient timeout before response headers surfaced as TaskCanceledException and bypassed the per-call catch (the residual noted in #19). Now an HttpRequestException; caller cancellation still propagates.
  • Prompts.Version 6 → 7: batches remembered as failed because of the old cap are retried. No articles are written yet (MaxArticles=0), so resetting subject memory costs nothing.

Tests: full suite green (Core 174, Contracts 85, Application 223, Host 160); RED shown for the 4 new tests.

⚠️ Merge only after the running bootstrap Job wiki-encyclopedia-bootstrap has finished — the wiki Deployment uses Recreate, so the rollout would kill the run and lose its single end-of-run commit.

🤖 Generated with Claude Code

Findings from the first production bootstrap run (2026-10-26): - **Token caps:** assign replies hit the 8000 cap. The adapter sends no `thinking` field, so claude-sonnet-5 thinks adaptively and thinking tokens count against `max_tokens`. Defaults raised: AssignMaxTokens 32000, SplitMaxTokens 32000, FoldMaxTokens 8000 (fold at 1000 was worse: a truncated fold is remembered like keep). Requests stream, so this is safe. - **Duplicate new slugs:** the model proposed `new` articles whose slug already existed (e.g. `rook-ceph-storage`, `garage-object-storage`); the proposal and the notes pointing at it were dropped. A `new` slug equal to a live article is now a reference to it. Redirected/retired slugs still drop. - **Header timeout:** an HttpClient timeout before response headers surfaced as TaskCanceledException and bypassed the per-call catch (the residual noted in #19). Now an HttpRequestException; caller cancellation still propagates. - **Prompts.Version 6 → 7:** batches remembered as failed because of the old cap are retried. No articles are written yet (MaxArticles=0), so resetting subject memory costs nothing. Tests: full suite green (Core 174, Contracts 85, Application 223, Host 160); RED shown for the 4 new tests. ⚠️ **Merge only after the running bootstrap Job `wiki-encyclopedia-bootstrap` has finished** — the wiki Deployment uses Recreate, so the rollout would kill the run and lose its single end-of-run commit. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
claude-bot added 1 commit 2026-10-26 10:44:01 +00:00
fix(encyclopedia): room for thinking, merge duplicate new slugs, header timeouts retryable
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/push/test Pipeline was successful
e9ffad448f
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
k.renner merged commit 656ab0917f into main 2026-10-27 06:14:36 +00:00
k.renner deleted branch fix/encyclopedia-thinking-caps 2026-10-27 06:14:36 +00:00
Sign in to join this conversation.