Commit Graph

390 Commits

Author SHA1 Message Date
lilleman 5db699469b Record the shipped places and streets as a decision, and say so in the README and changelog 2026-10-11 16:42:23 +02:00
lilleman 99ba0b30ee Re-pin the seeded sv_SE.address example to the new streets 2026-10-11 16:42:23 +02:00
lilleman e8f5fd47d5 Answer architecture round 11: a source states its mount in a field its manifest, its labels and its file reads share, so the mount can come before or after the manifest; the README says a stand-in for the places is a record with a format 2026-10-11 16:02:48 +02:00
lilleman f89540e973 Answer product-owner round 6: the options table spreads Modules(), and the Library section shows two locales and what a stand-in for the places provides 2026-10-11 16:02:48 +02:00
lilleman d242466859 Answer architecture round 9: each data package exports Modules, a locale's importing its country's geo package as a bench chose, and a namespace mounts a tree through an fs.FS wrapper, so internal/datafiles walks file-system folders alone 2026-10-11 16:02:48 +02:00
lilleman 203486a9d3 Answer architecture round 8: a shipped package's folder spells its namespace (data/sv_SE, data/geo/SE) under its lowered Go name, as a second bench chose, a mounted root folder reads as its namespace, and item 196 cites goal 9.2 2026-10-11 16:02:48 +02:00
lilleman cc1c3bbc7d Answer architecture round 7: reads and its note move to item 196, a mounted module's errors read sv_SE (address.json), internal/datafiles handles namespace folders in one form, and a folder outside the mount is a broken invariant 2026-10-11 16:02:48 +02:00
lilleman 89cafb1a21 Answer architecture round 6: a manifest's reads names namespaces, loadReached notes only those nothing loaded provides, a mounted module labels its files by its namespace, Source.Load checks its mount, and the README keeps namespace and reads in an edited copy 2026-10-11 16:02:48 +02:00
lilleman 7b70530a8a Answer architecture round 5: the shipped packages are enus, svse, geose, geous and misc, each holding its files at its root under its manifest's namespace, and the errors use the wording a bench of the Audience chose 2026-10-11 16:02:48 +02:00
lilleman 165b67e843 Answer architecture round 4: New keeps every module the loaded manifests read, and the note on a failed load names them all from one function beside noDataNote, so no category carries its source's modules 2026-10-11 16:02:48 +02:00
lilleman 7f7d260f83 Answer prose round 1: errNoData, the reads paragraph and the changelog entry read in one pass, the Library section shows the import block for one locale, and the decisions state why New checks no reads and which goal the embed serves 2026-10-11 16:02:48 +02:00
lilleman e6e7b804e1 Answer product-owner round 1: the Versioning table names the data packages, the README pairs each locale with its geo module, WithDataFS refuses a nil module, errNoData says New was given no data, and three changelog lines the move made false are true again 2026-10-11 16:02:48 +02:00
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 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 37b1e370b9 Answer product-owner round 2: the parent error says the source loads whole at start, and the exit codes name a missing -d folder 2026-10-10 11:24:32 +02:00
lilleman 13e3de39fe Answer product-owner round 1: the parent error and the README name the way to link under another source's table, a missing indexed file names the manifest, the README warns a copied data/ carries its index, and the docs say what a load failure and a replacement do 2026-10-10 11:24:32 +02:00
lilleman a6d9623383 Record the paired ruling at d34cc42, move jsonKind's comment onto Kind, name the manifest in Layout, and note the normalised manifest in item 185 2026-10-10 11:24:32 +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 687a3d37bf Answer prose round 1: module means fejkdata's unit and Go module the Go one, only anyone else's manifest names a version, goal 2.3 says a program links what it imports, and a carved-out module requires the core release that drops its package 2026-10-09 18:57:01 +02:00
lilleman 3e12849f65 Ship the data as Go packages in the core's module: goal 2.3 and the shipped-data decision say packages, item 179 goes, items 180 to 186 follow, and item 191 files the release tag-guard bug 2026-10-09 18:57:01 +02:00
lilleman c597d0a2e0 Record the maintainer's answers: an exact version match, goal 6.3 for modules that load on first reach, and items 79 and 54 folded into items 180 and 179 2026-10-09 15:00:50 +02:00
lilleman edec28f58f Answer prose round 1: the Data paragraph names the set first, the choice comment says what shared counts, and the plan's new items read once 2026-10-09 13:11:50 +02:00
lilleman 0243e8d42d Answer product-owner round 1: the Data section names the geo trees, and Layout says what the docs records hold 2026-10-09 13:11:50 +02:00
lilleman fd6d80e2c2 Wrap the README's Data paragraph 2026-10-09 13:11:50 +02:00
lilleman 5d85944359 Record the 2026-10-09 panel's scores, file what it named as items 170 to 177, and correct four claims it found false 2026-10-09 13:11:50 +02:00
lilleman a318dc7f42 Answer prose round 1: fence's docstring splits rule, shapes and result, each drop message names what was missing, the US geo row says a place needs a street, and file item 169 2026-10-09 12:35:12 +02:00
lilleman 8989cae9d9 Answer prose round 1: the keep rule names what is kept and who decides, headSpans says what it counts, and compileStep and config.load stop restating 2026-10-09 11:32:51 +02:00
lilleman f19f303275 Answer product-owner round 1: the Layout's pick.go line reads on one pass 2026-10-09 11:32:51 +02:00
lilleman 5c9b85e362 Answer architecture round 1: List's walk and join sit in path.go, a compiled path's head is named head, every pick key comes from levelKeys, and readsColumn names all four readers 2026-10-09 11:32:51 +02:00
lilleman 0002efb9d4 Gather the pick key's load and render sides in pick.go, and name each thing for what it is 2026-10-09 11:32:51 +02:00
lilleman 9286bf82f5 Answer product-owner round 1: a table refuses an unknown JSON member, the row-through-a-name refusal shows its two readings, a referenced category sees no name, and items 164 to 166 say what a cell reads and what each error says 2026-10-09 10:48:15 +02:00
lilleman a1bfde3e41 Answer prose round 1: the table refusals are a list, the closure rule reads one idea per sentence, and the items cite the ruling 2026-10-09 10:48:15 +02:00
lilleman bad74f95cd Answer item 162: a name is a lexical closure, two spellings stay refused for their two readings, and items 164 to 166 plan the three that load 2026-10-09 10:48:15 +02:00
lilleman 221ce82e43 Answer prose round 3: the CHANGELOG list reads on one pass and names --separator, the JSON-string clause says what the escapes do, and the weight refusals are separated 2026-10-08 12:37:59 +02:00
lilleman 5c0ac105b4 Answer prose round 2 in the docs: weights take 0, the node table states the record-column refusal once, the time refusal joins its list, CHANGELOG lists what now loads, decision titles state their whole ruling, and the JSON-string ruling folds into the struct-tag decision 2026-10-08 12:37:59 +02:00
lilleman 9baa77c752 Drop the CLI's no-data hint, keep the number underflow rule in grammar/number.go, and name the JSON a template may be 2026-10-08 12:37:59 +02:00
lilleman 357a2a276d Print the CSV header at -n 0, refuse --separator with a record format, refuse a date field in time(), read a bare number template as a format string, and say when no data is loaded 2026-10-08 12:37:59 +02:00
lilleman bd01072ad4 Reword goal 6 to errors surfacing at load, so it guesses at no mistake beside goal 5.7 2026-10-08 12:37:59 +02:00
lilleman 71c5039f04 Let a struct field's Go type type a bare number or boolean in its tag, and offer only a datatype that holds a refused column's number 2026-10-08 12:37:59 +02:00
lilleman 2b1f179df6 Say that a category may name a hidden rows file, though a dot-prefixed entry is never a category 2026-10-08 12:37:59 +02:00
lilleman 5ffe44cd26 Say in Records that a category's reference to itself is a fresh draw 2026-10-08 12:37:59 +02:00
lilleman 8f1cd76bf1 Render blank stdin, read a category's own fields as fresh draws, refuse a bare number or boolean in a record column, and refuse a one-item choice of weight 0 2026-10-08 12:37:59 +02:00
lilleman d00a2cf2e3 Make goal 5.7 an aim: load whatever is well-formed and means one thing, guessing at no mistake 2026-10-08 12:37:59 +02:00
lilleman 97e72988b1 Refuse a calc over digits(0) or a repeat of 0, name an option's wrong kind as JSON does, type the name scope kinds, and compile only from a jsonvalue.Value 2026-10-08 12:37:59 +02:00
lilleman 3dfaa8d0fa Let --repeat 0 print nothing, or an empty array under --format json 2026-10-08 12:37:59 +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 ee236d7955 Load whatever is well-formed and means one thing: ignore a part with no effect, print a constant sample, render any JSON value, draw no weight-0 item, and let a name, a rows file, a struct or a CLI flag go unused 2026-10-08 12:37:59 +02:00