Commit Graph
102 Commits
Author SHA1 Message Date
kyleandClaude Fable 5.1 74b8af4ce0 AGENTS.md: a refused tool call is not a reason to end the turn; v2 plan (props, ctx guard, wake, identity, wiring) as acceptance tests; v1.1 run note
v2 given tests compiled against a panic-only skeleton (go vet clean); no reference
implementation.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 08:37:38 -07:00
kyleandClaude Fable 5.1 9ba04b16e0 v1.1 plan: cancelled requests recorded as 499, empty usage is []; tests proven failing on master
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 08:28:07 -07:00
kyle bebee332a5 Merge v1: leases, limiter, chooser, fingerprint, SQLite store, accounting, admin (8/8 tasks by Ornith) 2026-09-25 07:00:34 -07:00
kyleandClaude Fable 5.1 d7d8fcfa3b v1 review: checklist, outside probes, five findings; fill the Model column
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 07:00:21 -07:00
kyle 9e9750f281 Merge origin/master into v1: plan notes 2026-09-25 07:00:21 -07:00
kyleandClaude Fable 5.1 c6d115a8ff v1 plan: reference copy of the one edited given file (recorder_test.go)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 06:59:19 -07:00
kyle cf2aa24393 Smoke run for v1; README for leases, admin and accounting
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 06:56:54 -07:00
kyle 587ec7a1ec Merge origin/master into v1: per-model free slots rule, task 08 step 1b 2026-09-25 06:50:42 -07:00
kyleandClaude Fable 5.1 dc6066be8b v1 plan: Chooser free slots are per model (task 05 rule corrected, task 08 step 1b); note the finding
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 06:50:09 -07:00
kyle d82bfba3ec Wire the store, lease table and limiter into crossbar
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 06:38:36 -07:00
kyle 4df85d83c3 Merge origin/master into v1: task 06 text fix 2026-09-25 06:34:26 -07:00
kyle 32ac7f549a Admin: leases, pin, release, drain, usage, metrics
cmd/crossbar/main.go calls admin.Handler with the new 6-arg signature, passing nil for the not-yet-wired leases/limiter/store/drainer (task 07 wires them) so go vet and go test ./... pass on cmd/crossbar. This is a compile fix, not the task-07 wiring; noted in the implementer-log.

Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 06:33:29 -07:00
kyleandClaude Fable 5.1 c2136b3515 v1 plan: task 06 must update the one admin.Handler call in main.go for the gate; note the finding
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 06:29:09 -07:00
kyle c2a8b88a3f Merge origin/master into v1: task 06 split into admin + main 2026-09-25 06:08:28 -07:00
kyleandClaude Fable 5.1 4da47b3dfa v1 plan: split task 06 into admin (06) and main wiring (07); smoke becomes 08; note the finding
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 06:07:53 -07:00
kyle 97f7cdffd9 Route by lease, queue per host and model, record every request
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 05:15:21 -07:00
kyle 02008f6d56 Merge origin/master into v1: given proxy tests split under the line limit 2026-09-25 05:08:12 -07:00
kyleandClaude Fable 5.1 ebcf6e4536 v1 plan: split the given proxy tests under the 400-line limit (scaffolding into helpers_test.go); note the finding
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 05:08:03 -07:00
kyle 740583f812 Merge origin/master into v1: proxy test fix, helpers_test.go given 2026-09-25 04:56:33 -07:00
kyleandClaude Fable 5.1 7bc6761120 v1 plan: helpers_test.go as a given file, fake upstream records /v1/models, no /tmp rule; note task 05 findings
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 04:56:22 -07:00
kyle 02b2978b3e Merge origin/master into v1: corrected proxy tests, task 06 candidates rule 2026-09-25 04:29:57 -07:00
kyleandClaude Fable 5.1 1cc645a85b v1 plan: fix spread test config, queue test read, admin pin via lease.Candidates; note the findings
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 04:29:16 -07:00
kyle 9133240cfb Add the sticky lease table
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 04:26:47 -07:00
kyle e65826b369 Merge origin/master into v1: corrected TestPinAndUnpin, task 02 replacement fixtures 2026-09-25 04:24:55 -07:00
kyleandClaude Fable 5.1 29b3a5c38e v1 plan: fix TestPinAndUnpin event assertion (positions -> order and content); note the finding
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 04:05:02 -07:00
kyle 7e0dbb4a6f Add the per-host-model limiter and the host chooser
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 03:53:38 -07:00
kyleandClaude Fable 5.1 0874e00bdd v1 plan: task 02 replacement fixtures for the lease_idle/unknown-key conflict; AGENTS.md: earlier plans' given files stay protected
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 03:47:15 -07:00
kyle 463cea18de Add the conversation fingerprint and the v1 config keys
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 03:46:05 -07:00
kyleandClaude Fable 5.1 da1da149b8 v1 plan: note the task 01 stop/resume
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 03:35:31 -07:00
kyle 816614d6dd Add the SQLite store for leases and accounting
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 03:34:24 -07:00
kyle 38045994f3 Merge origin/master into v1: gofmt-clean given files 2026-09-25 03:32:53 -07:00
kyle 091d8d16a5 Stop v1/01-store: gate blocked by pre-existing _files gofmt under Go 1.26.7
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 03:30:36 -07:00
kyleandClaude Fable 5.1 635b16bcca v1 plan: gofmt the given test files (gate walks docs/ too); note the finding
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 03:21:45 -07:00
kyleandClaude Fable 5.1 c457046f8b v1 plan: leases, limiter, chooser, fingerprint, SQLite store, accounting, admin — acceptance tests first, no reference
Every given test compiled against a panic-only interface skeleton (go vet clean); nothing was
implemented. modernc.org/sqlite v1.59.0 vetted in a scratch module (WAL works); go.sum given.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 03:10:24 -07:00
kyle 851cc80eba Merge v0.1: review fixes (Flush without panic; unreadable config test) 2026-09-25 03:03:18 -07:00
kyle 9e0f906c8b Review fixes: recorder Flush without panic; unreadable config file is an error
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 02:58:17 -07:00
kyleandClaude Fable 5.1 74e7d4895b v0.1 plan: review fixes as failing acceptance tests first; AGENTS.md lessons + deviations rule
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 02:55:57 -07:00
kyle 94b8c84ab5 Merge v0: crossbar static router, health, streaming proxy, admin, smoke (5/5 first-gate by Ornith) 2026-09-25 02:43:01 -07:00
kyleandClaude Fable 5.1 89ab0b8d34 v0 review: checklist, outside probes, six findings; fill the Model column
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 02:42:52 -07:00
kyle e436c62a52 Add the smoke run, README and systemd unit
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 02:40:33 -07:00
kyleandClaude Fable 5.1 1e7d6dd78f v0 plan: task 04 timeout check needs --preserve-status; note the finding
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 02:33:46 -07:00
kyle 4bc5115f24 Add the admin endpoints, the crossbar binary and the fake upstream
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 02:32:50 -07:00
kyle 5b347d9dd9 Add the routing reverse proxy
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 02:26:19 -07:00
kyle 68ad94d693 Add the health poller
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 02:16:38 -07:00
kyle 73b24357dd Add the Go module, the gate and the config package
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
2026-09-25 02:09:42 -07:00
kyleandClaude Fable 5.1 c524ff943d v0 plan: move given files to _files/ so go vet ./... ignores them; note the first-attempt finding
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 02:03:00 -07:00
kyleandClaude Fable 5.1 89e47d83f8 v0 plan: AGENTS.md, gate, five task files with given tests, run-plan driver
Tests were run against a private reference implementation: gate ok after every
task in order, smoke ok (stream spread ~1000 ms). The reference is not in the
repository.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 01:51:53 -07:00
kyleandClaude Fable 5.1 b52126ba0b PLAN: OpenCode {env:} substitution verified on 1.15.10
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 00:49:30 -07:00
kyleandClaude Fable 5.1 27d43f67ea PLAN rev 4: per-session leases (route + fingerprint), learned context sizes, many-OpenCode-instances use case
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 00:48:03 -07:00
kyleandClaude Fable 5.1 fe51c20c10 PLAN rev 3: TOML config
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-25 00:44:38 -07:00