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).

v1.0

  • 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.

v1.0

  • 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.

v1.0

  • 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.

v1.0

  • 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.

v1.1

  • 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.

v1.1

  • 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.