lilleman
|
707cd6b203
|
Move a table's rows, links and pins into internal/rows, and walk every path through one per-step function, so Fake refuses a level carrying a repeat
|
2026-10-05 22:10:04 +02:00 |
|
lilleman
|
dd2fe61b13
|
Answer architecture round 1: one invariant phrase in internal/invariant, held across every package, Source built by Dir and FS, coverage counted across packages, and file items 112 and 113
|
2026-10-05 16:30:28 +02:00 |
|
lilleman
|
818a9b56c2
|
Move the folder walk and the reading of a data tree's JSON and TSV files into internal/datafiles
|
2026-10-05 16:30:28 +02:00 |
|
lilleman
|
1d0fe9f555
|
Answer architecture round 1: read the module path from go.mod, keep the randomness behind State's methods, rename the field drawState and the counter Seq, and file items 108 and 109
|
2026-10-05 12:03:38 +02:00 |
|
lilleman
|
2d9c315e75
|
Move the seeded randomness and the {seq()} counters into internal/drawstate
|
2026-10-05 12:03:38 +02:00 |
|
lilleman
|
6eb9880a3f
|
Name the version in every seed promise, and say to regenerate seeded fixtures when it changes
|
2026-10-04 17:17:46 +02:00 |
|
lilleman
|
53431ab908
|
Answer prose round 1: plainer decision titles and body, comments that say what the code cannot, and claims New no longer makes
|
2026-10-03 20:37:07 +02:00 |
|
lilleman
|
a9eb337ec7
|
Say in config.load only what New's godoc does not
|
2026-10-03 20:37:07 +02:00 |
|
lilleman
|
590681ed24
|
Answer stability and product-owner: New's godoc says where the load lands, plainer Performance wording, regenerate before re-pinning, and no redundant sort
|
2026-10-03 20:37:07 +02:00 |
|
lilleman
|
cc8797744b
|
Answer architecture round 3: the generated header names go generate, one sorted-keys helper everywhere, one site constructor, and an inline folder reference refused before anything loads
|
2026-10-03 20:37:07 +02:00 |
|
lilleman
|
3bb8628e39
|
Answer architecture round 2: one folder walk and one sorted-keys helper, REGENERATE for the index, and the held decisions naming the items that end them
|
2026-10-03 20:37:07 +02:00 |
|
lilleman
|
c3b462ec0a
|
Answer architecture round 1: one inline load-and-bind, go generate for the index, sorted unloaded names, item 79 named in the decision, and the audit's other findings filed
|
2026-10-03 20:37:07 +02:00 |
|
lilleman
|
8b3bbc4003
|
Load shipped categories before binding, panic on an index that misses a read, and name the index entry and unloaded category plainly
|
2026-10-03 20:37:07 +02:00 |
|
lilleman
|
5667cd5dc3
|
Load a shipped category on the first call reaching it, from an index generated from data/
|
2026-10-03 20:37:07 +02:00 |
|
lilleman
|
186443f883
|
Rename eachToken to eachScanUnit, and narrow generatorState to draw state
|
2026-09-29 12:47:38 +02:00 |
|
lilleman
|
14194a775d
|
Rename ftoken to scanUnit and session to generatorState
|
2026-09-29 12:47:38 +02:00 |
|
lilleman
|
83f8c45493
|
Name the fields mu guards
|
2026-09-29 04:45:27 +02:00 |
|
lilleman
|
6bd2b155d2
|
Move the Generator's lock-free-reader invariant from its godoc onto mu
|
2026-09-29 04:45:27 +02:00 |
|
lilleman
|
16604de74c
|
Name the table lookup the Generator doc's fixed tree excepts, and drop the renders restatement
|
2026-09-29 04:45:27 +02:00 |
|
lilleman
|
c422c9e436
|
Build the walk root in New, drop the categories copy, and correct the node and renders comments
|
2026-09-29 04:45:27 +02:00 |
|
lilleman
|
38837b86a8
|
Panic through internalError on a node kind contained or paths does not list
|
2026-09-29 02:48:58 +02:00 |
|
lilleman
|
7b01a7fd68
|
Say what List returns: fields, columns, linked tables, direct descents only
|
2026-09-29 02:07:40 +02:00 |
|
lilleman
|
a9f35a1ab3
|
Correct List's, reached's and rng's false comments
|
2026-09-29 02:07:40 +02:00 |
|
lilleman
|
514d738b08
|
Report every invariant break through internalError
|
2026-09-29 01:51:44 +02:00 |
|
lilleman
|
3af4526ef6
|
Give Fake a local hold set, as the other renders have, and drop the done round item
|
2026-09-29 01:34:57 +02:00 |
|
lilleman
|
77f79de443
|
Trace a render's reads through the hold set the test makes, dropping session.trace and repeatDepth
|
2026-09-29 01:27:57 +02:00 |
|
lilleman
|
dc0f9fa2d6
|
Drop the comment claims that name callers and List's gaps
|
2026-09-28 21:46:24 +02:00 |
|
lilleman
|
21b48c8c41
|
Correct the false comments and delete dead code
|
2026-09-28 21:46:24 +02:00 |
|
lilleman
|
1a6111d67d
|
Trace the reads a render makes, gather a render's draws in renderDraws and columnDraws, and drop the done item
|
2026-09-26 15:17:05 +02:00 |
|
lilleman
|
c55c75a29e
|
Give dir, path, structs and r one meaning each, and name the table option indexes keyIndex through parentIndex
|
2026-09-25 19:31:09 +02:00 |
|
lilleman
|
d6ac8ed9fd
|
Give check, children, column, columns, draw, drawn, fields, format, head, index, key, n, name, named, names, null, number, op, reads, record, root, row, t and whole one meaning each
|
2026-09-25 19:31:09 +02:00 |
|
lilleman
|
5aae86638b
|
Keep reference bindings out of template.fields, in template.refHeads
|
2026-09-24 19:38:10 +02:00 |
|
lilleman
|
9f00ad039e
|
Move the decisions to docs/decisions.md, indexed in AGENTS.md and linked from the fences they back
|
2026-09-24 13:44:06 +02:00 |
|
lilleman
|
d128621fc1
|
Name a render's holds apart from the draw fence
|
2026-09-21 22:06:01 +02:00 |
|
lilleman
|
f569580077
|
Define draw, hold, pin, family, whole and fence in the package doc
|
2026-09-21 10:41:58 +02:00 |
|
lilleman
|
ce8ea550a3
|
Correct what the readers proved false, and lift the file map out of last place
Tests / vet + fmt + tests (pull_request) Successful in 1m26s
Tests / Gitea release from CHANGELOG.md (pull_request) Has been skipped
Tests / vet + fmt + tests (push) Successful in 7s
Tests / Gitea release from CHANGELOG.md (push) Successful in 5s
|
2026-09-20 21:47:17 +02:00 |
|
lilleman
|
047237f361
|
Replay each path's selectors through the walk for the family fence, require a key for a name, refuse a name shadowing a key, a table reading its own family and an ancestor's column clash, add the row node and family.go, and pin eight rows inline
Tests / vet + fmt + tests (pull_request) Successful in 1m8s
Tests / Gitea release from CHANGELOG.md (pull_request) Has been skipped
|
2026-09-17 12:54:24 +02:00 |
|
lilleman
|
f6b54c8ae6
|
Add the table node: rows TSV, key and name selection, linked tables drawn consistently, and the choice-of-rows fence
|
2026-09-17 12:28:46 +02:00 |
|
lilleman
|
5ed45cc55c
|
Rename the folder node type from group to folder, freeing group for the draw option
|
2026-09-15 23:25:39 +02:00 |
|
lilleman
|
c0b176a839
|
Struct-filling: FakeStruct fills fake-tagged fields as a record, each field's Go type its datatype, and IsTemplate owns the path-or-template shape rule
Tests / vet + fmt + tests (pull_request) Successful in 1m0s
|
2026-09-15 16:23:10 +02:00 |
|
lilleman
|
94dc562c6c
|
Typed columns and null: a datatype option, null items, and a load check that every typed render parses
Tests / vet + fmt + tests (pull_request) Successful in 58s
|
2026-09-15 11:23:57 +02:00 |
|
lilleman
|
79827a66d6
|
Fence a record once per node, refuse a column reading its own record, and keep a bare reference independent as an operand
Tests / vet + fmt + tests (pull_request) Successful in 1m3s
|
2026-09-04 09:32:29 +02:00 |
|
lilleman
|
873b7678ba
|
Address reviewer findings: reference hint, consumer-terms type errors, misuse exit code, immutability and parity docs
Tests / vet + fmt + tests (pull_request) Successful in 57s
|
2026-09-03 19:21:42 +02:00 |
|
lilleman
|
addba9abf7
|
Give maxLen its own literal and repeats MaxRepeat; arg errors name the spelling and the range; write's comment says what Flush reports; assert 64-bit at compile time
Tests / vet + fmt + tests (pull_request) Successful in 59s
Tests / vet + fmt + tests (push) Successful in 6s
|
2026-09-02 19:25:19 +02:00 |
|
lilleman
|
08c7ef9b7f
|
Keep the real data-path error, reject an empty data path, and report a crypto/rand failure instead of seeding zero
Tests / vet + fmt + tests (pull_request) Successful in 58s
|
2026-09-02 19:09:29 +02:00 |
|
lilleman
|
3d3efbb642
|
Bound --repeat at MaxRepeat and stream the renders; name an unknown flag by its rune; --list rejects an inert --repeat or --separator
Tests / vet + fmt + tests (pull_request) Successful in 56s
|
2026-09-02 19:06:20 +02:00 |
|
lilleman
|
1b1b93b35f
|
Reject weight 0, a never-numeric calc operand and a repeat product past the cap; the CLI classifies ErrNoData
Tests / vet + fmt + tests (pull_request) Successful in 52s
|
2026-09-02 18:23:03 +02:00 |
|
lilleman
|
054f99c94f
|
One spelling per shape: reject a one-item choice, a repeated item and an inert object; reshape the data
|
2026-09-02 12:38:59 +02:00 |
|
lilleman
|
ff4b243148
|
Format text is literal; class runs are {digits(n)} {upper(n)} {lower(n)}; a string is a format
|
2026-09-02 12:37:21 +02:00 |
|
lilleman
|
f210c7a764
|
Embed the shipped data, load any fs.FS, New takes options, Fake is safe for concurrent use
|
2026-09-01 23:07:15 +02:00 |
|