A provisioning race Yugabyte reports as a serialization conflict no longer 500s the calendar widget (SP98 T26)
listCalendars provisions the shared and the personal calendar find-then-create, each in its own transaction, and treated a lost race as done only when it surfac...
MailSearchWiringTest registers the recipient-domain validator EmailController now takes (SP98 T26)
ec2c638 gave EmailController a RecipientDomainValidator; the wiring test's context did not have one, so it has failed on main since 2026-09-28 **************** ...
A shared voicemail box tells only members who manage the phone server (SP98 T26, final review M-2)
The box's list, audio, read and delete answer only MANAGE_VOIP_SETTINGS (or a god-mode window), and Settings' picker offers only those members, but SharedVoicem...
A second Verify says a check is already running, not "something went wrong" (SP98 T26, final review M-1)
AIService answers a Verify while the provider's check lease is held with 409 verify_in_progress, and one whose lease cannot be taken with 503 verify_unavailable...
CP01-T21-1..4 — the teams table's live pause, a delete's recalculation, its words, and one numbered load
TeamManager, the teams table — rows, load states and delete (KamoCollab CP01 T21)
The Teams tab's table (spec §5.10, D22), as JobTitleManager lists job titles: team (title and the description's first line), members, lead, requirements, associ...
CP02-T12-1..4 — the directory's graph read, movesManager, the two unused repository methods, and injection
The manager line reads the org graph — cycle checks on a fresh graph, the directory on the cached one, and a member's own manager needs MANAGE_MEMBER_SECURITY to change (KamoCollab CP02 T12)
- MemberSecurityController: rejectManager keeps the self, org and record-active refusals and tests the loop with **************** the ten-level bound goes. ...
CP00-FINAL-1..3 — Task 12's Enter-As gap, chat-policy restore and cast check
Settles the CP00 final review's three IMPORTANT findings in the Task 12 brief: - CP00-FINAL-1: no live Enter-As. A same-org entry is a 400 before any audit (p...
Pin what an org with no active chat-policy set answers (KamoCollab CP00 final fix)
sp00verify's only chat-policy set is CP02 Task 6's enforced version 1, now an inactive history row. The new test pins the facts CP00 Task 12's restore rests on ...
R1-37 — Teams and Org chart on the Settings landing page and the home admin bar
SP98 final fixes: the IndicTrans OOM, screenshots reach the model, Task 25's record and Task 26's hand-off
Rulings SP98-FINAL-1..3 in the SP98 spec; ledger lines for Tasks 24, 25 and 25A; plan Task 26 step 2a (Task 25's deploy-pending work); SP97 scenario 8 no longer...
Pin that a same-org Enter-As is refused before any audit row or session (KamoCollab CP00 final fix)
EnterAsController answers 400 'target is current session organization' before ImpersonationAudit.enteredAs runs, on both branches, so no same-org entry can writ...
The teams client — types, TeamsApiError and the ten calls over the team relays (KamoCollab CP01 T20)
app/lib/teams/teamsApi.ts: Team, TeamDetail, TeamMemberRow, TeamRef, TeamWrite, TeamSaved; parseTeam (tolerant: ids as strings, missing lists [], a right whose ...
A help article no longer OOMKills the Tamil engine
KBService sends a help article's Lexical JSON to be translated: one long line with few sentence ends, ~0.46 model tokens a character. A 3,980-character article ...
CP01-T14A-4 — the 14A ship check ran in a throwaway team (the cast team is Task 27's)
The charter client knows TEAM, and the BFF relays teams (KamoCollab CP01 T19)
CharterLevel gains TEAM and CharterSubject a hypothetical member's teamIds; saveLayer('TEAM') PUTs **************** Two relays: /api/security/teams/** (GET, POS...
Reports read the org graph — a TEAM scope and a TEAM share reach the whole subtree, supervised AIs included (KamoCollab CP02 T11)
ReportScopeResolver.reportsTo is reports(member, true) of the cached graph: transitive and unbounded (the old walk stopped after ten levels), following the repo...
Teams at member creation — teamIds on create-team-member, checked before anything is written, joined inside the creation transaction before the first applied rights, announced after the commit (KamoCollab CP01 T14A)
POST **************** (and the /create and /bulk-create paths that share MemberCreationService.create) take an optional teamIds for a person or an AI (master R1...
CP02 T9 ship ruling — cast ensure's heads step as one direct PUT; Vera heads Collab Sales
CP01 T18 rulings (three more refusal words, the placeholders the UI passes)
CP00 T11 rulings (access-log event list location, dictionary words, tests)
The access log filter offers impersonation and Enter-As (KamoCollab CP00 T11)
SecurityService now writes IMPERSONATION_STARTED, IMPERSONATION_ENDED and ENTER_AS into the org's access log. The event-type list (accessLogEvents.ts, which the...
CP02 T10 ruling — SecurityService's chat loader on orgGraphCache::fresh, and its wiring test
SecurityService's chat policy reads member facts from the org graph, a graph loaded per snapshot (KamoCollab CP02 T10)
ChatPolicyBeanConfig builds ChatPolicySnapshotLoader with the graph constructor and orgGraphCache::fresh (ruling CP02-T17-3), as MediaService does, so the roste...
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.
