An AUDIT hit of the communication policy is written once, as the call runs — not also when the charter asks a person first, and not for a decoderd approval (KamoCollab CP04 Task 31)
Found live in sp00verify: an SI's internal email under an AUDIT DENY rule, behind a charter approval (autonomy ceiling 1), wrote two chat_policy_event rows for ...
The read pointer moves while the authors are checked
chat_read made three MediaService calls one after another (the page, the session for the inside-content check, then the read pointer). The pointer is now moved ...
Pass the interaction gate and the audience filter to the pipeline after the rebase (KamoCollab CP07 Task 17)
PerceiveThenRequestTest replays kamoai-service's new perception — the woken chat's chat_read and a rag_search for what the person wrote
kamoai-service now reads the conversation that woke an SI (its card's /?openChat= link) and searches the knowledge base for the message's words during PERCEIVE....
Tool Plane Docstion foundations: SI charter views (Docstion, personality, escalation route members), recipient preferences client, attention and delegation counters, the offer rule, the DEFERRED and REROUTED statuses and the six audit columns (KamoCollab CP12 Task 23)
The DDL file for the tool audit's six Docstion columns (KamoCollab CP12 Task 4)
An SI's key, text or click aimed at an app reaches the window it is working in (SP97 T9)
The bridge sends a call that names only an app (app_id, wm_class or pid) to that app's first window, focusing it first. After a take-over, Kamo's old window sit...
Labels with the principal-private fallback, the source ledger with encrypted excerpts, withheld items and held decisions; mount the platform key (KamoCollab CP07 Task 16)
LabelService resolves labels through CP05's DisclosureLabelClient over the six owners (60 s cache per org and ref; inherited refs to depth 3); a ref no owner la...
The org graph and its eviction, the disclosure settings cache, Redis hash operations and the run context endpoints (KamoCollab CP07 Task 15)
Workstation_open_kamo says where Kamo opened and never to type a password (SP97 T9)
After a supervisor's take-over (which ends the SI's session) the older browser windows on an SI workstation show Kamo's sign-in page. On the next request Ava op...
Declare the disclosure recorder, carry the policy columns, and pre-mint the audit id in a CallLedger (KamoCollab CP08 Task 9)
DisclosureLedgerConfig declares DisclosureRecorder, with **************** joining @EnableJpaRepositories in the same commit. mcp_tool_call_audit gains policy_de...
The link reference text names the six kinds CP05 appends (KamoCollab CP05 Task 7)
A team chat line is SEND_INTERNAL_MESSAGE, free while no charter layer names it (KamoCollab CP04 Task 20)
Defect 5: ChatPack plans a CHAT post as SEND_INTERNAL_MESSAGE (support stays SEND_WEBCHAT_MESSAGE), chat_send/chat_mention declare it in alsoClasses, and chat_f...
Pin an SI's tools/list as origin/main answers it, before CP04 adds SEND_INTERNAL_MESSAGE (KamoCollab CP04 Task 20)
R1-1: the snapshot is the whole tools/list answer for an SI with every right, every app and a defaults-only charter, taken from origin/main fb83529.
DDL for the SI tool-call policy verdict columns (KamoCollab CP08 T2)
Three nullable ADD COLUMN IF NOT EXISTS on mcp_tool_call_audit: policy_decision, policy_rule, disclosure_event_id (spec §5.1, D11; master §6.10). Hand-applied b...
A colleague call refused for consent or hours says how to cite their own request (SP95-T29-1)
Task 29 step 3, live: the owner asked an AUTONOMOUS AI to call them. The model called phone_call without onRequestOf (nothing needed approval), K6 refused NO_VO...
A perception read that hands over nothing from outside taints the run INTERNAL, so a cited request can stand (SP95-F-1)
Every run's PERCEIVE calls notifications_list, mail_list_unread and calendar_list_events with the run id. All three are untrusted and none said where its conten...
Phone_call says plainly when the org's outbound policy blocks a number, and names text or email instead (SP93 T12)
K6 refuses a number the phone server's toll-fraud guards block with 409 BLOCKED_BY_OUTBOUND_POLICY (SP93 T11). phone_call now answers it as its own status, with...
A verified request from someone who may approve is the approval: an ON_REQUEST row, the action at once, its outcome on K3b (SP95 T34)
When the charter asks for approval and the AI cites a verified request (onRequestOf), K3 is asked with mode ON_REQUEST, the requester and the reference. An APPR...
An AI may cite the request it acts on (onRequestOf), checked by reading it; a run's taint says where it came from (SP95 T31)
Every AI write that may need approval takes the optional onRequestOf (chat:<conversation>/<message>, task:<item>, task:<item>/comment:<id>) on tools/list. The p...
Rag_search takes audience PUBLIC, the search the public may read (SP95 T12)
An AI on a phone call answers an anonymous caller, so it searches only the published articles the public may read, never notes (spec D12). The optional audience...
Approvals_request sends a class a tool performs to that tool; the charter stamp keeps tools fresh (SP95 T10)
approvals_request refuses an action class a catalogue tool performs with INVALID_ARGUMENTS USE_TOOL {tool, tools, actionClass}, or NO_TOOL_FOR_YOU when the call...
An upstream image follows the wrapped text instead of filling it (SP98 T25A)
A workstation screenshot is an MCP image block of about 250 KB of base64. The untrusted wrap serialized it into the result text, so the text budget held base64 ...
Phone_call calls a colleague by memberId, as PLACE_INTERNAL_CALL (SP95 T9)
A colleague is named by memberId, never by number: the planner reads their SecurityService call card and dials the cell, else the phone, else the work number on...
Use the RECIPIENTS_UNKNOWN constant instead of a string literal
Review round-1 NIT: the constant was declared and never referenced, so it and the literal in withDirectoryHint could silently drift apart if either were ever ed...
A rejected guessed recipient tells the model to look the person up
EmailService now refuses a send whose recipient names one of the organization's own mail domains but matches no mailbox, alias or member (RECIPIENTS_UNKNOWN, a ...
Like what you see shipping?
All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.
