Held Office files and photos are first-class held legal uploads (no 45 s wait)
A requested-document upload Antivirus holds while busy is recorded at once for EVERY kind (antivirus_status PENDING, pinned by the original's content triple) an...
Targeted index backfill for removed-attachment counts; conversations carry the count
Listings served from email_metadata.search_index only showed antivirusRemoved for messages indexed after b05af4f. Only mail delivered after the Antivirus mail f...
Purchase request notices travel under their own kinds
A request sent for approval is raised as PURCHASE_REQUEST_SUBMITTED and its answer as PURCHASE_REQUEST_DECIDED (kamo-shared-library 6a765c18, gated in emailserv...
Providers, connected tools and web chat personas land in the setting change log from any path (SIS12)
- SettingChangeLog: AIService's writer of SIS11's si_setting_changes (same row as kamoai-service's), called after each save, so Recent Changes and the SI acti...
Purchase requests are gated on the Procurement rights
PURCHASE_REQUEST_SUBMITTED (kamo-shared-library 6a765c18) asks for APPROVE_PURCHASE_REQUESTS, the right SecurityService chose its recipients by; PURCHASE_REQUES...
Switches for vendor-finding holds, vendor results, closing-docs orders and pricing sign-off
Owner rule: every action the MLOS takes on its own has a switch, OFF by default (two systems kept in sync must never both act). New MlosAutomationAction constan...
Procurement gets its own two notification kinds
PURCHASE_REQUEST_SUBMITTED (to everyone who can approve, gated on APPROVE_PURCHASE_REQUESTS) and PURCHASE_REQUEST_DECIDED (to the person who asked, gated on MAN...
DocsService may hear antivirus.hold.verdict (core queue, held legal uploads)
A requested-document upload held while Antivirus was busy is finished by DocsService the moment its hold is judged. Core subscription only: DocsService keeps Je...
Record the held-legal-upload and conversation Antivirus columns
Same DDL hand-applied as owner kamo on 2026-11-08: **************** **************** and **************** (nullable, idempotent ADD COLUMN IF NOT EXISTS).
Held legal uploads carry their Antivirus state; conversations count removed attachments
**************** (PENDING | BLOCKED, null = ready) and antivirus_family: a requested-document upload held while Antivirus was busy is recorded at once, pinned b...
Confirming active military duty lets the loan continue with SCRA protections noted
- The Compliance review says what Confirm does for a military-status finding: "Confirm Active Duty — The Loan Continues With Protections Noted" (button, dialo...
ConfirmAndRelease, a confirmed concern that lets the loan go on
A steward can confirm a routed concern that calls for a protection rather than a stop (a borrower on active military duty: SCRA applies, it never bars the loan)...
A person clears or confirms a vendor finding; the DMDC SCRA file exchange, audited
- **************** (Compliance Command Center or Financial Complexity Workbench): the screen's steward tasks with each vendor finding's evidence, filed report...
Adopt a newer library edition; matrix cells carry assignment uids
POST **************** **************** moves an adopted requirement to the newest preset edition (wording and switches; the org's enabled/audience kept) and its...
A person clears or confirms a routed concern; a confirmed hold keeps the loan from moving
- DecisionSpine.uphold: a HUMAN_CONFIRMED decision (WORM, supersedes the routed one), the task closes UPHELD and the stage stays BLOCKED. resolve/uphold refus...
Protection widget on the launchpad, refusal messages on the last upload surfaces, seals on library tiles, Stored Files Check
- Rights 703-707 (ANTIVIRUS_WIDGET + **************** mirrored from shared-lib 9dcbc521 with the five hierarchy edges (parity 292 -> 297); widget 'antivirus.p...
Administrator templates offer the Antivirus rights; platform status shows baseline-scan progress
ADMIN_TEMPLATE_DEFAULT_GRANTS gains VIEW_ANTIVIRUS, MANAGE_ANTIVIRUS_POLICY, ANTIVIRUS_WIDGET, _ADDED, _OPTIONAL and _MOVABLE (703-707 minus _REQUIRED: a member...
A Compliance screen where a person clears or confirms a vendor finding, and the DMDC military-status file exchange
- Compliance tab in the mortgage workspace: the Compliance Command Center queue (possible sanctions matches, military service, other compliance reviews), KPI ...
The borrower links their bank or payroll with the lender's Plaid, Finicity or Truv
Lender-side asset and income orders ride the borrower's own portal Connection, but nothing ever wrote one a vendor could use. A borrower-link SPI (one bean per ...
SIS11 — Describe A Change anywhere, Find A Setting, Recent Changes And Undo, Starter Packs, Spend Pace; program cleanup
Extras - Page tools in the kit (useSettingsSource + PageTools in every drill-in's hero): a page that describes its settings gets Describe A Change (the SI dra...
AntivirusBaselineJob ticks ConversionService's pre-Antivirus baseline every 5 minutes
POST **************** (X-Internal-Auth); ConversionService runs one bounded, throttled page in the background under its own lease and answers at once.
Baseline scan of content stored before Antivirus; refusals name the file; flat scan fields
- AntivirusBaselineService: pages img_dats (is_missing=false, no verdict) NEWEST first, streams each object from MinIO to KamoAntivirus and records the verdic...
Protection widget rights, baseline verdicts, pre-Antivirus copies latch bytes_stored, refusals name the file
- RoleRightType ANTIVIRUS_WIDGET five-right block (703-707) under VIEW_ANTIVIRUS; RoleRightHierarchyTest 447 -> 452, children 292 -> 297. - AntivirusBlockedEx...
Public MLOS vendor webhook routes on the platform API hosts (owner-approved)
POST-only, full-path regexes on api.kamouniverse.com / api.kamocrm.com, straight to their services: **************** -> kamomlosvendor-service and *************...
Record the antivirus_baseline_state table
Hand-applied to production as kamo on 2026-11-08; this runner carries the same DDL so a fresh database gets it from code.
Compliance Requirements engine, Platform Library (Form W-9), withdrawal gate API
A generic engine: Requirement -> Compliance Record (on file) -> Triggers -> Gates. Its first configuration is the Form W-9 before a commission withdrawal. - Pl...
Compliance Requirements UI — the W-9 before a withdrawal, HR actions, Requirements settings and the Compliance Matrix
The first configuration of the generic Compliance Requirements engine: a member cannot withdraw commission money until a Form W-9 is on file. Earning and balanc...
Settings Inventory and the pipeline Stock view share one stock count
The market's Inventory tab managed a second stock table that orders never read, and most of it did not work (adjust and reorder-point saves sent fields the serv...
Seed Manage Compliance Requirements; announce member activation for the engine
MANAGE_COMPLIANCE_REQUIREMENTS (701) seeds from MANAGE_LEGAL_AND_COMPLIANCE; OVERRIDE_COMPLIANCE_GATE (702) deliberately unseeded (owner implicit). TeamMemberAc...
DocuSign Connect carries the org in its path and verifies that org's key first
The Connect address is public on the shared API host, which cannot tell orgs apart, so envelopes now send **************** (shared-lib VendorWebhookUrls). The l...
Record the Compliance Requirements tables (hand-applied 2026-11-07)
hr_compliance_requirement / _record / _record_event / _gate_override, hr_platform_library_item and **************** / library_edition - the exact IF NOT EXISTS ...
Svc_commission login (publish compliance.event.>), DocsService may hear compliance events
Compliance Requirements (2026-11-07): CommissionService announces commission.credited and **************** on core NATS; DocsService subscribes to compliance.ev...
Describe a settings change in your own words, and warn early when an SI is on pace to pass its budget (SIS11)
- POST **************** a Super Intelligence settings page sends its settings (what each is called, what values it takes, what it is now) and the person's wor...
SiSettingChange — the Super Intelligence setting change log (SIS11)
Declares si_setting_changes (kamoai-service **************** applied) so KamoInitializer can recreate it; kamoai-service reads and writes it JDBC only.
Compliance Requirements engine entities, Platform Library items, two rights (701-702)
hr_compliance_requirement / _record / _record_event (append-only) / _gate_override and hr_platform_library_item; LegalPackage gains library_item_uid + library_e...
Webhook Address panel on real data — who sets it up, and what signs updates
- Kamo-sent addresses (DocuSign, Mercury Network, First American, Plaid, Finicity): 'Nothing to set up here', with the address under Show the Address. - Lende...
Provider connections carry their webhook address, setup and signing field
From VendorWebhookUrls: webhookUrl (null when the vendor sends no updates), webhookSetup (LENDER_ENTERS / SENT_BY_KAMO) and webhookSigningFieldId, so the Partne...
Stock endpoints read and write the one stock count; market customers are scoped
- /{marketId}/inventory (settings) and /api/security/pos/inventory (pipeline Stock view) both go through StockService: org-scoped market list in one statement...
Order vendors for homeowners insurance, IRS transcripts, sanctions, fraud and SCRA
HOI: Matic, Covered (partner endpoints). TAX_TRANSCRIPT: Equifax IRS Tax Transcripts, Informative Research. SANCTIONS: LexisNexis Bridger Insight XG, ComplyAdva...
One stock count per product per place, shared by orders, the Stock view and settings
Retail had two stock systems: orders held and took from InventoryPool, while the market settings Inventory tab managed commerce_stock_levels, which no order eve...
Legal uploads use the Antivirus hold path instead of 'try again'
A requested-document upload that Antivirus holds (engines busy) no longer answers 503. A native PDF is its own rendition, so it is recorded at once, pinned by i...
VendorWebhookUrls, the public webhook address of every vendor that sends status updates
One base (https://api.kamouniverse.com) and the org in every path, matching each receiver: order vendors **************** Proof **************** DocuSign Connec...
Message-list rows carry antivirusRemoved / hasBlockedAttachment
The IMAP envelope fetch now names X-Kamo-Antivirus beside Message-ID (same HEADER.FIELDS fetch, no body read), and toEnvelope sets the removed count from remove...
Say which engine priced a quote, why a vendor quote locks at the vendor, and when AUS is simulated
- Live rate quote: a Priced by chip (the third-party engine, or Kamo's rate sheets), the engine's own plain reason when there is no rate (or the status's plai...
Visitor chat attachments carry scan{}; refusals name the file
The public chat widget's send answer and history rows now carry the same scan {status, family, outcome} the member frames do (verdict as the conversation's orga...
Webhook Address panel, and vendors' own field names
- A connected provider whose view carries a webhookUrl shows a Webhook Address box: the address with one-click Copy and a Copied confirmation, numbered setu...
Order vendors' webhook keys stored encrypted
Every catalogued webhookSecret is now a CONFIG_SECRET (encrypted, write-only). **************** cipher) gives a webhook verifier a detached copy with the keys d...
SI file reads answer a locked or still-checking file in plain words
Every downstream read (mail and SMS attachments, chat files, documents and versions, resumes, binders) goes through DownstreamErrors, so the mapping lives there...
Per-field saved secrets and provider notes in the connect form
- A second write-only secret (e.g. DocuSign's notification secret) says 'leave blank to keep the saved one' from the server's savedSecrets. - A provider can c...
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.
