Crafter.Graphics/.review-gates/lenses/repo-facts.md

35 lines
2.1 KiB
Markdown

## This repository: Crafter.Graphics
- A claim that a tree passes the test suite, builds for a target, links
`Win32Link`, builds an example or passes `node --check` traces to the
Gate 0 log among the evidence paths INPUTS names: each command with its
exit code and the sha it ran at. A test the log shows as skipped, by
exit 77 or a missing tool, is not a pass. A claim of a run anywhere else
(the aarch64 phone target, the Win32 tests under Wine, a named GPU or
driver version, a browser, Deno's WebGPU, an example run by hand, a
frame judged by eye) traces to a capture of that run that names the
commit, or is unverifiable.
- A validation claim ("clean under the validation layer", "no validation
errors") holds only for a run in which the layer loaded. Read
`Device::Initialize` at HEAD for what a run with
`CRAFTER_GRAPHICS_VALIDATION` set does when `VK_LAYER_KHRONOS_validation`
is not installed: where it creates the instance without the layer and
says nothing, every validation check passes with nothing seen, and since
crafter-build prints only the name and time of a passing test, the Gate
0 log alone does not show that the layer ran.
- A test a message names exists as a `LibraryTest("<Name>")` in
`project.cpp` and a `tests/<Name>/main.cpp` whose checks pin what the
message says.
- `AGENTS.md` is generated from `AGENTS.template.md` and the dependencies'
`AGENTS.consumer.md` and is not in the tree: a claim about it is checked
against those sources. `AGENTS.consumer.md` reaches consumers' agents on
their next build: every sentence in it is a claim about the code at the
commit that writes it.
- A statement of where a driver stands (the NVIDIA notes in `README.md`,
`examples/VulkanTriangle/README.md`, `examples/Sponza/README.md` and the
guide's gotchas) names the driver version and traces to a run of the
probe on it (`HeapASRead --no-workaround`, `HeapDynamicIndexHit`), or is
unverifiable.
- A size or layout claim about a struct the GPU reads is checked against
the `static_assert` beside the C++ struct, the `std430` block in
`shaders/ui-shared.glsl` and the WGSL in `additional/dom-webgpu.js`.