Home / Status
Where every part actually stands.
Each area of x64base grows at its own rate, and this is the only page where those rates live. Entries are promoted when their evidence exists and demoted the day it stops holding. Work that has not started is listed too — an absence you cannot see is a claim by omission.
Storage
Three DBF flavors, one binary
Classic x32 DBF, Visual FoxPro DBF, and the x64 DBF_64 format all open in the same runtime. Flavor is a property of the table, not of the build.
Evidence: REGRESSION INDEX_X32 (default suite), INDEX_X64 (default suite); teaching datasets in all three formats
Past the classic 16-bit limits
x64 tables carry 64-bit record-count and geometry fields, and a canary drives them past the record and header limits the classic format imposed.
Evidence: REGRESSION X64_METRICS (default suite)
64-bit widening of every shared path
Not every shared runtime path has been audited and widened yet; the work proceeds path by path.
Evidence: DBF_64 reference; capacity matrix
Payload-agnostic memos
x64 memos do not inspect what they store, and a seeded stress harness proves it: six chaotic operation patterns, payloads including embedded NUL and high bytes, byte-compared against a shadow model every generation across repeated close/reopen cycles.
Evidence: memo_zoo harness: 20,500 generations / 104,044 ops / 4 seeds / 0 divergences, 2026-08-11
Memo-resident mini-databases
WORKSPACE SAVE ... MEMO MINIDB writes a whole small database into a memo container, and a workspace can be restored from it. Mixing it with multiple open workspaces is in the default suite.
Evidence: REGRESSION WORKSPACE_MINIDB (explicit run), MWXSHAKE (default suite)
NULL values
A nullable Visual FoxPro column stores, reads, displays, and filters NULL, and every step is graded.
Evidence: REGRESSION NULLASSERT (default suite)
Indexing
CDX with an LMDB-backed key store
The x64-generation index. v64 tables take their active order from CDX/LMDB, on a fixture the spec builds itself.
Evidence: REGRESSION INDEX_X64 (default suite)
INX and CNX classic-generation indexes
The classic index containers, with flavor-correct ordering and attachment.
Evidence: REGRESSION INDEX_X32 (default suite)
CNX attached to an x64 table
Cross-generation attachment is policy, not accident: permitted with an advisory, with REINDEX routing correctly and the CDX default unchanged.
Evidence: REGRESSION INDEX_X64_CNX (explicit run)
CDX attached to a classic table
The mirror direction. Registered, awaiting its proof.
Evidence: -
Index maintenance inside a transaction
With SET INDEXTXN, buffered REPLACE and DELETE followed by COMMIT keep the live CDX/LMDB index current with no rebuild.
Evidence: REGRESSION INDEX_TXN (explicit run)
Memory
Whole tables and indexes in RAM
An in-process virtual disk hosts complete x64 tables and their native CDX indexes with zero files on disk; a saved workspace can be hydrated into it.
Evidence: REGRESSION MEM (explicit run), WORKSPACE_RAM (explicit run)
Query
The SELECT statement surface
SQLSEL runs SELECT over open work areas -- selection, projection, WHERE, ORDER BY, LIMIT, COUNT(*) -- and each result set is checked against an in-process SQLite referee.
Evidence: REGRESSION SQLSEL_SELECT_V1 (default suite), EVALDIFF (default suite)
Inner, outer, and cross joins
INNER, LEFT, RIGHT, FULL, and CROSS joins over open tables, compared with SQLite as multisets. The proofs assert the path the query took as well as the answer.
Evidence: REGRESSION SQLSEL_INNER_JOIN (default suite), SQLSEL_JOIN_EDGES (default suite), SQLSEL_LEFT_JOIN (default suite), SQLSEL_JOIN_FAMILY (default suite)
Self-joins and join chains
Self-join aliases over one table, compound ON conditions, and three-table INNER/LEFT chains.
Evidence: REGRESSION SQLSEL_ADVANCED_JOIN (explicit run)
GROUP BY, HAVING, and aggregates
COUNT, SUM, AVG, MIN, and MAX over single tables and joins, compared with SQLite.
Evidence: REGRESSION SQLSEL_AGGREGATES (explicit run)
Subqueries
Scalar, IN, NOT IN, EXISTS, and NOT EXISTS subqueries, correlated and uncorrelated, compared with SQLite.
Evidence: REGRESSION SQLSEL_SUBQUERIES (explicit run)
DISTINCT and set operations
SELECT DISTINCT, UNION, UNION ALL, INTERSECT, and EXCEPT, compared with SQLite.
Evidence: REGRESSION SQLSEL_SET_OPS (explicit run)
INSERT, UPDATE, and DELETE
Data changes through SQLSEL over the house table buffer and write-ahead log, including changes that span tables in one transaction, compared with SQLite.
Evidence: REGRESSION SQLSEL_DML (explicit run)
Parallel read-only scans
SET PARALLEL partitions a read-only scan; a differential spec checks the parallel answer against the serial one.
Evidence: REGRESSION SQLSEL_PARALLEL (default suite)
Primary keys
SET UNIQUE FIELD ... PRIMARY declares a key, a blank key field is generated on APPEND, and the declaration survives a restart. Enforcement is being extended one write path at a time; the policy spec records which paths hold today.
Evidence: REGRESSION PKPOLICY (explicit run), PKDURABLE (explicit run), PKEYS (explicit run)
Relations and workspaces
Positional relation traversal
Classic SET RELATION navigation over a declared relation graph, with the relation store scoped to its workspace.
Evidence: REGRESSION RELSCOPE2 (default suite), CASCADE_ENV (explicit run)
Joining a parent and its children into tuples
REL JOIN walks a declared parent and its children and emits one tuple per combination, with DISTINCT, ALL and a scan limit that reports when it truncates. REL JOIN ONE keeps the historical single-row form and refuses a child chain rather than accepting one it cannot walk.
Evidence: REGRESSION RELJOIN (default suite); main/rel_join_enum_regression.dts, 12 tests
Two walkers, one answer
Positional traversal and the set-oriented SELECT answered the same question over a 34-table schema with 58 foreign-key relations -- and agreed, down to the record.
Evidence: REGRESSION CASCADE_ENV (explicit run); both walkers, 2026-08-10
Whole-database posture from one file
WORKSPACE SAVE captures open areas, attached indexes, orders, aliases, and declared relations to a plain-text snapshot; WORKSPACE LOAD restores it. Demonstrated 2026-08-10 on a 43-area, 58-relation schema.
Evidence: REGRESSION CASCADE_ENV (explicit run); workspaces/cascade_all.dtschema
Several workspaces at once
Multiple workspaces open side by side, each owning its areas, its path environment, and a scoped CLOSE.
Evidence: REGRESSION WSMULTI (default suite), WSENV (default suite), WORKSPACE_SCOPE (default suite)
Shell
Command surface over work areas
Tables, areas, structure inspection, navigation, seeking, filtering, and cursor control.
Evidence: REGRESSION NONDESTRUCTIVE (default suite)
Buffered editing, commit, and rollback
Buffered edits under record locking; COMMIT applies a logged change and ROLLBACK discards one.
Evidence: REGRESSION WAL_COMMIT_ROLLBACK (explicit run)
Script mode
Command files with variables, comments, line continuation, IF/ELSE, LOOP, WHILE, UNTIL, SCAN, and one level of subscript nesting.
Evidence: Script language guide
CSV import and export
Round-trip between delimited files and DBF tables.
Evidence: Command catalog
DDL schema fetch, validate, create
Schema surfaces over DBF, with implementation caveats documented rather than smoothed over.
Evidence: Command catalog; documented caveats
Localized command messages
Command usage renders in Spanish, French, German, and Italian.
Evidence: REGRESSION LANGUAGE (default suite)
SQLite as a companion carrier
SQLite is compiled in both as a second carrier and as the referee for the SELECT surface. Competing with it and using it as referee are the same decision.
Evidence: REGRESSION SQLSEL_SELECT_V1 (default suite); ERP CHECK scorecards
Architecture
Separate libraries, separate responsibilities
Tables, indexes, memo storage, the expression evaluator, the value system, and the TUI link as distinct libraries under one command host. Every seam is a real compilation boundary, checkable in one build log.
Evidence: CMake target list in any build transcript
Engine core independent of any front end
Ordering, cursor state, relations, validation, and command execution live in the engine and the shell, never duplicated in interface code.
Evidence: Architecture reference
Interfaces
Terminal shell
The primary surface, and the one everything else is measured against.
Evidence: REGRESSION NONDESTRUCTIVE (default suite)
TUI workbench
A full-screen text interface over the same engine truth.
Evidence: Build targets
wxWidgets GUI workbench
The C++ desktop surface. Runs, still moving.
Evidence: Build targets
Interface definition language
Menus, windows, dialogs, controls, and event handlers described as data.
Evidence: -
Teaching
Labs and teaching commands
Hands-on surfaces for character encoding, index internals, historical data models, and normalization -- meant to be watched, not just run.
Evidence: Command catalog
Teaching datasets
The same datasets ship in x64, x32, and Visual FoxPro form, plus a reference copy, so a lesson can compare flavors directly.
Evidence: Repository datasets
Lesson modules as portable units
A lesson travelling as a self-contained package. Designed; not built.
Evidence: -
Distribution
Cross-platform build
Clean-clone builds pass on Ubuntu/GCC and Windows/MSVC in GitHub CI; WSL builds run the same source.
Evidence: GitHub CI green at main 78f95ce2c, 2026-08-10 (AIF-104)
Tagged release with binaries
No release has been published (checked 2026-09-23). Until one is, building from source is the only way to run x64base.
Evidence: -
Final license text
GPL-3.0-only. The LICENSE file is committed to the development tree.
Evidence: commit 2dbc29c8f, 2026-08-11