Commit a901f34
committed
chore(sync): merge upstream/main (42 commits) into our main
Adopts upstream's full LLM client refactor (PR plastic-labs#459: src/utils/clients.py
deleted in favor of the new src/llm/ package with per-backend handlers,
ConfiguredModelSettings, and ModelTransport). Conflict resolutions were
taken upstream-side via -X theirs and our customizations are re-applied
adjacent to the new structure rather than as parallel forks.
Notable upstream changes pulled in:
- LLM client refactor: src/llm/{api,backend,executor,runtime,tool_loop,...}
with src/llm/backends/{anthropic,gemini,openai}.py
- ConfiguredModelSettings + ModelConfig replace per-component model fields
- New honcho-cli package, Zo Computer / Paperclip / SillyTavern / opencode
integration docs
- Surprisal filter format fix (plastic-labs#581) — converged with our 4e7f136
- Many smaller fixes: dreamer thresholds, deriver blank-observation guard,
vector sync retry budget, embed() string-input fix, etc.
Adjacent re-applications (deployment-critical):
- src/config.py: re-add LLM.CF_GATEWAY_AUTH_TOKEN
- src/llm/registry.py: inject cf-aig-authorization header in
get_*_override_client factories when base_url targets a CF gateway
- src/embedding_client.py: same header injection on openai/gemini branches
Dropped (now redundant or replaceable):
- Per-specialist DEDUCTION_PROVIDER / INDUCTION_PROVIDER /
*_THINKING_BUDGET_TOKENS overrides — covered by upstream's
DREAM_DEDUCTION_MODEL_CONFIG__TRANSPORT etc. env vars
- get_provider() / get_thinking_budget() methods on BaseSpecialist —
superseded by ConfiguredModelSettings on each specialist's MODEL_CONFIG
- src/utils/types.SupportedProviders — replaced by ModelTransport
- Custom Traefik service block in docker-compose.yml.example — Traefik
configs remain in docker/traefik/ for users who want to wire it up
- Our 4e7f136 surprisal fix — identical to upstream's plastic-labs#581
Deployment notes for re-keying .env:
- LLM_CF_GATEWAY_API_KEY / LLM_CF_GATEWAY_BASE_URL / LLM_OPENAI_BASE_URL /
LLM_OPENAI_COMPATIBLE_* / LLM_VLLM_* are no-ops now (extra='ignore'). Use
per-component MODEL_CONFIG__BASE_URL / MODEL_CONFIG__API_KEY env vars
(e.g. DREAM_DEDUCTION_MODEL_CONFIG__BASE_URL=...).
- LLM_CF_GATEWAY_AUTH_TOKEN remains as the single global needed for the
cf-aig-authorization header.
Verification: ruff check src/ ✓, basedpyright src/ ✓ (0 errors).178 files changed
Lines changed: 20209 additions & 6098 deletions
File tree
- .claude/skills
- honcho-cli
- honcho-integration
- docs
- changelog
- snippets
- v2/contributing
- v3
- contributing
- documentation
- core-concepts
- introduction
- reference
- guides
- integrations
- examples/zo
- tests
- tools
- honcho-cli
- scripts
- src/honcho_cli
- commands
- tests
- mcp
- src
- sdks/python
- src
- crud
- deriver
- dialectic
- dreamer
- llm
- backends
- reconciler
- routers
- schemas
- telemetry
- events
- utils
- vector_store
- webhooks
- tests
- bench
- crud
- deriver
- dialectic
- dreamer
- integration
- live_llm
- llm
- test_backends
- routes
- sdk_typescript
- telemetry
- utils
- vector_store
- webhooks
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
91 | 91 | | |
92 | 92 | | |
93 | 93 | | |
| 94 | + | |
| 95 | + | |
94 | 96 | | |
95 | 97 | | |
96 | 98 | | |
| |||
106 | 108 | | |
107 | 109 | | |
108 | 110 | | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
109 | 121 | | |
110 | 122 | | |
111 | 123 | | |
| |||
524 | 536 | | |
525 | 537 | | |
526 | 538 | | |
| 539 | + | |
| 540 | + | |
527 | 541 | | |
528 | 542 | | |
529 | 543 | | |
| |||
0 commit comments