Specifications
These are the current public specs describing Kamiina’s developer-facing behavior.
TxMeta
Optional, durable business-oriented metadata on transactions (name template, category, severity, rows affected, last inserted id).
- Template tokens: {PK} {TxId} {RowsAffected}
- Resolved at commit time
- Exposed via ADO.NET extension methods
Idempotency
Replay-safe DML using client-provided RequestId with durable outcome mapping.
- SQL prefix form: REQUEST 'guid' applies to next statement
- Replays return original TxId / rows affected / last inserted id
- Mismatch protection with statement hash
Temporal history
Opt-in automatic change history with point-in-time queries.
- WITH HISTORY keeps a companion history table
- AS OF reads a table at a past moment
- BY 'user' records who made each change
System Tables
Self-documentation and settings via SQL-queryable System.* tables.
- System.DatabaseInfo (single row, environment mode)
- System.Tables and System.Columns (schema metadata)
- System.Settings (key-value config, writable)
Schema Documentation
Inline and command-based schema descriptions with automatic DDL history tracking.
- DESCRIBE TABLE / DESCRIBE COLUMN commands
- DESCRIPTION clause in CREATE TABLE
- System.SchemaHistory (7th system table)
- DOCUMENT DATABASE generates full docs
Read full spec →
Process Tracking & COMPARE
Tag DML with business process IDs, trace operations, and diff table state across time.
- IDENTIFIER and METADATA clauses on DML
- System.ProcessLog (8th system table)
- COMPARE TABLE ... AT ... WITH ...
- TRACE command for process log queries
Read full spec →
Explore detailed specifications
Dedicated pages with SQL examples, API usage, and business context for the latest features.