Skip to content

Commit a891b72

Browse files
author
gluck
committed
merge feat/layered-cache: the delta seam's sections 1-5, and what the live scripts found
Sections 1 through 5 of plans/delta-seam-rebased.md, plus the defects that surfaced while proving them. THE SEND PATH the request body is written as it is sent (default on, board-configurable per aria), byte-identical to what it replaced. 1,448,136 B -> 663 B per send at 10,000 messages. THE STUDY FIX a translator cursor advances only when a ROW IS WRITTEN, so a delta spans every untranslated message between. Gluck's own example is the test. COALESCING adjacent same-role rows merge AT ASSEMBLY; the log stays append-only. A REGRESSION every send on a new aria failed 'empty context' -- a translator span cut by another channel's fork base. RETENTION the in-flight assembly is released when its turn ends. And the instruments: a citation checker, a read-path lock survey, and four live scripts that now assert the sends they depend on -- three of them had been printing PASS while discarding them.
2 parents 95a5057 + 1e5c655 commit a891b72

175 files changed

Lines changed: 8654 additions & 1948 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎internal/angelus/drain_test.go‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ func TestShutdownDrainSealsPartialTurn(t *testing.T) {
6565
a.Shutdown(2 * time.Second)
6666
assert.Less(t, time.Since(start), 5*time.Second)
6767

68-
ir, err := backend.Open(conv)
68+
ir, err := backend.OpenFigIR(conv)
6969
require.NoError(t, err)
7070
tail, ok := ir.PeekTail()
7171
require.True(t, ok)
@@ -91,7 +91,7 @@ model = "mock-model"
9191
require.NoError(t, err)
9292
conv, err := backend.CreateConversation(outfit)
9393
require.NoError(t, err)
94-
ir, err := backend.Open(conv)
94+
ir, err := backend.OpenFigIR(conv)
9595
require.NoError(t, err)
9696
_, err = ir.Append(store.Entry[message.Message]{Payload: message.Message{
9797
Role: message.RoleInput, Content: []message.Content{message.TextContent("run it")},

‎internal/angelus/fork_live_test.go‎

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ type liveForkBackend struct {
4848

4949
// Open backs forkPointOf, which maps a turn id to a fork LT. The log holds one
5050
// completed exchange so turn 1 resolves.
51-
func (f *liveForkBackend) Open(string) (store.Log[message.Message], error) {
51+
func (f *liveForkBackend) OpenFigIR(string) (store.Log[message.Message], error) {
5252
if f.log == nil {
5353
l := store.NewMemLog[message.Message]()
5454
l.Append(store.Entry[message.Message]{Payload: message.Message{Role: message.RoleInput, TurnID: 1}})
@@ -191,11 +191,6 @@ func (p *activeForkProvider) Send(ctx context.Context, in provider.SendInput, bu
191191
Content: []message.Content{message.TextContent("complete")},
192192
StopReason: message.StopEnd,
193193
}
194-
entry, err := in.FigLog.Append(store.Entry[message.Message]{Payload: msg})
195-
if err != nil {
196-
return err
197-
}
198-
msg.LogicalTime = entry.LT
199194
bus.PushMessageEnd(string(msg.StopReason))
200195
bus.PushFigaro(msg)
201196
return nil
@@ -272,12 +267,12 @@ func TestForkDuringActiveStreamKeepsContinuationRunning(t *testing.T) {
272267
default:
273268
}
274269

275-
alternative, err := backend.Open(response.Alternative)
270+
alternative, err := backend.OpenFigIR(response.Alternative)
276271
require.NoError(t, err)
277272
require.Equal(t, 1, message.CountMessages(unwrapMessages(alternative.Read())))
278273

279274
release()
280-
continuation, err := backend.Open(id)
275+
continuation, err := backend.OpenFigIR(id)
281276
require.NoError(t, err)
282277
require.Eventually(t, func() bool {
283278
return agent.Info().State == "idle" && message.CountMessages(unwrapMessages(continuation.Read())) == 2
@@ -333,11 +328,6 @@ func (p *activeToolProvider) Send(_ context.Context, in provider.SendInput, bus
333328
StopReason: message.StopEnd,
334329
}
335330
}
336-
entry, err := in.FigLog.Append(store.Entry[message.Message]{Payload: msg})
337-
if err != nil {
338-
return err
339-
}
340-
msg.LogicalTime = entry.LT
341331
bus.PushMessageEnd(string(msg.StopReason))
342332
bus.PushFigaro(msg)
343333
return nil
@@ -439,13 +429,13 @@ func TestForkDuringActiveToolKeepsToolAndContinuationRunning(t *testing.T) {
439429
default:
440430
}
441431

442-
alternative, err := backend.Open(response.Alternative)
432+
alternative, err := backend.OpenFigIR(response.Alternative)
443433
require.NoError(t, err)
444434
alternativeCount := message.CountMessages(unwrapMessages(alternative.Read()))
445435
require.GreaterOrEqual(t, alternativeCount, 1)
446436

447437
release()
448-
continuation, err := backend.Open(id)
438+
continuation, err := backend.OpenFigIR(id)
449439
require.NoError(t, err)
450440
require.Eventually(t, func() bool {
451441
return agent.Info().State == "idle" && message.CountMessages(unwrapMessages(continuation.Read())) == 4

‎internal/angelus/gc_test.go‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ func TestGCLeavesLiveAriasReadable(t *testing.T) {
110110
if got := runGCHandler(t, h, false); got.Collected != 1 {
111111
t.Fatalf("collected %d, want 1", got.Collected)
112112
}
113-
if _, err := backend.Open(conv); err != nil {
113+
if _, err := backend.OpenFigIR(conv); err != nil {
114114
t.Fatalf("live aria unreadable after gc: %v", err)
115115
}
116116
}

‎internal/angelus/import_test.go‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ func TestImportLandsAsAWholeConversation(t *testing.T) {
6464
require.Equal(t, "23a5a06d", resp.WasID)
6565
require.Equal(t, len(msgs), resp.Messages)
6666

67-
log, err := backend.Open(resp.FigaroID)
67+
log, err := backend.OpenFigIR(resp.FigaroID)
6868
require.NoError(t, err)
6969
var got []string
7070
for _, e := range log.Read() {
@@ -124,7 +124,7 @@ func TestImportLeavesExistingAriasAlone(t *testing.T) {
124124
require.NoError(t, err)
125125
resident, err := backend.CreateConversation(outfit)
126126
require.NoError(t, err)
127-
rlog, err := backend.Open(resident)
127+
rlog, err := backend.OpenFigIR(resident)
128128
require.NoError(t, err)
129129
_, err = rlog.Append(store.Entry[message.Message]{Payload: say(message.RoleOutput, "I was here first")})
130130
require.NoError(t, err)
@@ -135,7 +135,7 @@ func TestImportLeavesExistingAriasAlone(t *testing.T) {
135135
})
136136
require.NotEqual(t, resident, imported.FigaroID)
137137

138-
after, err := backend.Open(resident)
138+
after, err := backend.OpenFigIR(resident)
139139
require.NoError(t, err)
140140
require.Len(t, after.Read(), before, "the resident aria must be untouched")
141141
var texts []string

‎internal/angelus/integration_test.go‎

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,6 @@ func (m *mockProviderForIntegration) Send(_ context.Context, in provider.SendInp
3737
Content: []message.Content{message.TextContent("42")},
3838
StopReason: message.StopEnd,
3939
}
40-
entry, err := in.FigLog.Append(store.Entry[message.Message]{Payload: msg})
41-
if err != nil {
42-
return err
43-
}
44-
msg.LogicalTime = entry.LT
4540
bus.PushMessageEnd(string(msg.StopReason))
4641
bus.PushFigaro(msg)
4742
return nil

‎internal/angelus/listen_survives_interrupt_test.go‎

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -59,11 +59,6 @@ func (p *switchProvider) Send(ctx context.Context, in provider.SendInput, bus pr
5959
Content: []message.Content{message.TextContent(p.fastText)},
6060
StopReason: message.StopEnd,
6161
}
62-
e, err := in.FigLog.Append(store.Entry[message.Message]{Payload: msg})
63-
if err != nil {
64-
return err
65-
}
66-
msg.LogicalTime = e.LT
6762
bus.PushFigaro(msg)
6863
return nil
6964
}

‎internal/angelus/protocol.go‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -661,7 +661,7 @@ func (h *handlers) checkForkLT(ariaID string, lt uint64) error {
661661
if lt == 0 {
662662
return nil
663663
}
664-
log, err := h.angelus.Backend.Open(ariaID)
664+
log, err := h.angelus.Backend.OpenFigIR(ariaID)
665665
if err != nil {
666666
return fmt.Errorf("fork: open %s: %w", ariaID, err)
667667
}
@@ -680,7 +680,7 @@ func (h *handlers) forkPointOf(ariaID string, turn uint64) (uint64, error) {
680680
if turn == 0 {
681681
return 0, nil // head fork
682682
}
683-
log, err := h.angelus.Backend.Open(ariaID)
683+
log, err := h.angelus.Backend.OpenFigIR(ariaID)
684684
if err != nil {
685685
return 0, fmt.Errorf("fork: open %s: %w", ariaID, err)
686686
}
@@ -981,7 +981,7 @@ func (h *handlers) importAria(ctx context.Context, params json.RawMessage) (inte
981981
if err != nil {
982982
return nil, fmt.Errorf("import: create conversation: %w", err)
983983
}
984-
log, err := h.angelus.Backend.Open(id)
984+
log, err := h.angelus.Backend.OpenFigIR(id)
985985
if err != nil {
986986
return nil, fmt.Errorf("import: open %q: %w", id, err)
987987
}
@@ -1735,7 +1735,7 @@ func (h *handlers) ariaRead(ctx context.Context, params json.RawMessage) (interf
17351735

17361736
// The backend returns the same shared, memoized IR instance the live
17371737
// agent holds, so reads run lock-free against its writes.
1738-
log, err := h.angelus.Backend.Open(req.FigaroID)
1738+
log, err := h.angelus.Backend.OpenFigIR(req.FigaroID)
17391739
if err != nil {
17401740
return nil, fmt.Errorf("aria.read: open: %w", err)
17411741
}

‎internal/angelus/protocol_bench_test.go‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ type readBenchBackend struct {
2828
log store.Log[message.Message]
2929
}
3030

31-
func (b readBenchBackend) Open(string) (store.Log[message.Message], error) {
31+
func (b readBenchBackend) OpenFigIR(string) (store.Log[message.Message], error) {
3232
return b.log, nil
3333
}
3434

@@ -109,7 +109,7 @@ func BenchmarkDormantList(b *testing.B) {
109109
}}); err != nil {
110110
b.Fatal(err)
111111
}
112-
log, err := backend.Open(id)
112+
log, err := backend.OpenFigIR(id)
113113
if err != nil {
114114
b.Fatal(err)
115115
}

‎internal/angelus/protocol_list_test.go‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ func (b *metadataListBackend) FormState(string) (form.Snapshot, error) {
5454
return form.Snapshot{}, nil
5555
}
5656

57-
func (b *metadataListBackend) Open(string) (store.Log[message.Message], error) {
57+
func (b *metadataListBackend) OpenFigIR(string) (store.Log[message.Message], error) {
5858
b.logReads.Add(1)
5959
return store.NewMemLog[message.Message](), nil
6060
}

‎internal/angelus/provider_switch_test.go‎

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,6 @@ func (m *namedMockProvider) Send(_ context.Context, in provider.SendInput, bus p
3838
Content: []message.Content{message.TextContent("served by " + m.name)},
3939
StopReason: message.StopEnd,
4040
}
41-
entry, err := in.FigLog.Append(store.Entry[message.Message]{Payload: msg})
42-
if err != nil {
43-
return err
44-
}
45-
msg.LogicalTime = entry.LT
4641
bus.PushMessageEnd(string(msg.StopReason))
4742
bus.PushFigaro(msg)
4843
return nil

0 commit comments

Comments
 (0)