Release Fixture Tools 0.1.0
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
# Fixture Tools
|
||||
|
||||
Generate deterministic, privacy-safe synthetic test fixtures entirely in the
|
||||
browser. Fixture Tools is a local-first module in the add·ideas Toolbox.
|
||||
|
||||
## v0.1.0 capabilities
|
||||
|
||||
- Import a focused subset of JSON Schema, SQL `CREATE TABLE` DDL, XSD, CSV
|
||||
headings, or the app's portable fixture-model JSON
|
||||
- Review and edit normalized tables, fields, types, required/unique rules,
|
||||
numeric and length ranges, enumerations, and foreign-key relationships
|
||||
- Generate reproducible rows from a text seed with uniform, sequential,
|
||||
normal, and constant distributions
|
||||
- Deliberately exercise boundary values or inject invalid values, with a
|
||||
separate violation ledger so negative-test fixtures cannot be mistaken for
|
||||
valid data
|
||||
- Preserve referential integrity and field uniqueness for valid generated rows
|
||||
- Export JSON, spreadsheet-safe CSV, NDJSON, XML, SQL `INSERT` statements, or a
|
||||
reusable fixture recipe
|
||||
- Use only reserved example domains for generated email addresses
|
||||
|
||||
## Honest scope
|
||||
|
||||
The importers normalize common declarative constructs; they are not complete
|
||||
JSON Schema, SQL, or XML Schema validators. Remote references, schema code,
|
||||
database connections, XML entities, XSD `choice`/identity constraints, SQL
|
||||
dialects beyond common table/column clauses, and production-scale data loads are
|
||||
out of scope in v0.1.0.
|
||||
|
||||
Inputs are capped at 2 MiB. A recipe can contain at most 20 tables and 100
|
||||
fields per table; generation is capped at 50,000 total rows and 8 MiB per
|
||||
serialized output, with no more than 100,000 generated field values. Synthetic
|
||||
data is not anonymization and must not be assumed
|
||||
to represent real populations. The seeded generator is reproducible, not
|
||||
cryptographically random.
|
||||
|
||||
## Development
|
||||
|
||||
```sh
|
||||
npm ci
|
||||
npm run check
|
||||
npm run test:browser
|
||||
```
|
||||
|
||||
`npm run release:artifact` creates a deterministic release ZIP and SHA-256
|
||||
sidecar after all checks pass.
|
||||
|
||||
## License
|
||||
|
||||
GPL-3.0-or-later. See [LICENSE](LICENSE). Dependency notices are recorded in
|
||||
[THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md).
|
||||
Reference in New Issue
Block a user