Nests: team rooms with core crows and borrowing
- Server: nests API, persistence, core-first picking, borrowed flag (built by the backend agent against EVENTS.md; tests pass with -race) - UI: nests in the sidebar, one feed per nest, header shows the core team, New nest dialog, borrowed crows labeled, per-nest waiting count - start.command: one-click local server in controlled mode (mock crows, localhost only, state in .crows/) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UQnSw4RRWp8uqpj3nsnnXF
This commit is contained in:
14 files changed
+782
-62
No files matched your search
+5
-1
@@ -93,10 +93,14 @@ func newTestServer(t *testing.T, g Guardrails, timeout time.Duration) (*httptest
|
||||
t.Fatal(err)
|
||||
}
|
||||
t.Cleanup(func() { flog.Close() })
|
||||
nests, err := LoadNests(filepath.Join(dir, "nests.json"))
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
ctx, cancel := context.WithCancel(context.Background())
|
||||
approver := NewWebApprover(timeout)
|
||||
p := &Pipeline{Flock: NewFlock(MockBrain{}, g, flog), Ledger: ledger, Log: flog, G: g, Approver: approver}
|
||||
s := NewServer(ctx, p, approver)
|
||||
s := NewServer(ctx, p, approver, nests)
|
||||
s.beat = 20 * time.Millisecond
|
||||
ts := httptest.NewServer(s.Handler())
|
||||
t.Cleanup(func() { cancel(); ts.Close() })
|
||||
|
||||
Reference in new issue
Block a user