IotCallerView and the pure view rules V1-V11 (SP11 §4.4)
A key a device lists twice is a manifest defect and is never used (fail closed).
IotManifestClient, a per-session ETag-validated manifest cache with single flight (SP11 §4.4)
Per-caller schemas and availability for the ten iot tools (SP11 §4.5)
IoT error map, value checks, class check, whitelisted results and the command watch (SP11 §4.7, §4.9)
Downstream approval headers, conditional GET with ETag, opt-in error fields (SP11 P11)
CallerSchema per caller after visibility; PHYSICAL after outside content always asks a person; the approval travels on the plan (SP11 P4-P7)
A static tool's schema and availability may depend on the caller (CallerSchema): viewed after visibility for tools/list (one 3 s budget shared by the list) and ...
ToolRisk.PHYSICAL, the iot_ prefix, two charter classes, the IOT door and ApprovalRef (SP11 P1-P3, P8-P10)
"list…", "show…", "give me…" and "pull up…" are orders too, and a run with no order says why in the log
Live check in sp00verify (2026-10-15): a peer's "Nell, list the open tasks assigned to you and tell me how many there are." verified as their request (author, a...
The No Insubordination Rule — an SI carries out a teammate's direct order on their rights
Owner 2026-10-15, refined the same day: "It should apply to any team member. But just because a team member (human or SI) has more rights, does not mean that au...
A team member's call to a number on the do-not-contact list reads as who asked not to be called, and since when
kamoai-service 8b7b8d5 added the organization's do-not-contact list for calls (K6 409 DO_NOT_CONTACT), and a team member's call now carries the day the number w...
An uncited wake stands for an outside call only when its words ask for a call
The run's own wake (RequestVerifier.inferFromRun) is the request for a call to a colleague, but someone outside the org is rung on a teammate's name, with no co...
Phone_call calls whoever a team member named, looked up by name, with no approval and no consent gate, and never anyone else
Owner 2026-10-15: "When a supervisor, or any team member for that matter, tells SI to call someone else on the team, they should call them. No questions asked, ...
Meetings_join is JOIN_MEETING, not PLACE_CALL, and an unnamed JOIN_MEETING does not ask
Owner 2026-10-14: Luna (crm) asked the owner to approve joining a meeting he had told her to join; meetings_join was classed PLACE_CALL, so the charter's "Placi...
Meetings_join is "Join a meeting", not a phone call, and a meeting's link is joined as the room it names
Owner, 2026-10-14: SIs asked to join a meeting answered that they could not "join by phone" because "there's no dial-in", and asked for a room with dial-in enab...
An SI acts on the request its run was woken by without having to cite it, and K3 hears the tool's rights so a colleague who may do it themselves can direct it
Owner 2026-10-14: Luna (crm) asked the owner to approve joining the meeting he had just told her to join. Evidence: run 47cc1908 (NEW_CHAT, woken by his message...
An AUDIT org's SI is shown the record-link kinds every SI saw before KamoCollab
CP97 Task 17's Luna compare found her tools/list changed by KamoCollab: CP05 Task 7 appended TASK, DOCUMENT, KB_ARTICLE, MEMBER, AI_RUN and SMS_THREAD to Record...
Stamp a communication-policy refusal of a tool with no intent COLLAB_DENY interaction:<ruleId>
An SI's chat_find_or_create_dm refused by the interaction policy answered COLLAB_DENIED INTERACTION_POLICY but left its audit row's policy_decision and policy_r...
A person's consult route order moves to collab/ConsultChannels — their stated order, then the SI's CHANNEL_ORDER for the relationship, then CHAT, EMAIL, ASYNC, each route once; CollabPack, which also plans collab_position, now names no personality type; behaviour unchanged (KamoCollab CP13 Task 22, D19, ruling CP13-T22-1)
Tasks_list_comments shows a comment's kind and stance when it is not a plain comment — a POSITION, HANDOFF or ESCALATION row adds kind (and stance when it has one) for the disagreement protocol and the runtime; a COMMENT row, or one KBService gives no kind, is byte-identical to before (KamoCollab CP13 Task 9, D30)
ReportsHiddenWithoutWatches ignores the collab_* tools a configured charter also offers (KamoCollab CP14 Task 12)
The reports pack — reports_list, reports_run and metrics_get under the caller's own report rights (KamoCollab CP14 Task 12)
reports_list reads SecurityService's report library on the caller's session: the reports they may run, the measurable metrics of those reports and, for an SI ca...
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.
