Switch to prefixed IDs and tell agents which Mac a message came from

This commit is contained in:
Ian Gulliver
2026-10-20 23:15:19 -07:00
parent f1296ba13d
commit 59bf17189d
42 changed files with 770 additions and 145 deletions
+5 -4
View File
@@ -12,6 +12,7 @@ import (
"g.fc.run/ai/byre/internal/api"
"g.fc.run/ai/byre/internal/git"
"g.fc.run/ai/byre/internal/ids"
"g.fc.run/ai/byre/internal/mcp"
"g.fc.run/ai/byre/internal/store"
)
@@ -92,7 +93,7 @@ func (m *Manager) ask(ctx context.Context, l *live, raw json.RawMessage) (string
return "", err
}
id := store.NewID()
id := ids.New(ids.InboxItem)
attachments := args.Attachments
if attachments == nil {
@@ -353,7 +354,7 @@ func (m *Manager) Deliver(ctx context.Context, sessionID string) error {
for _, p := range pending {
images = append(images, p.Response.Images...)
}
after, err := m.turn(ctx, sess, task, pending[0].Response.User, deliveryMessage(pending), "", images)
after, err := m.turn(ctx, sess, task, pending[0].Response.User, deliveryMessage(pending), "", "", images)
if errors.Is(err, ErrConflict) {
slog.Info("deliver held: session changed state", "session", sessionID, "err", err, "responses", ids)
return nil
@@ -392,7 +393,7 @@ func (m *Manager) deliverMidTurn(ctx context.Context, l *live) midTurn {
}
msgs := []queued{}
for _, in := range inputs {
msgs = append(msgs, queued{actor: in.Actor, text: in.Text, sendID: in.SendID})
msgs = append(msgs, queued{actor: in.Actor, text: in.Text, sendID: in.SendID, client: in.Client})
}
return midTurn{text: m.recordQueued(ctx, l, msgs), leadInputs: inputs}
}
@@ -415,7 +416,7 @@ func (m *Manager) deliverMidTurn(ctx context.Context, l *live) midTurn {
if len(mt.taskInputs) > 0 {
msgs := []queued{}
for _, in := range mt.taskInputs {
msgs = append(msgs, queued{actor: in.Actor, text: in.Text, sendID: in.SendID})
msgs = append(msgs, queued{actor: in.Actor, text: in.Text, sendID: in.SendID, client: in.Client})
}
parts = append(parts, m.recordQueued(ctx, l, msgs))
}