AiRealismTestWindow β calls from a test extension to an SI inside a window are test calls
Tables for shift report settings and decisions, so KamoInitializer can recreate them
Owner order 2026-10-26 (TPSHIFTREPORTS): SI clock-in/clock-out reports become configurable per department, job title, team and member, for the sending SI and fo...
Settings waterfall, private memory and pending confirmation rows for the personal SI Assistant
Declared for KamoInitializer; aiservice created the tables by hand **************** and writes them with targeted SQL.
A realtime speech-to-speech model can be verified β REALTIME_AUDIO is probed by opening a session (voice realism VR1, D9)
REALTIME_AUDIO was ATTESTED, and only platform providers can be attested, so no org's realtime model could ever be VERIFIED, and an SI is routed to VERIFIED mod...
The AI_CALL_METRICS entity, with the call's voice realism counts (VR1)
kamoai-service writes ai_call_metrics JDBC only; the entity declares every column (and the new REALISM text column, a JSON object of the call's realism counts: ...
AiPersonaGeneration, the record of the personality generated for each SI
The SI's own rights decide who may invite it; meeting_invite_policy is only an optional restriction
Owner decision 2026-10-26: an SI whose own security policy allows meetings may be invited by any team member; one whose policy does not only by its supervisors ...
Every SI speaks by its personality, and the tables for background sound, voice consent and caller phrase memory
PhoneStyle compiles an SI's traits into spoken phone rules (contractions and address forms, warmth, humor, energy, hedging, empathy, curiosity, register, region...
SI_AUTH_REQUEST notification kind and the SI authentication log entities
Owner 2026-10-26: direct orders reaching an SI over a channel that proves nobody's identity are confirmed by the member in Kamo first. Appends **************** ...
MeetingInvitePolicy β who may invite an SI into a meeting; declare ai_member_call_options
Kamo Meet "Invite an SI" (owner order 2026-10-26). An SI's supervisors (its reporting line over manager and SI-supervisor edges, the org owner) may always invit...
Declare ai_call_recap and ai_member_recap_options for the SI call recap email (TPRECAPS)
One row per SI phone call that had a conversation, so its recap reaches the supervisor once; and an SI's two recap options, both on by default. Hand-applied DDL...
Loan summaries carry when an MLOS loan really opened (openedAt)
Pre-application statuses, every HMDA outcome, archive, and Arive's real dates
Arive loans were mapped from stage names alone: every pre-application stage became Application Taken, every archived loan Withdrawn (funded ones too), every adv...
Sync external MLOS (Arive, MeridianLink) at the loan, not the lead
The lead-level LOS link is replaced by a loan-level one: every loan application is mirrored to the market's external MLOS and back, linked one-to-one by MLOS_LO...
E-prescribing schema β network account, enrollments, pharmacy directory, transmissions
Five new clinical tables (ehr_erx_settings, ehr_erx_enrollment, ehr_erx_pharmacy, ehr_erx_pharmacy_import, ehr_erx_transmission), structured preferred/alternate...
Patient outreach entities β contact consent, sent messages, reminder ledger, reminder settings, video visits
- PatientContactConsent (ehr_patient_contact_consent): append-only SMS / EMAIL / do-not-contact ledger - PatientMessage (ehr_patient_message): texts and e-mails...
Terminology store can hold loaded releases β load state, picker columns, ingredient links, search words
term_code_system_release gains **************** so only a COMPLETE release answers a lookup. term_concept gains concept_class (RxNorm TTY), short_display, billa...
X12 claim-file entities β billing profile, clearinghouses, billing clinicians, payer plan types, control counter, 837 batches, imports
The tables behind hand-uploaded 837P files and 999/277CA/835 imports. RemittanceAdvice.raw835 is now @JsonIgnore (an 835 names every patient it pays and the rem...
Note author and cosigner ids as text for browsers
Member ids are int64 beyond JavaScript's exact integer range; the transient authorMemberKey / cosignerMemberKey let the chart compare "is this my note" and pre-...
Chart list reviews, allergy reaction/severity, status reasons, order diagnoses, result review note
- ClinicalListReview (fhir_chart_list_review): a real reviewed-at record for the allergy and medication lists, so 'reviewed' stops meaning 'at least one row e...
Schedule entities for the practice's clock, rooms, desk payments and recall outreach
- PracticeSettings (ehr_practice_settings): the practice's time zone and default visit length - PracticeRoom (ehr_practice_room): rooms a patient is put in; ret...
Front-desk registration record β contact details, emergency contacts, MRN counter, coverage write fields
Patient gains preferred contact method, primary care member and preferred pharmacy; emergency contacts are FHIR Patient.contact (fhir_patient_contact, retired n...
Chart documents, practice note templates, note read-side text and withdrawal record
- PatientDocument (ehr_patient_document): category, title, document date, content type, size, SHA-256, imaging Img id + storage key, uploader, entered-in-erro...
Record how a claim was sent, and list reviewed emergency accesses
A claim gains ready_at, submission_channel, submitted_by_member_id and submission_note, so a claim sent by hand through a payer portal or on paper is recorded h...
Seat and add-on license changes mid-period, on a chosen date, prorated
SubscriptionChangeService records a change to a live subscription's seats and add-on licenses effective on any date from today. It previews the exact prorated c...
Track an invoice's pending online card payment
New nullable column **************** plus helpers to list and settle pending sessions idempotently (a payment carrying the same processor reference is never rec...
Negotiated add-on prices and a quote's discount carry into the subscription
Converting a quote now carries: - each add-on's agreed per-license price (when it differs from the catalog's) - the quote's or accepted option's discount, as a ...
Quotes convert into subscriptions; tenant orders never comp the seller
- A quote in a SUBSCRIPTION market, or whose accepted rows were filled from the subscription catalog, converts into a SubscriptionOrder (plan, seats from the ...
Turn renewal on or off for a live subscription; notes on any order
The console's auto-renew switch sent a field the draft-only order update did not have, so it never saved; and notes failed on any order past draft.
Card auto-charge bookkeeping on subscription invoices
AUTO_BILL invoices are charged on their billing day once approved and retried every three days, up to four attempts. Each attempt is numbered before it is made ...
License-based add-on pricing and a real subscription invoice lifecycle
One rule for add-on quantity (AddOnLicenses): every add-on bills the licenses PURCHASED, like seats - per-user add-ons default to the seat count, storage to the...
Standing permissions from an approval (Approve and always allow)
A member's own APPROVAL item may now name one tool (tool_name) and record the approval it came from, who granted it and when (item_origin APPROVAL). The resolve...
GodPassesRightChecks β god eligibility alone counts only in the platform org (IoT R7 round 3)
Owner rule (2026-10-18): outside the platform organization god acts only through break-glass. **************** an open window always passes a tenant-right check...
Index loan_files.loan_transaction_id on LoanFile
The deal -> loans lookup **************** deal status, pipeline summary, and the retireIfEmpty check after an application is deleted) was a sequential scan. The...
GodWindows finds a member's open break-glass window among their sessions (IoT R7)
Pure (no stereotype, no Redis client): the caller reads ***UIDX<userId> and hands the sessions in. A window counts only in the member's own session (not imperso...
The command audit and the activity say when god acted, and under which break-glass window (R7)
Owner 2026-10-18 (IoT master section 10 R7): god, the platform owner, has total control of IoT devices, and every god action outside the platform org is audited...
The kamo-iot host label is devices, not iot
DomainAliasType.IOT keeps its internal name but now carries the customer-facing label "devices" (owner 2026-10-18: "iot" is a technical term; URLs say devices)....
PREPARE_COMMISSION_PAYOUTS (570), compose a draft payout batch without sending it (SITP TP18)
MANAGE_ORG_FINANCES composes and sends a commission payout batch, and an SI can never hold it (AiRightsFloor), so a finance SI could prepare nothing for a perso...
SITP TP02 rights β MANAGE_ANALYTICS (440), VIEW_ORG_BILLING (441), MANAGE_ORG_BILLING (442)
MANAGE_ANALYTICS: Analytics signed every caller in as one shared analytics administrator, so VIEW_ANALYTICS let anyone create, edit and delete every tracked web...
SITP TP01 rights for formerly session-only endpoints (410-418)
Nine rights in the TP01 block for endpoints that answered any signed-in member of the organization: - MANAGE_PRODUCTS, MANAGE_INVENTORY, MANAGE_RETAIL_CUSTOMER...
An SI never signs, prescribes, orders, immunizes, breaks the glass, merges charts or bulk-exports patients
SITP TP00, owner decision 2026-10-18: in Patient Records an SI drafts only (and may post payments behind approval). Nine EHR rights join AiRightsFloor.NEVER_GRA...
KAMO_SIMULATOR, the 22nd provider type (test-only; SP14)
Appended last; the client catalogue JSON keeps the 21 program types (@kamo/iot-core is unchanged).
IoT Sharing Access report, registry guards, fifteen seed reports
IotReportSupport (SI clamp, vendor retention, lookups) and IotAlarmReportMapping
ReportDefinition.exportRight β a per-report export right on top of EXPORT_REPORTS
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.
