Commit Graph

68 Commits

Author SHA1 Message Date
lilleman 50e1a9fb22 Answer architecture round 1: a module's reads sits on its index entry or, for a source without an index, in the load that walks it, the note names default modules, the shipped modules are listed by name, datafiles drops its unused base, and item 195 files the builtins' second parse 2026-10-11 16:02:48 +02:00
lilleman e8b7d95559 Test that each shipped module renders beside the modules it reads, that the test's module list matches data.Modules(), and that a data path's manifest and an indexed one each name what they read 2026-10-11 16:02:48 +02:00
lilleman b8eba1eb35 Ship en_US, sv_SE, misc, geo/SE and geo/US as Go packages exporting FS, listed by data.Modules(), and fail a bare New naming WithDataFS 2026-10-11 16:02:48 +02:00
lilleman 55d503317d Answer architecture round 3: New loads only sources without an index and what they read, an entry drops reads, ErrLoad sits beside New, the manifest decoder moves to manifest.go and names each mistake once as jsonvalue.Kind words it 2026-10-10 11:24:32 +02:00
lilleman 498f81075e Answer architecture round 2: a first reach checks only a table's parent, loadReached splits into a batch that loads, runs and puts back, the manifest decodes strictly and reports every mistake, and ErrLoad marks a load failing in New too 2026-10-10 11:24:32 +02:00
lilleman c783d4af23 Answer architecture round 1: one owner keeps a folder's loaded and unloaded names apart, each loaded category is checked against its index entry, addSource returns what it replaced, the manifest cache goes, ErrLoad exits 1, and the docs say what New and Fake now refuse 2026-10-10 11:24:32 +02:00
lilleman c320344fac Load each category of a source whose manifest carries an index on first reach, and move the shipped index into data/.fejkdata.json 2026-10-10 11:24:32 +02:00
lilleman f036f859d6 Load a generator with no data, a repeat or count of 0, and a name a choice's item binds for that item's own reads 2026-10-08 12:37:59 +02:00
lilleman 10dbd471fb Delete the doc lines the 2026-10-07 panel read as restating their code, and say what gatherFields' index is 2026-10-07 02:04:32 +02:00
lilleman f7d9e3fb71 Delete the doc lines the panel read as restating their code 2026-10-07 01:22:24 +02:00
lilleman d0886e4795 Answer stability round 2, prose round 2 and product-owner round 2: a head may be a name, scope and link come before the entries using them, a path reaches a node, and resolve ties a reference or a name 2026-10-07 01:04:44 +02:00
lilleman 63223c6d63 Answer stability round 1, prose round 1 and product-owner round 1: startOf's doc names the head, the old senses leave names, comments, messages and tests, and the vocabulary defines scope, link and head 2026-10-07 01:04:44 +02:00
lilleman 98bb73f096 Give scope, binding, link, pick and head one meaning each: renderEnv, nodeSet, pipeline, resolvedRef, resolveTemplates, drawItem and a read's start 2026-10-07 01:04:44 +02:00
lilleman 0993d86f22 Answer architecture round 1: the read-once check back at link over uses from the compiled arms, every link step taking its inputs as arguments in link.go, a record column holding its name and datatype, and items 104 to 106 dropped from the plan with the decisions citing them reworded 2026-10-05 22:49:04 +02:00
lilleman cd7f0a04dc Link each template in steps that each return what they build, create a name scope with its owner in one place, and settle each record's columns at load, so Generator.records goes 2026-10-05 22:49:04 +02:00
lilleman 54cb52b483 Answer architecture round 1: one categoryPath, the walk's label named label, checkAncestors split from proveParent, and file items 115 and 116 2026-10-05 21:21:46 +02:00
lilleman 8ffaa31e39 Set a table's path when it compiles, link a table family in one function, and label a cell from the walk 2026-10-05 21:21:46 +02:00
lilleman c55b296385 Answer prose round 2: the maintainer's approval beside the list it covers, Facts and compileInto docs naming what they read, and "the folder that dir names" 2026-10-05 16:30:28 +02:00
lilleman 643efc8650 Answer prose round 1: the restructure in three named parts, Category.Folders and proven.Facts for one meaning per name, plainer builtinfunc and datafiles comments, and no false iban rationale 2026-10-05 16:30:28 +02:00
lilleman 4f484cd780 Answer architecture round 3, stability round 1 and product-owner round 1: CalcName and proven.OfCalc for one meaning per name, a lazy load placed where its lookup found it, DataType's constants typed under it, and cover printing the module's total 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 c2f2e86735 Move how the template language is written into internal/grammar 2026-10-05 12:35:08 +02:00
lilleman 1a15a139c8 Answer architecture round 1: refuse a name read inside the field it binds, check every scope's cycles, build a column read in one pass, drop the implicit struct pick for names across tags, and state the fresh-draw rule once 2026-10-05 10:19:01 +02:00
lilleman 6aebeebb72 Draw every {…} afresh, keep a pick only by name, and delete drawGroup with the hold and draw fences 2026-10-05 10:19:01 +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 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 a9448d1a99 Delete comments restating their code, and doc.go's partial list of draw fences 2026-09-30 22:01:04 +02:00
lilleman 4fb81a5672 Correct IsTemplate's, loadDir's and the README's row-index claims 2026-09-30 21:56:14 +02:00
lilleman e9b8216116 Say at checkNodeFences that its scope's cycles are refused first 2026-09-30 21:35:47 +02:00
lilleman 42c443bd5a Build the draw fence's fold with the fence, deleting its lazy accessor 2026-09-29 21:31:07 +02:00
lilleman e1769f20a2 Delete loadData's, drawRow's and selector's comments, and render.go's second and third compile notes 2026-09-29 13:31:04 +02:00
lilleman 94c8bd229d Give checkOwnFamily the scope walk's signature, and drop its wrapper 2026-09-29 13:26:56 +02:00
lilleman 6cb2d143d6 Refuse own-family reads before any survey, and panic on a clash where readSurvey.edge enters a read's pins 2026-09-29 13:26:56 +02:00
lilleman fe2fea5da2 Drop the last field-alternation wording, say checkNodeFences holds the fences every binding needs, and tick the rename off 2026-09-29 04:31:25 +02:00
lilleman 29f3821a21 Rename pinnedRow, table.category, checkRenders, fieldAlternation and referenceFence to what they are 2026-09-29 04:31:25 +02:00
lilleman f7cfc75394 Name the fence drawFence and the route surveyRoute, and move the survey tests to readsurvey_test.go 2026-09-29 03:14:13 +02:00
lilleman 2d82f34cd4 Rename the load-time draw types to the read survey and fence, and move the survey to readsurvey.go 2026-09-29 03:14:13 +02:00
lilleman e257dc0e6e Return link's and format compile's outputs as templateLink and formatOps, assigned once in linkTemplate 2026-09-28 23:55:22 +02:00
lilleman 2254b33f0e Keep the binding's prose to what its code cannot say 2026-09-28 10:53:26 +02:00
lilleman 01a60d06f1 Name the inline drawGroup refusal as a binding's reference fence, beside the cycle fence 2026-09-28 10:53:26 +02:00
lilleman cfe653de4d Run New, NewTemplate and FakeStruct through one bind pipeline naming where they differ 2026-09-28 10:53:26 +02:00
lilleman b38974adb2 Say path where hold and dataSource comments named the old spelling 2026-09-25 19:31:09 +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 cfe8124cc3 Rename addField to gatherField and reachMemo to renderCounts, and list every shared name left 2026-09-25 19:02:58 +02:00
lilleman 65091233a8 Give rows, field, walk, column, expr and of one meaning each: rowCount, readRows, gatherFields, addField, addTag, renderCount and the prove methods 2026-09-25 19:02:58 +02:00
lilleman f94546edaa Say what the graph and the load path each hold 2026-09-21 21:21:10 +02:00
lilleman 11ecc1e365 Put the load path and the fence order in one file 2026-09-21 21:21:10 +02:00
lilleman c8a4ffa764 Export ErrNoColumns, name the cure for a shell-split template and an unquoted record, and name the flag a missing data path came from 2026-09-18 20:35:56 +02:00
lilleman d5d9c2655e Give every table its path in one pass, name it in every message, read the layout probes through predicates, and leave the shell to the CLI 2026-09-18 20:02:08 +02:00