Commit Graph

362 Commits

Author SHA1 Message Date
lilleman 06a93bb96d Specify every category with its source, licence and shape, the builtins the data cannot express, and the order of work
Tests / vet + fmt + tests (pull_request) Successful in 4s
Tests / Gitea release from CHANGELOG.md (pull_request) Has been skipped
Tests / vet + fmt + tests (push) Successful in 4s
Tests / Gitea release from CHANGELOG.md (push) Successful in 3s
2026-09-17 08:25:11 +02:00
lilleman e50d3f7ffc Record the geo decisions: open sources first, postort locality, selection by key or name, SE and US for v0.1.0 2026-09-17 07:51:01 +02:00
lilleman 2fa5f3c5ec Plan the major data update: structure, geo tree, sources and categories 2026-09-16 23:34:23 +02:00
lilleman 16f2e96fe8 Refuse a release whose tag sits elsewhere, pin a typed nullable column and a relative reference in the reads test, and narrow the pin's claim to template formats
Tests / vet + fmt + tests (pull_request) Successful in 1m7s
Tests / Gitea release from CHANGELOG.md (pull_request) Has been skipped
Tests / vet + fmt + tests (push) Successful in 2m3s
Tests / Gitea release from CHANGELOG.md (push) Successful in 3s
2026-09-16 20:17:50 +02:00
lilleman 1cf8ed502a Cut the release from the changelog heading on a green main instead of a hand-pushed tag
Tests / vet + fmt + tests (pull_request) Successful in 1m7s
Tests / Gitea release from CHANGELOG.md (pull_request) Has been skipped
2026-09-16 20:09:38 +02:00
lilleman ea71b3e479 Pin the categories each shipped category reads 2026-09-16 20:09:38 +02:00
lilleman 265bd05dfc Define a patch, disambiguate the Versioning table, name the changelog check, and keep the gate claims true
Tests / vet + fmt + tests (pull_request) Successful in 1m2s
2026-09-16 19:49:55 +02:00
lilleman 7bf3da807c Settle the compatibility contract, the changelog and the tag-published Gitea release
Tests / vet + fmt + tests (pull_request) Successful in 1m7s
2026-09-16 19:29:44 +02:00
lilleman f9181a08b5 Pin the shipped shape: every path, each category's format, each column's datatype and nullability 2026-09-16 19:23:27 +02:00
lilleman b45a1edae0 Cut the comments that restate the README or narrate the arrangement, and name the record fence asymmetry in Decisions
Tests / vet + fmt + tests (pull_request) Successful in 1m6s
Tests / vet + fmt + tests (push) Successful in 7s
2026-09-16 10:43:25 +02:00
lilleman 0f645d7092 Delete the fresh-draw fence the self-reference rule made unreachable, and pay for the draw walks only where data binds a reference
Tests / vet + fmt + tests (pull_request) Successful in 1m6s
2026-09-16 10:29:23 +02:00
lilleman 0443ecdf13 Tests: gate the allocations a reference path costs across a repeat and in a named draw group 2026-09-16 10:29:00 +02:00
lilleman c60ebb3faa Merge the two reference-path walks, and correct the bare reference Decision, a stale comment and the draw map spellings
Tests / vet + fmt + tests (pull_request) Successful in 1m8s
2026-09-16 09:55:58 +02:00
lilleman 9f4331a1f3 Tests: a record column reaching back into a category through another one is refused at load 2026-09-16 09:55:36 +02:00
lilleman a995aba4e9 Refuse a reference into the category it sits in, and run a record's column fences at load
Tests / vet + fmt + tests (pull_request) Successful in 1m8s
2026-09-16 09:42:36 +02:00
lilleman 3e535bcc43 Tests: a reference into the category it sits in is refused at load, and a record's column fences run there too 2026-09-16 09:42:18 +02:00
lilleman 68d2461704 Name the draw option drawGroup, refuse one whose reads all sit behind a nested draw group, and record why the two fences stay apart
Tests / vet + fmt + tests (pull_request) Successful in 1m7s
2026-09-16 08:55:55 +02:00
lilleman 53a87da9b7 Tests: name the draw option drawGroup, and refuse a draw group whose reads all sit behind a nested one 2026-09-16 08:55:39 +02:00
lilleman d3f430bf53 Render a repeat iteration in no group, refuse a group that names nothing, key group names by category, and own reference overlap in one fence
Tests / vet + fmt + tests (pull_request) Successful in 1m6s
2026-09-15 23:31:48 +02:00
lilleman f6b8f4fb50 Tests: a repeat iteration renders in no group, a group that names nothing is refused, a group name is local to its category, and one overlap verdict wherever the reads sit 2026-09-15 23:30: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 246f99a319 One reference draw per render in both views: a repeat iteration draws anew, a group option draws apart, and one fence refuses what a render's draws cannot answer for
Tests / vet + fmt + tests (pull_request) Successful in 1m6s
2026-09-15 22:59:30 +02:00
lilleman 4b31482a53 Tests: a reference path is one draw per render in both views, a repeat iteration draws anew, a group draws apart, and a bare reference beside a path is refused 2026-09-15 22:45:13 +02:00
lilleman 72a6ef9071 Name the typed spelling for a column read whose values hold the datatype beside it, and say holding for a datatype taken from a column read
Tests / vet + fmt + tests (pull_request) Successful in 1m2s
Tests / vet + fmt + tests (push) Successful in 7s
2026-09-15 21:44:36 +02:00
lilleman 1e60d52e48 Tests: a typed column read whose values hold the datatype declared beside it names the typed spelling 2026-09-15 21:43:09 +02:00
lilleman 72fe01e89b Refuse only a datatype restating the column read, name the text spelling for datatypes taken from column reads keeping an item's other keys, and keep the fence Decision true
Tests / vet + fmt + tests (pull_request) Successful in 1m3s
2026-09-15 21:28:52 +02:00
lilleman c991f35f4f Tests: another datatype over a column read types it where the values prove it, and datatypes taken from column reads name the text spelling, keeping an item's weight 2026-09-15 21:27:19 +02:00
lilleman acad25708a Leave column agreement to the records that read DataType, name the text spelling beside a typed column read, and check a column after the columns it reads
Tests / vet + fmt + tests (pull_request) Successful in 1m3s
2026-09-15 21:13:34 +02:00
lilleman f781fa47d1 Tests: an item beside a typed column read that can hold its datatype keeps the object-form advice 2026-09-15 21:12:21 +02:00
lilleman bc4280561e Tests: a struct column need not agree on a datatype, text beside a typed column read names its text spelling, a column read is reported before its reader, and column reads through a dot, a choice and an always-null column 2026-09-15 21:10:36 +02:00
lilleman 2a750008bf Tests: name the struct test for a field tagged with a column as that column
Tests / vet + fmt + tests (pull_request) Successful in 1m2s
2026-09-15 20:48:12 +02:00
lilleman b4ebab5abf Keep a read's null with its draw, share the lone-reference check, name a JSON-string item's object form again, prove each column once per pass, and read a record off template.record
Tests / vet + fmt + tests (pull_request) Successful in 1m3s
2026-09-15 20:42:13 +02:00
lilleman 04a75f7ded Tests: a JSON-string item reading a string column keeps the advice naming its object form 2026-09-15 20:38:35 +02:00
lilleman 2b2010bdd6 Take the datatype and null of the column a lone reference reads, and check a column's datatypes once its references are linked
Tests / vet + fmt + tests (pull_request) Successful in 1m3s
2026-09-15 20:20:25 +02:00
lilleman 802f62a4de Tests: a column of one reference alone takes the datatype and null of the column it reads, in records and structs, and a datatype restating it is refused 2026-09-15 20:17:07 +02:00
lilleman 3cd3f8f317 Spend the struct cap on embedded structs too, word it for any struct field, and route path advice through the name check
Tests / vet + fmt + tests (pull_request) Successful in 1m2s
Tests / vet + fmt + tests (push) Successful in 6s
2026-09-15 17:50:42 +02:00
lilleman c212c6bef4 Tests: the struct cap sits exactly at 1024 and counts embedded structs, and path advice never names a spelling that fails 2026-09-15 17:50:30 +02:00
lilleman e4ebfdb28d Cap a struct type's records at 1024, find a lone reference in the value a template holds, word range refusals as unproven, and scope the lone-reference Decision to arguments and tags
Tests / vet + fmt + tests (pull_request) Successful in 1m0s
2026-09-15 17:35:15 +02:00
lilleman ef00000436 Tests: a type's records are capped at 1024, a lone reference is found through padding and a format-only object, null clears a preset pointer, and errors repeat per call 2026-09-15 17:35:04 +02:00
lilleman bbe6c5b1d9 Fold the range check into columnKind.past, refuse a leading / in IsTemplate, reserve the name -, and document fake:"-" on an embedded struct
Tests / vet + fmt + tests (pull_request) Successful in 1m1s
2026-09-15 17:11:20 +02:00
lilleman 7cb6928995 Tests: fake:"-" leaves an embedded struct unfilled, a leading / is refused naming the path, and a name may not be - 2026-09-15 17:11:10 +02:00
lilleman e6bd4c5972 Fill embedded fields into their struct's record, add fake:"-", round integer ranges inward naming a wider kind, and refuse a lone reference in IsTemplate
Tests / vet + fmt + tests (pull_request) Successful in 1m2s
2026-09-15 16:54:04 +02:00
lilleman a548abcc02 Tests: embedded fields join their struct's record, fake:"-" leaves a struct unfilled, integer ranges round inward, and a lone reference is refused as a path 2026-09-15 16:53:56 +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 d4ff3b242e Tests: FakeStruct fills tagged fields as one record, draws a nested struct apart, refuses a tag its field cannot hold, and compiles a type once 2026-09-15 16:23:00 +02:00
lilleman 88143153ed Read a signed zero off the mantissa, and drop the comment on the unused Pow
Tests / vet + fmt + tests (pull_request) Successful in 1m1s
Tests / vet + fmt + tests (push) Successful in 6s
2026-09-15 15:17:38 +02:00
lilleman 08949eb72c Tests: CSV quotes a COPY marker, a leading space and a bare CR, and a sub-float literal is no signed zero 2026-09-15 15:17:33 +02:00
lilleman 3e7127da71 Parse a divisor's rounding half exactly, print zero unsigned, name int64 refusals, and quote CSV fields without a writer
Tests / vet + fmt + tests (pull_request) Successful in 1m0s
2026-09-15 15:08:26 +02:00
lilleman 1ad9418a76 Tests: a printed zero is no divisor and prints unsigned, int64 refusals say so, and CSVLine allocates twice 2026-09-15 15:08:14 +02:00
lilleman 8ca887aa7d Name digits among an operand's spellings, and document number by what its text is
Tests / vet + fmt + tests (pull_request) Successful in 1m0s
2026-09-15 14:39:25 +02:00