Atlas docs coverage
Evidence verified
The matrix below maps the reviewed Atlas documentation areas to Ptah pages, implementation status, conformance coverage, and follow-up issues. It measures documentation coverage, not full parity.
Research date: July 28, 2026.
Official Atlas sources reviewed:
- Atlas documentation home
- Feature compatibility
- CLI reference
- Schema inspection
- Declarative schema apply
- Declarative schema diff
- Versioned migrations introduction
- Versioned migration apply
- Versioned migration lint
- Down migrations
- Import existing databases or migrations
- Pre-execution checks
- Migration directory checkpoints
- Pre-apply drift detection
- Atlas HCL syntax
- Atlas project configuration
- Dev database
- Atlas Registry
- Atlas Cloud deployment reporting
- Schema testing
- Migration testing
- Migration plan testing
Availability classifications below are based on those official pages, especially the Atlas feature compatibility page when it separates Open, Pro, and Cloud behavior.
Status terms
Section titled “Status terms”| Status | Meaning |
|---|---|
| Documented | Ptah docs explain the supported behavior and link to exact reference material. |
| Partial | Ptah implements or documents part of the Atlas area, but gaps remain. |
| Gap | The area needs implementation, conformance, or documentation work before parity can be claimed. |
| Out of scope | The area is Atlas Pro, Cloud, registry, account, UI, or commercial behavior rather than an Atlas OSS drop-in target. |
| Measured | ptah-atlas-conformance has probes for this area. |
| Unmeasured | The behavior may exist, but current conformance reports do not prove it. |
Coverage matrix
Section titled “Coverage matrix”Each area below records how Atlas documents it, where Ptah documents it, the implementation status, the conformance status, and the follow-up. This table is the index; the sections carry the detail.
Top-level docs structure and getting started
Section titled “Top-level docs structure and getting started”Atlas availability. Open docs
Ptah documentation. Quick start, Choose a workflow
Implementation status. Documented for Ptah workflows. Not a one-to-one Atlas docs clone.
Conformance status. Unmeasured; docs structure is not a runtime behavior.
Follow-up. stokaro/ptah#498 for full docs revision.
Installation and CLI entry points
Section titled “Installation and CLI entry points”Atlas availability. Open docs
Ptah documentation. Install Ptah, Native commands, Atlas compatibility overview
Implementation status. Documented. Atlas-compatible invocations run the separate ptah-compat drop-in binary.
Conformance status. Partially measured by command-resolution probes.
Follow-up. stokaro/ptah#510 for remaining CLI semantics.
CLI command and flag reference
Section titled “CLI command and flag reference”Atlas availability. Open for OSS commands; Pro/Cloud commands excluded from OSS target
Ptah documentation. Native commands, Atlas-compatible commands, Exit codes
Implementation status. Partial. Core command paths are documented, but full Atlas flag semantics are still being audited and implemented.
Conformance status. Measured for selected command paths and flags only.
Follow-up. stokaro/ptah#510,
stokaro/ptah#514 for the command
tree, stokaro/ptah#621 for the
Atlas shorthand aliases (-u, -c, -s, schema diff -f, and the hidden
schema apply --file/-f).
Schema inspection
Section titled “Schema inspection”Atlas availability. Open
Ptah documentation. Atlas-compatible commands, Capabilities, Feature matrix
Implementation status. Partial. ptah db read remains the native Ptah schema-read path.
ptah-compat schema inspect emits Atlas-shaped output without Ptah status
banners: HCL by default, or HCL, SQL, and JSON through their explicit helper
templates. Bare --format hcl, --format sql, and --format json write the
literal value with no line feed. Surrounding whitespace is also preserved byte
for byte. Those literal cases match Atlas CE v1.3.0.
Custom templates use the supported inspect helpers. HCL/SQL split-write file
exports use the documented Atlas split strategies: per object by default,
split "schema", split "type", and an optional file-extension argument. The
command also supports OSS --exclude resource filters, including the
Atlas-documented *[type=extension].version field selector with
schema-qualified globs.
Local schema files, migration directories, and env:// references are inspected through required --dev-url dev-database evaluation (reset, materialize, introspect). Other field-level exclude selectors fail explicitly; exporter blocks remain tracked gaps.
ptah-compat schema inspect --include positively selects which top-level resources the output keeps, through the same selector engine as schema apply and schema diff: --schema names the universe for schema-owned resources, --include picks resources, and --exclude subtracts. Database-wide extensions remain visible across schema selection. An extension-only include controls which extension identities inspection renders; when a non-extension resource matches, all extensions ride as support even beside extension selectors. On comparison verbs that support is non-removing, while schema-only and extension-only scopes remain authoritative. Exclusions still subtract afterward. The pinned Atlas CE binary does not register the flag on this command and rejects it as an unknown flag, so this is a Pro-surface spelling Ptah implements openly rather than a CE parity target.
Conformance status. Partially measured by live SQLite HCL/SQL/JSON/custom-template/split-write/exclude/compat probes and CLI flag probes.
Follow-up. stokaro/ptah#510, stokaro/ptah#640.
Declarative schema apply
Section titled “Declarative schema apply”Atlas availability. Open
Ptah documentation. Feature matrix, Atlas schema commands
Implementation status. Partial.
ptah-compat schema apply reads a live database, diffs it against local
file:// .hcl, .yaml, .yml, or .sql desired schema files, prints
planned SQL, and applies after interactive confirmation or explicit
--auto-approve. It also:
- can take defaults from evaluated local
atlas.hclenv expressions includingenv.url,env.src,env.schema.src,env.dev,env.exclude,env.schema.mode,format.schema.apply, and supporteddiffpolicy - supports
--dry-run - supports Atlas transaction modes
file,all, andnonefor the generated plan - supports
--excludeand disabledschema.moderesource filters for the local-file comparison - can use PostgreSQL concurrent index creation when
--tx-mode noneis set - supports
--editto open the planned SQL in$VISUAL/$EDITORbefore approval so the edited SQL is what gets applied
--plan file://<path> executes a pre-approved local plan file saved by schema plan, and --lock-timeout bounds waiting for the session advisory lock that serializes concurrent applies against one target, with an explicit unlocked-with-note decision on dialects without advisory locks.
--to also accepts one directly connectable database URL, one migration directory (file:// directory containing atlas.sum) replayed on the required --dev-url dev database, or one env:// reference resolved through the evaluated atlas.hcl env; unsupported schemes such as atlas:// fail before the target database is contacted.
Before a non-dry-run apply, --dev-url rehearses the exact ordered plan on the reset dev database with the target’s current schema recreated first; a failed rehearsal refuses the apply with the target unchanged.
--schema and --include positively scope both comparison sides with union
semantics, exclusion subtraction, and cross-scope dependency diagnostics. An
explicit include selection matching neither side refuses instead of reporting
a synced schema.
Conformance status. Partially measured with local schema files and live SQLite apply/no-op/dry-run/transaction-mode/exclude/config-driven format/schema-mode coverage, plus CLI-surface flag probes.
Follow-up. stokaro/ptah#510, stokaro/ptah#640.
Declarative schema diff
Section titled “Declarative schema diff”Atlas availability. Open
Ptah documentation. Feature matrix, Atlas schema commands
Implementation status. Partial. ptah schema compare covers Ptah’s native Go/live-DB comparison path.
ptah-compat schema diff supports local file:// schema-file diffs for .hcl, .yaml, .yml, and .sql sources, Atlas-style SQL/custom output formatting with --format, sql, and .MarshalSQL, --exclude and disabled schema.mode resource filters over the local inputs, and evaluated atlas.hcl defaults for env.schema.src, env.dev, env.exclude, env.schema.mode, format.schema.diff, and supported diff policy.
--from and --to also accept one directly connectable database URL, one migration directory replayed on the required --dev-url dev database, or one env:// reference resolved through the evaluated atlas.hcl env, with the dialect pinned by --dev-url first and then by database URLs.
--schema and --include positively scope both diff sides with the same selection semantics as schema apply. Dev-database simulation and export remain incomplete. The pinned Atlas CE flag surface does not register schema diff --web, so Ptah rejects it as unknown.
Conformance status. Partially measured with local schema-file default, custom-template, no-op-template, invalid-template, exclude, config-driven skip-drop probes, and CLI-surface flag probes.
Follow-up. stokaro/ptah#510, stokaro/ptah#640.
Desired-state sources
Section titled “Desired-state sources”Atlas availability. The Atlas docs describe SQL, HCL, and external schema integrations, with some data sources Pro. Measured 2026-08-01: the pinned Atlas CE v1.2.0 binary rejects data "external_schema" with “not supported by the community version”, so the external-schema data source is not an Open capability
Ptah documentation. Composite desired schema, ORM and external loaders, OCI registry artifacts, HCL schema
Implementation status. Partial. Native Ptah supports YAML, Go annotations, supported HCL schema files, SQL schema files, live DB introspection, external programs that emit SQL, HCL, or YAML, and canonical desired-schema artifacts in a bring-your-own OCI registry. The same ptah.yaml external_schema block supplies native render, compare, drift, and migration planning.
The native OCI source is available to schema compare and drift through
--schema-file; it is not Atlas Registry parity or an atlas:// source for
Atlas-compatible commands. Atlas HCL data "external_schema" is implemented
for both binaries, gated behind --allow-external-schema (native) or
PTAH_ALLOW_EXTERNAL_SCHEMA=1 (ptah-compat). The Atlas OSS data "sql",
data "external", data "runtimevar", and data "template_dir" project
sources are also implemented. Registry-backed desired-state sources remain
outside the supported compatibility subset.
Conformance status. Native external programs are measured by a deterministic 20-observation SQL/HCL/YAML workflow through render, compare, drift, plan, generate, apply, live SQLite facts, and convergence. A separate zero-gap tier exercises pinned GORM and SQLAlchemy providers. The native OCI round trip remains covered by Ptah’s own command and integration tests rather than Atlas conformance.
Follow-up. stokaro/ptah#511, stokaro/ptah#664, stokaro/ptah#669.
Atlas HCL schema syntax
Section titled “Atlas HCL schema syntax”Atlas availability. Open for core HCL schema; advanced objects and product-gated areas vary by feature matrix
Ptah documentation. HCL schema, site HCL schema reference
Implementation status. Partial. Ptah parses a strict supported subset and fails explicitly for unsupported constructs. Current support includes core tables, columns, indexes, constraints, enums, schemas, selected generated/identity forms, and PostgreSQL include columns.
Conformance status. Measured for current imported fixtures; not complete Atlas HCL coverage.
Follow-up. stokaro/ptah#511.
Atlas project config (atlas.hcl)
Section titled “Atlas project config (atlas.hcl)”Atlas availability. Open for local env config; Cloud/registry constructs are out of scope
Ptah documentation. Configuration, site Atlas project config reference
Implementation status. Partial.
Ptah reads a documented subset into project config IR, including local env
settings, schema.src, schema.mode, output formats, supported diff and lint
policy, local variable defaults, typed variables (string, number, bool,
list(string), map(string)) with sensitive support, string/list --var
overrides, locals, getenv, file, fileset, format, jsondecode,
jsonencode, toset,
atlas.env, each.key, each.value, the supported hcl_schema, sql,
external, runtimevar, and template_dir project data sources, and
migration-lint changeset selectors. Atlas-compatible migrate apply expands
labeled or unlabeled env for_each collections into ordered database targets.
Whole-document structural validation classifies every environment before one is selected. Unsupported shapes fail in selected and unselected environments. Names that Atlas CE accepts without acting on are preserved in project config and reported once per source location. Recognized project data sources are evaluated lazily in dependency order from selected settings, global policy, top-level attributes, and locals; valid unreferenced sources are not opened or executed.
Cloud and registry data sources beyond the recognized lazy subset, variable
validation blocks, other variable type constraints such as object(...),
Atlas check-level lint policy, custom lint rules, unsupported lint analyzer
options, unsupported format blocks, unsupported diff policy fields, and remote
directory behavior are not implemented.
Conformance status. The committed companion reports do not yet measure dynamic env expansion. Main-repository parser, adapter, command, and live SQLite tests cover the supported local subset, whole-document structural decisions, selected-environment evaluation, dependency-ordered project data sources, multi-target apply with partial failure and retry, and ignored-name warnings.
Follow-up. stokaro/ptah#582, stokaro/ptah#583, stokaro/ptah#581, stokaro/ptah#619.
Dev database
Section titled “Dev database”Atlas availability. Core concept for Atlas diff/apply/lint planning; Docker/dev blocks include Pro-only baseline forms in current Atlas docs
Ptah documentation. Configuration, Feature matrix
Implementation status. Partial. Ptah has shadow/dev database concepts for migration generation and project config IR. ptah-compat migrate validate --dev-url and ptah-compat migrate lint --dev-url clean and replay directly connectable dev databases; Atlas-style --dev-url behavior remains incomplete for several other commands and Docker dev databases.
Conformance status. Partially measured for migrate validate, migrate lint, and selected migrate diff/schema paths.
Follow-up. stokaro/ptah#510.
Versioned migrations overview
Section titled “Versioned migrations overview”Atlas availability. Open
Ptah documentation. Versioned migrations, Atlas migrate commands, Feature matrix
Implementation status. Documented for Ptah native workflow and Atlas-compatible command names. Runtime parity still depends on command-specific rows below.
Conformance status. Partially measured.
Follow-up. stokaro/ptah#510.
Migration apply
Section titled “Migration apply”Atlas availability. Open
Ptah documentation. Apply migrations, Atlas migrate commands, Configuration
Implementation status. Partial. ptah migrations up remains the native Ptah path.
ptah-compat migrate apply executes Atlas-format migration directories with Atlas revision-table metadata by default, reads env.url, migration, and format.migrate.apply from atlas.hcl, and supports positional amount, --baseline, --allow-dirty, --tx-mode, --exec-order, --revisions-schema, --lock-timeout, --lock-name, --skip-lock, --to-version, --dry-run, and Go-template --format output over a Ptah apply result that mirrors Atlas’s public apply-template fields.
External Atlas OSS directory formats (golang-migrate, goose, flyway, liquibase, dbmate) are read and converted in memory to Atlas single-file, up-only migrations and applied directly, sharing format parsers and up/down semantics with ptah-compat migrate import; native Atlas directories preserve R/<number>R repeatable migration tokens and execute them once, while converted Flyway repeatables are represented as one-time versioned migrations. Conventional Liquibase import additionally splits changesets into numeric Atlas files, while direct apply retains its numbered-file requirement and source-file boundary. Unknown formats still fail before the target database is opened.
Directory URL ?format= overrides migration.format whether the URL comes from project config or CLI.
Three of those flags come from the wider Atlas distribution’s documented flag surface rather than from the pinned community binary’s. That binary answers unknown flag: --to-version, unknown flag: --lock-name, and unknown flag: --skip-lock, word for word the answer it gives a misspelled flag, so it does not register them at all. Ptah implements all three anyway, tracked as adopted compatibility spellings under stokaro/ptah#951. That is a statement about three flags, not a parity claim about any non-community Atlas distribution.
Behavior below was executed against a ptah-compat build from this repository, on PostgreSQL 17.10 unless a line says otherwise:
--to-versionbounds the run inclusively. Pointed at the second of three pending migrations, it applies the first two, leaves the third unapplied, and stamps two revision rows. A version the directory does not carry is refused withtarget version ... was not found in the migration providerbefore any migration executes, and the bound cannot be combined with the positionalamount.--lock-namerenames the session advisory lock,ptah_migrateby default. Withptah_migrateheld by another session, a default run fails withtimed out acquiring migration lock "ptah_migrate"and applies nothing, while the same run under--lock-name deploy_lock_1354proceeds: two runs serialize only when they name the same lock. An empty value is refused rather than falling back to the default.--skip-lockacquires no lock. Withptah_migratestill held elsewhere, a run with nothing pending still times out under the default lock, and exits0under--skip-lockin the same state. It cannot be combined with--lock-name, and on SQLite an explicit--lock-nameprints a stderr note naming the lock that was not acquired.
Conformance status. Measured for selected migration-directory and live SQLite amount, baseline, LINEAR_SKIP state semantics, dry-run baseline, JSON format, custom template, config-driven format, per-format up-only external-format execution (goose, dbmate, liquibase, golang-migrate, flyway), CLI and project URL-format precedence, unknown-format pre-connect rejection, no-op format, invalid-template preflight, redacted URL, failed-apply format cases, and the CLI-surface tier, which projects out the three adopted flags through its closed per-command allowlist and rejects any other flag the pinned binary does not register.
Follow-up. stokaro/ptah#510, stokaro/ptah#640, stokaro/ptah#741, stokaro/ptah#742.
Migration down and rollback
Section titled “Migration down and rollback”Atlas availability. Open
Ptah documentation. Roll back migrations, Atlas migrate commands, Feature matrix
Implementation status. Partial. Ptah rolls back through pre-planned down files. ptah-compat migrate down --dev-url replays and verifies the rollback plan on the dev database before touching the target (native ptah migrations down --shadow-db), and --format renders an Atlas Go-template report over .Env, .Planned, .Reverted, .Current, .Target, .Total, and .Error.
--to-tag resolves against the tags ptah migrations tag records in the
database rather than against a hosted registry, --skip-checks bypasses the
pre-migration checks the down bodies carry, and --plan derives the rollback
from the schema difference instead of running the down bodies. Atlas’s
registry-approved down planning stays out of scope.
Conformance status. Partially measured.
Follow-up. stokaro/ptah#510, stokaro/ptah#758.
Migration diff generation
Section titled “Migration diff generation”Atlas availability. Open
Ptah documentation. Generate migrations, Atlas migrate commands, Feature matrix
Implementation status. Partial. Native Ptah can generate migrations from schema differences.
ptah-compat migrate diff now validates an existing atlas.sum, replays a
local Atlas migration directory on a directly connectable dev database, and
writes Atlas-style migration files. It:
- compares it to local schema files, one directly connectable database URL, one local Atlas migration directory, or one
env://reference - updates
atlas.sumonly after every file was written - reads
env.schema.src,env.dev,migration.dir,format.migrate.diff, and supporteddiffpolicy fromatlas.hclincludingdiff.concurrent_index.createwith-- atlas:txmode nonefile tagging and transactional/concurrent file splitting - supports the Atlas-hidden
--dry-runflag to print generated SQL without writing a migration file oratlas.sum - supports
--lock-timeoutfor Ptah’s local migration-directory lock - supports Atlas-style
--formattemplates withsqland.MarshalSQLfor the generated migration SQL - supports
--schemascoping for the resolved desired state plus the replayed dev database state - supports
--editto open the generated migration in$VISUAL/$EDITORbeforeatlas.sumis finalized
--qualifier applies Atlas’s single-schema custom qualifier to every object in the generated statements on PostgreSQL, CockroachDB, YugabyteDB, MySQL, and MariaDB dev databases, failing explicitly before any file or checksum write for invalid values, unsupported dialects, multi-schema plans, and not-yet-qualifiable statement kinds. Docker dev databases remain incomplete.
Conformance status. Partially measured with local SQLite dev DB, local schema-file, schema-filter, custom-format, config-driven format/env defaults, dry-run, invalid-format, lock-timeout, qualifier, and txmode-split coverage, CLI-surface flag probes, and a real-PostgreSQL end-to-end test for database desired-state scoping, concurrent-index metadata, and qualifier artifacts, plus real MySQL and MariaDB source-preservation and convergence tests.
Follow-up. stokaro/ptah#510, stokaro/ptah#618, stokaro/ptah#640, stokaro/ptah#842, stokaro/ptah#668 for the diff policy block (diff.skip, diff.concurrent_index).
Migration linting
Section titled “Migration linting”Atlas availability. Mixed in current Atlas docs: feature page lists migration linting CLI as Pro while also listing a basic Open lint-rule set
Ptah documentation. CI, Integrity and safety, Feature matrix
Implementation status. Partial.
Ptah ships native linting, SARIF, inline suppression, severity config, and ptah-compat migrate lint; --dir-format defaults to atlas, --latest, --git-base, --git-dir, and matching atlas.hcl defaults select the linted changeset, including Atlas repeatable keys R and <number>R; --dev-url infers lint dialect and treats directly connectable dev databases as scratch databases by cleaning and replaying migrations; --format, format.migrate.lint, and Atlas lint { log = "…" } render Atlas-style Go templates over .Env, .Steps, and .Files, and the no-template default reproduces measured Atlas wording, analyzer links, wrapping, and suggested-fix layout for mapped diagnostics while visibly labeling Ptah-only findings without fabricated Atlas links; native ptah migrations lint retains Ptah’s fuller diagnostic prose; supported atlas.hcl analyzer policy maps severity for matching Ptah lint rule families.
Atlas check-level policy, custom rules, force/allow-list analyzer options, Docker dev databases, web reports, and external migration-tool --dir-format execution remain gaps.
Conformance status. Partially measured with static lint, explicit Atlas dir-format latest selection, Git changeset selection, config-driven latest selection, policy-driven severity, compatibility-wrapper env policy, live SQLite dev-database replay, and Atlas Go-template output coverage.
Follow-up. stokaro/ptah#582, stokaro/ptah#510, stokaro/ptah#622.
Migration directory integrity, hash, and validation
Section titled “Migration directory integrity, hash, and validation”Atlas availability. Open versioned workflow concept
Ptah documentation. Integrity and safety, Atlas migrate commands, Exit codes
Implementation status. Documented. Ptah supports ptah.sum, Atlas-compatible atlas.sum, hash, validate, and migrate validate --dev-url SQL replay paths. ptah-compat migrate hash and validate register Atlas --dir-format with default atlas; external migration-tool formats are read directly, and migrate new plus migrate diff write them. Goose represents either direction’s no-transaction requirement with its whole-file directive. The other four foreign layouts refuse those plans before publication. Remaining parity depends on exact Atlas edge cases.
Conformance status. Measured for selected directory fixtures, Atlas-default hash output, and live SQLite dev-database replay.
Follow-up. stokaro/ptah#510, stokaro/ptah#622.
Migration import
Section titled “Migration import”Atlas availability. Open for local migration-directory formats
Ptah documentation. Atlas migrate commands, Feature matrix
Implementation status. Partial. Ptah imports local file:// directories into an Atlas single-file directory and writes atlas.sum; Flyway repeatable migrations are converted to one-time versioned files rather than emitted as Atlas R-suffixed files.
Conformance status. Partially measured.
Follow-up. stokaro/ptah#510.
Manual migrations and troubleshooting
Section titled “Manual migrations and troubleshooting”Atlas availability. Open docs
Ptah documentation. Generate migrations, Troubleshooting, Exit codes
Implementation status. Documented for Ptah-native behavior. Atlas-specific troubleshooting strings and repair flows are not fully mirrored.
Conformance status. Partially measured.
Follow-up. stokaro/ptah#498 for docs polish; stokaro/ptah#510 for runtime semantics.
Drift detection
Section titled “Drift detection”Atlas availability. Feature page lists drift detection as Pro
Ptah documentation. CI, Feature matrix
Implementation status. Ptah has native ptah schema drift; Atlas Cloud/Pro drift monitoring is out of scope.
Conformance status. Ptah-native behavior is tested in repo; Atlas Cloud parity is not a target.
Follow-up. None for Cloud parity; stokaro/ptah#498 for docs depth.
Checkpoints
Section titled “Checkpoints”Atlas availability. Feature page lists checkpoints as Pro
Ptah documentation. Feature matrix, Conformance
Implementation status. Implemented natively and free. ptah migrations checkpoint squashes a directory’s history into a cumulative-schema checkpoint that fresh databases bootstrap from, and ptah-compat migrate checkpoint forwards to it on the Atlas-compatible surface — a workflow Atlas keeps in its Pro build.
Checkpoint output covers both conventions. --dir-format=atlas — the default on the compat surface — writes Atlas’s single up-only <version>_<name>.sql carrying the -- atlas:checkpoint directive on its first line and refreshes atlas.sum; --dir-format=ptah writes the reversible .checkpoint.up.sql / .checkpoint.down.sql pair and refreshes ptah.sum. --dir-format=auto is refused, because writing under it would have to guess the convention and the integrity file. The read side honors Atlas’s -- atlas:checkpoint directive whoever wrote it: checkpoint directories bootstrap fresh databases from the latest checkpoint and are silently skipped on databases that already applied pre-checkpoint history, matching measured Atlas behavior.
Conformance status. Measured by native command tests and Atlas-compatibility tests that verify ptah-compat migrate checkpoint forwards to the native implementation.
Follow-up. stokaro/ptah#660, stokaro/ptah#758.
Pre-migration checks and policy workflows
Section titled “Pre-migration checks and policy workflows”Atlas availability. Feature page lists pre-migration checks as Pro
Ptah documentation. CI, Feature matrix
Implementation status. Partial. The local assertion half is implemented in both spellings: the native -- +ptah check directive and Atlas txtar checks.sql / checks/*.sql sections, including file-level atlas:assert oneof. They are enforced as pre-migration gates rather than executed as plain SQL. The Atlas Cloud approval-policy half stays out of scope.
Conformance status. Measured against Atlas: a failing txtar assertion aborts the apply before any body statement on both binaries, and no revision row is recorded. Ptah also covers Atlas’s documented named check files and one-of grouping.
Follow-up. stokaro/ptah#956 closed the txtar checks.sql gap; no Atlas OSS issue unless a further Open check surface is identified.
Testing framework
Section titled “Testing framework”Atlas availability. Feature page lists testing framework as Pro
Ptah documentation. Feature matrix, Conformance
Implementation status. Implemented natively and free. ptah migrations test and ptah schema test run declarative test cases against a throwaway database — a workflow Atlas keeps in its Pro build.
The Atlas-compatible ptah-compat migrate test and ptah-compat schema test verbs forward to the native runners with Atlas-shaped flags (--dir/-u --url, --dev-url, --run, project flags) and the native exit-code contract; either a Ptah-native YAML/Go file or an Atlas .test.hcl file is the executable payload; this sentence recorded .test.hcl ingestion as a separate gap until #1036 closed it on 2026-08-02, and recorded ingestion alone as the whole of the testing contract until #2866 implemented the remaining language surface — iteration, the restricted evaluation context, expected failures, boolean assertions, logging, cleanup, authorized external steps and parallel isolation.
Conformance status. Measured by native command tests and Atlas-compatibility tests that exercise these forwards.
Follow-up. stokaro/ptah#659, stokaro/ptah#758.
Declarative reference data
Section titled “Declarative reference data”Atlas availability. Feature page lists declarative data management as Pro
Ptah documentation. Feature matrix, Reference data
Implementation status. Implemented natively and free. ptah migrations data diffs declarative reference rows against a live table and writes a reversible data migration (INSERT/UPDATE/DELETE) with an exact inverse down — a workflow Atlas keeps in its Pro build and Atlas CE cannot inspect declaratively.
Conformance status. Measured by native command and round-trip reversibility tests.
Follow-up. stokaro/ptah#663.
Supported databases
Section titled “Supported databases”Atlas availability. Open for PostgreSQL, MySQL, MariaDB, SQLite, TiDB, LibSQL in current Atlas feature matrix; many other drivers are Pro
Ptah documentation. Capabilities, Feature matrix
Implementation status. Partial but intentionally not identical. Ptah supports PostgreSQL, SQLite, MySQL/MariaDB, SQL Server subsets, and capability-gated PostgreSQL-compatible or specialty targets. Object-level support varies by dialect.
Conformance status. Partially measured by local, live, and conformance tests.
Follow-up. stokaro/ptah#498 for fuller object-level docs; implementation gaps should be filed from concrete findings.
Database object kinds
Section titled “Database object kinds”Atlas availability. Core object kinds open for common drivers; advanced PostgreSQL objects such as partitions, views, functions, sequences, extensions, and RLS are listed as Pro examples in Atlas docs
Ptah documentation. Capabilities, HCL schema, site HCL schema reference
Implementation status. Partial and not product-identical. Ptah supports some objects Atlas lists as Pro-gated, but HCL/config parity is still a subset until audited.
Conformance status. Partially measured.
Follow-up. stokaro/ptah#511.
Atlas Registry
Section titled “Atlas Registry”Atlas availability. Cloud
Ptah documentation. OCI registry artifacts, License boundary, Feature matrix
Implementation status. Atlas Registry remains out of scope: Ptah has no Atlas Cloud dependency, account model, atlas:// resolver, hosted UI, or Atlas deployment API. Ptah independently provides native ptah migrations push/pull, ptah schema push/pull, and ptah oci referrers commands for bring-your-own OCI registries, plus direct native consumers and best-effort deployment-report referrers.
The referrers command lists descriptor metadata but does not pull report payloads. The Atlas-compatible migrate push and schema push paths remain registered but not implemented and use Ptah-owned diagnostics.
Conformance status. Atlas-compatible push stubs remain measured by CLI-surface conformance. Native OCI behavior is tested in Ptah and is not evidence of Atlas Cloud parity.
Follow-up. stokaro/ptah#638, stokaro/ptah#664.
Atlas Cloud deployment reporting
Section titled “Atlas Cloud deployment reporting”Atlas availability. Cloud
Ptah documentation. License boundary, Feature matrix
Implementation status. Out of scope. Ptah can be used in CI, but it does not report deployments to Atlas Cloud.
Conformance status. Not measured.
Follow-up. None for OSS parity.
Cloud-only workflows and account commands
Section titled “Cloud-only workflows and account commands”Atlas availability. Cloud/Pro
Ptah documentation. License boundary, Feature matrix
Implementation status. Out of scope. Login, registry, UI, promotion, monitoring, and Cloud APIs are not Atlas OSS drop-in targets.
Conformance status. Not measured.
Follow-up. None for OSS parity.
CI integrations
Section titled “CI integrations”Atlas availability. Mixed: local CLI usage is open; Atlas Cloud deployment and lint reporting can require Pro/Cloud
Ptah documentation. CI, Conformance
Implementation status. Documented for Ptah-native CI and conformance interpretation. Atlas’s official integrations are not cloned one by one.
Conformance status. Ptah CI is measured by repository workflows; Atlas integration parity is unmeasured.
Follow-up. stokaro/ptah#498.
Conformance evidence
Section titled “Conformance evidence”Atlas availability. Atlas docs do not define Ptah conformance; this is Ptah-owned evidence
Ptah documentation. Conformance, Feature matrix
Implementation status. Documented. Regression budget and full-conformance gates are intentionally separate.
Conformance status. Measured in ptah-atlas-conformance, with current limits documented there.
Follow-up. stokaro/ptah-atlas-conformance#167.
License and implementation boundary
Section titled “License and implementation boundary”Atlas availability. Atlas source is a separate third-party project; Ptah compatibility must stay license-clean
Ptah documentation. License boundary, Feature matrix
Implementation status. Documented. Ptah does not import, vendor, port, or derive implementation code from Atlas. Public interfaces and separately held test assets are compatibility inputs.
Conformance status. Not a runtime conformance area.
Follow-up. Keep this page updated when conformance assets change.
Follow-up issue coverage
Section titled “Follow-up issue coverage”The fresh docs pass did not expose a product or conformance gap that lacks a tracking issue. Current follow-up coverage is:
| Gap family | Tracking issue |
|---|---|
| Atlas command runtime and flag semantics | stokaro/ptah#510 |
| HCL schema and Atlas project config parity | stokaro/ptah#511 |
| Full Ptah documentation revision | stokaro/ptah#498 |
| Live and differential conformance breadth | stokaro/ptah-atlas-conformance#167 |
When a future Atlas docs audit finds a concrete unsupported OSS behavior not covered by those issues, file a focused implementation or conformance issue before claiming the area as covered.
How to use this matrix
Section titled “How to use this matrix”Use this page before changing Atlas-compatible behavior or documentation:
- Find the Atlas docs area and official source link.
- Check whether Ptah behavior is documented, partial, a gap, or out of scope.
- If the row is partial or a gap, update the linked issue or create a focused follow-up issue before claiming support.
- Update conformance only when the behavior can be measured by command, fixture, live database, or Atlas CE differential probes.
Do not turn a green docs build into a product parity claim. Product parity needs current implementation evidence, conformance evidence, and a closed gap row.