KamoCRM

Intelligence type, phonetic names, AI supervision, job title/department requirements

Featurekamo-shared-library
Shipped
September 23, 2026 at 6:41 AM UTC
Author
Kamo
Commit
7614a70

Members: `Member.intelligenceType` (HUMAN | ARTIFICIAL, STRING, defaults HUMAN on every construction path and in the column), `aiSupervisorMemberId` (plain id — members is the hottest table and is hard-deleted) and `aiModel`. Users: `namePhonetic`, beside the name rather than inside EmbNameFull, which leads, accounts, borrowers and sessions also embed. Job titles and departments: a `description` (TEXT, 4,000 characters) and ordered requirements in two child tables (`org_job_title_requirements`, `dept_requirements`: category, Required/Preferred, text ≤ 500, stable ids, ON DELETE CASCADE). `OrgRequirements` is the one rule set for both — validation before anything is written, diff-by-id so a kept requirement keeps its id, and an id from another owner is treated as new. Updates follow "absent means unchanged" for both new fields, so a caller that never sends them cannot wipe them; "" / [] clear. **************** now take the request DTO (only SecurityService calls them). DDL is hand-applied **************** applied 2026-09-22 03:01Z, before this push). A real SessionFactory over the whole library pins the new tables and columns to that DDL (RoleRequirementsMappingTest).

All changes

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.

Start Free ForeverView Pricing