# What is built

Each feature not built yet is `toolchain.not_built_yet` where it is used.

| Feature | Status |
|---|---|
| Entities, their fields, references, unique rules, indexes and stores | Built. |
| Migrations, computed backfills and the test database | Built. |
| PostgreSQL over TLS and through Hyperdrive | Built. Checking a Hyperdrive configuration's caching on a real deploy is not built yet. |
| D1, and actions on it as reads first and one checked batch of writes | Not built yet. |
| Lifecycles | Built. |
| Structured values stored as JSON, and their migrations | Built. Conditions on them, a `unique:` or index over them, and an update by `id` that works one out in the database are not built yet. |
| The check of every stored value on read | Built. `CHECK` constraints holding fields' rules in the database are not built yet. |
| Standard types stored in named columns, and the standard collections | Built. Comparing or ordering by them in a query is not built yet. |
| Manifest nodes | Built: a node for each entity's placement, unique rule, index and reference, with `references` edges between entities, one for each system table and migration snapshot, and one for each lifecycle and transition (`lifecycle Todo`, `transition Todo.delete`, with its `when:`, whether it can refuse a record and the fields it sets). |
| Other schema changes in `jadpo migrate new` | Not built yet: removing an entity, moving one between stores, dropping a retired column (it needs [acceptances](acceptances.md)), a new `pattern:` on a stored field, and other column type changes. |
| A worked-out backfill for a field that allows less | Not built yet. |
| A backfill in Jadpo that fills a value held in several columns, or reads a field held so or as JSON | Not built yet. |
| Entities in Redis and record caches (`caches:`) | Not built yet. Clearing only the cached entries a change affects isn't designed yet. |
| Index kinds other than geographic and HNSW | Not built yet. |
| A database implied only when something needs one | Not built yet: it comes with the first feature that can run without one. |
| Seeds and `jadpo seed` | Not built yet. |
| `jadpo rename` | Not built yet: it writes the identity registry ([Tooling](tooling.md)). |
