Skip to content

Preserve exact Decimal semantics in Java SQLite - #221

Open
philipgreat wants to merge 11 commits into
mainfrom
fix/sqlite-exact-decimal
Open

philipgreat wants to merge 11 commits into
mainfrom
fix/sqlite-exact-decimal

Conversation

@philipgreat

@philipgreat philipgreat commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

Tracks #220; public release qualification remains a separate gate. This isolates exact SQLite Decimal semantics from the broader P1 committed-replication branch. Modeled Decimal uses exact text storage, validation, collation and SUM; BigDecimal binds without binary floating-point conversion; old nonconforming NUMERIC schemas fail closed. A runtime-owned generated Java example verifies audited Q/E save, 0.1 + 0.2 = 0.3, 3.50 scale, 19-digit precision and Spring workspace startup twice against the paired generator PR teaql/teaql-code-gen#277. The generated library source stays unchanged. Focused SqliteDecimalFunctionsTest and teaql-sqlite -am test passed. No public artifact, main merge or legacy schema migration is claimed; the exact-head Java CI (5/5), paired generator CI (3/3), and six-node immutable internal Maven gate with audited resume and two clean generated-consumer rounds pass. Source review found no new blocker. Ready for human review; main merge and public-package replay remain separate.

@philipgreat
philipgreat marked this pull request as ready for review October 18, 2026 00:26
@philipgreat

Copy link
Copy Markdown
Contributor Author

Requalification at b97e008: exponent-form SQLite Decimal text is rejected before validation/aggregation expansion, and JDBC BigDecimal binding has a 1,000,000-character plain-text safety bound before materialization. Focused and full teaql-sqlite -am tests pass; generated example and workspace pass twice; six-node exact-head internal Maven publish/download consumer and matching-input resume pass. All five required PR checks are green. Evidence handoff: teaql/teaql-conformance#162. This is not public release or merge approval.

This branch has not been deployed

No deployments
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.

1 participant