docs: initial FORMAT.md#135
Conversation
There was a problem hiding this comment.
Author was insistent that this is not a troll attempt despite being apparently unredacted LLM output; reviewing this as I would review any contributor's code (and as I'd have expected the author to review his tool's output before PR'ing).
I'm not fact-checking the concrete edits (eg. I don't know if the tool can be invoked on a single file too), I'm focusing on docs writing here, and trust that you probably know those by heart anyway.
[edit: fat-fingered submission; reviews coming in in a following run]
chrysn
left a comment
There was a problem hiding this comment.
Not related to any particular point in the text:
How is this supposed to be updated? Many properties stem from the code, that is simply lacking documentation. Once that code receives sensible documentation, this will be outdated.
| All `.yaml` files in a directory are collected recursively, sorted | ||
| alphabetically, and deep-merged into a single document before parsing. This | ||
| allows splitting configuration across files — e.g., one file for chip lists, | ||
| another per board. |
There was a problem hiding this comment.
| All `.yaml` files in a directory are collected recursively, sorted | |
| alphabetically, and deep-merged into a single document before parsing. This | |
| allows splitting configuration across files — e.g., one file for chip lists, | |
| another per board. | |
| The `sbd-gen` tool is invoked on a single file or a directory. All given `.yaml` files are | |
| deep-merged into a single document before parsing. This | |
| allows splitting configuration across files — e.g., one file for chip lists, | |
| another per board. |
Alphabetical sorting is irrelevant unless deep-merge strategy is that later-overwrites-earlier. What is the deep-merge strategy anyway?
There was a problem hiding this comment.
deep-merge strategy is:
a) maps are merged
b) later overwrites earlier for everything else.
will add that.
| | `version` | no | `0.2.0` | Schema version (semver). | | ||
| | `description` | no | | Human-readable description. | | ||
| | `include` | no | | List of include directives. | | ||
| | `targets` | no | | Map of target name to target definition. | |
There was a problem hiding this comment.
The concept of targets is better introduced at the start; so far, all this has been talking of boards.
ROMemories
left a comment
There was a problem hiding this comment.
I also want to add that a separate Markdown file is not how this should be documented anyway, most of this should be in the rustdoc docs of the sbd-gen-schema crate (as started in #68). This does not technically preclude also having separate Markdown documentation, but we should first have rustdoc docs. (Also if some new Markdown files are introduced, they need to be added into the include keys of the relevant package(s), so they are shipped with them.)
|
@kaspar030 and I had a personal chat where we converged, and I'd summarize it as follows (and please correct me if I misrepresent anything):
A proposed way forward is:
|
|
Ah, and w/rt my many review comments: I think they've illustrated the point that this LLM output is not the quality level we expect, and we do agree there. As this file will rather be rebuilt than iterated on, the comments can be dismissed when the new disclaimer in the file is added. (Or if you feel like it, let the model ingest them into a newer version – I won't drive those things, but my comments are contributions to the Ariel project, so feel free to tell it to gobble them up). They might be useful when we do later do full (rustdoc based) documentation, but most of them are probably about issues we won't have there anyway. |
c2576fd to
6bec4db
Compare
|
I addressed most suggestions, and I think it is OK now for what it is. |
Signed-off-by: Kaspar Schleiser <kaspar@schleiser.de>
This is Opus 4.6 tasked with "document the file format".
As far as I can tell, the documentation is correct.