Release Notes
v0.1.0 — April 2026
Initial platform release. Core policy administration lifecycle, customer management, AI copilot, and developer tooling.
New Features
Customer Management
- All Customers list — paginated table with search, filterable by party kind (person / organization)
- New Customer wizard — 3-step intake: party details, contact info, identifiers. Contact step includes address type selector (Mailing / Home / Business / Billing pill toggles)
- Customer detail page — contact points, identifiers, and associated submissions in one view
Submissions & Quotes
- New Submission form — 2 transaction type cards: New Business and New Renewal. Renewal card reveals a conditional Prior Policy # field
- Submission detail page — full submission summary, status badge, linked customer
- Quote versioning model — stable
QT-{YEAR}-{SEQ} quote numbers with quoteVersions table for re-rate history
Dashboard & Queue
- Dashboard — KPI cards (Active Submissions, Open Quotes, Policies In-Force, Pending Endorsements) and recent activity feed
- Underwriting Queue — paginated, filterable by status, sortable by submission date
AI Copilot (KALP)
- KALP AI assistant — floating chat bubble, persistent drawer, full underwriting context injection (tenant, open submission, customer party, open quote)
- AI-context-aware responses — agent sees live submission status, customer identity, and open policy when answering questions
- AiDrawer — slideover panel with message history, markdown rendering, and code highlighting
Authentication
- Sign-in page — JWT session with pluggable auth adapters: Local, LDAP, SAML, OIDC
- Session middleware — all routes protected by
__c1_session JWT cookie; /docs and /sign-in are public
Developer Tooling
- Kalp Schema Editor (VS Code extension) — visual Drizzle ORM schema browser installed as a VS Code extension
- Sidebar lists all tables grouped by PostgreSQL schema namespace
- Column grid shows JS name, SQL name, type, flags (PK/NN/UQ/FK), defaults, and JSDoc comments
- Add Column form — ts-morph rewrites
.ts schema file at AST level, auto-adds imports
- Generate Migration button — runs
drizzle-kit generate inline, shows SQL output in editor panel
- Open:
Cmd+Shift+P → Kalp: Open Schema Editor
Schema Changes (v0.1.0)
| Table | Change |
|---|
policy.submissions | Added transaction_type varchar(30) (replaces submission_kind). Values: new_business | new_renewal |
policy.submissions | Added prior_policy_number varchar(50) — populated on new_renewal transactions |
policy.parties | Added party_number varchar(20) — human-readable customer number, e.g. CUS-2026-000042 |
policy.submissions | Added submission_number varchar(20) — e.g. SUB-2026-000007 |
policy.quotes | Added quote_number varchar(20) + current_version integer + quote_versions table |
Migration History
| File | Applied | Description |
|---|
0000_remarkable_otto_octavius.sql | ✅ | Initial schema — all tables |
0001_exotic_wasp.sql | ✅ | Supplemental indexes and constraints |
0002_* | ✅ | party_number, submission_number, quote_number, current_version, quote_versions |
0003_transaction_type.sql | ✅ (direct) | RENAME COLUMN submission_kind → transaction_type + ADD COLUMN prior_policy_number |
Tech Stack
| Layer | Technology | Version |
|---|
| Frontend | Next.js App Router | 15.2.4 |
| Language | TypeScript | 5.7.x |
| Database | PostgreSQL (Docker: policyone-db) | 16 |
| ORM | Drizzle ORM | 0.39.x |
| Auth | @policyone/auth | workspace |
| AI SDK | Vercel AI SDK | latest |
| Monorepo | pnpm workspaces + Turborepo | pnpm 9 |
| VS Code Extension | Kalp Schema Editor (Kalphub.kalp-schema-editor) | 0.1.0 |