SP13 Task 9 — ruling SP13-T9 (VOIPService internal filter matches the decoded path)
KamoAI internal surface guarded by its own secret
/api/voip/internal/** (SP13: AI lines, SIP credentials for LiveKit) takes KAMOAI_INTERNAL_SECRET, not the cluster secret; the cluster prefixes keep theirs. The ...
AI-call consent chips and dialog on lead and contact phone numbers
One load per record (useAiVoiceConsent) feeds a chip beside every phone number on the lead page and the contact panel; the chip opens a dialog that shows the co...
Mail pack — read, search, threads, send, reply, forward, drafts, move, flags
SP04 Task 17 — ruling SP04-T17 (pin is an INSERT, retried reads, best rank wins, canonical model ids)
SP13 Task 7 — ruling SP13-T7 (aiVoice verdict guarded in the capabilities answer)
The roster, participants, history and send survive a database conflict too
Completes 279a389. After it shipped, production logged the same YugabyteDB 40001 "Restart read required" on Exec2Exec's roster (09-27 16:00Z, and three times ea...
SP10 Task 40 — ruling SP10-T40b (approval changes filtered before the org-change debounce)
Filter approval changes before the org-change debounce (SP10)
useOrgChanges coalesces a burst and hands onChange only its last frame, so testing isApprovalChange on that frame lost an APPROVAL followed within 400 ms by the...
Text helpers, id-safe projections and the fake Kamo services harness for packs
HtmlText lays mail HTML out the way a browser shows it (one jsoup walk: collapsed source whitespace, br, block and paragraph breaks, cells, pre); ThreadIds repr...
Catalogue and resolve endpoints for the charter editor
S1 GET /api/security/charter/catalog and S3 POST /api/security/charter/resolve (spec 4.8). A member draft refused by S6's edit rule answers with S6's bodies (re...
SP04 Task 16 — ruling SP04-T16 (transient-DB retry around member facts and policy reads; added tests)
SP10 Task 8 — ruling SP10-T8 (SecurityService client acts only on SecurityService's own verdicts)
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.
