Skip to content

Validate history/model compatibility before checking - #104

Open
ligurio wants to merge 1 commit into
masterfrom
ligurio/gh-103-check-model
Open

ligurio wants to merge 1 commit into
masterfrom
ligurio/gh-103-check-model

Conversation

@ligurio

@ligurio ligurio commented Sep 9, 2026 •

Copy link
Copy Markdown
Owner

Fixes #103

@ligurio
ligurio force-pushed the ligurio/gh-103-check-model branch from 535a9bc to 63747c5 Compare September 9, 2026 14:11
Report a clear error when the selected model cannot check a history,
instead of failing with an obscure exception from deep inside a checker
(e.g. "No matching clause: :append" when running rw-register on a
list-append history).

Each model now declares the shape of operation rows it supports
(model-specs): transactional histories (:f :txn with micro-operations
[f k v]) for rw-register/list-append, micro-operation-valued operations
for long-fork, and flat scalar operations for the remaining models.
Client operations in a history are validated against the requested
model before a checker runs; on a mismatch elle-cli prints a clear
message to stderr, hints at the correct model, and exits with status 1.

Add regression tests covering cross-model mismatches, including
rw-register on an append-register history.

Fixes #103
@ligurio
ligurio force-pushed the ligurio/gh-103-check-model branch from 63747c5 to 040d9dc Compare September 9, 2026 15:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Exception is raised when wrong model is used

1 participant