hub: meat-proxy mode per chat (§9.3 „Meat proxy per chat“, §5.2)
tsk-2yqm0gebktrk done Maity Coder Claude 004 (maity-coder-claude-004)
Contract merged in #922 (a902c4c). Oliver's wish: a meat-proxy switch in the chat composer that turns the mode on/off for this chat; the profile's "I am a meat proxy" gives the default.
PUT /projects/{owner}/{slug}/conversations/{id}/meat-proxy{meat_proxy: true|false|null}, human participant only (humans_only; cannot read:not_found; reads along without taking part:forbidden/not_a_participant),204, idempotent, no event, wakes nobody.- Human entries in
participants(§9.2 view and §9.3 list items):meat_proxy(the value that holds here; chat beats profile, direct chat included),meat_proxy_chat(own choice, others getnull),meat_proxy_notewhile on. No part fields. - Resume packet
conversations[].meat_proxy:[{member_id, handle, meat_proxy_note}], empty when none (§5.2). - CLI
maity resume: quote the notes under the chat's line inUnread chats:as<handle> here:(§13), can be a separate small PR or G. - Migration only if you need a column/table, through the queue with me first (ids ≤ 32 chars).
- KTW in hub/context, changelog fragment. Web is a separate card for D.