docs(vt): record extraction verification evidence
- commit
- 73defd02d7b40011a1fcf2628737dff68623dd62
- author
- brice · · 2026-08-09 11:52 UTC
- committer
- brice · · 2026-08-10 05:16 UTC
- parent
- 2df2067
- signature
- GPG Verified
CD88F9E564E0102646FB6077A1A07C7C7C3E349D· arch-gpg Verified for the committer email
2 files · +45 -1
M docs/vt-extraction-preparation.md +1 -1
| @@ -1,7 +1,7 @@ | |||
| 1 | 1 | # VT extraction preparation checkpoint | |
| 2 | 2 | ||
| 3 | 3 | The standalone module owns the frontend-neutral VT engine and ANSI renderer; | |
| 4 | - | vev consumes the released `github.com/bnema/vev-vt v0.1.0` module. VT behavior, | |
| 4 | + | vev consumes the released `github.com/bnema/vev-vt v0.2.1` module. VT behavior, | |
| 5 | 5 | renderer output, wire bytes, transport, ACK/rebase, and cursor-tail policy remain | |
| 6 | 6 | unchanged. | |
| 7 | 7 | ||
| @@ -1,7 +1,7 @@ | |||||
| 1 | # VT extraction preparation checkpoint | 1 | # VT extraction preparation checkpoint | ||
| 2 | 2 | ||||
| 3 | The standalone module owns the frontend-neutral VT engine and ANSI renderer; | 3 | The standalone module owns the frontend-neutral VT engine and ANSI renderer; | ||
| 4 | - | vev consumes the released `github.com/bnema/vev-vt v0.1.0` module. VT behavior, | 4 | + | vev consumes the released `github.com/bnema/vev-vt v0.2.1` module. VT behavior, |
| 5 | renderer output, wire bytes, transport, ACK/rebase, and cursor-tail policy remain | 5 | renderer output, wire bytes, transport, ACK/rebase, and cursor-tail policy remain | ||
| 6 | unchanged. | 6 | unchanged. | ||
| 7 | 7 | ||||
A docs/vt-extraction-verification.md +44 -0
| @@ -0,0 +1,44 @@ | |||
| 1 | + | # VT extraction verification evidence | |
| 2 | + | ||
| 3 | + | ## Release | |
| 4 | + | ||
| 5 | + | - Module: `github.com/bnema/vev-vt v0.2.1` | |
| 6 | + | - Module checksum: `h1:sb5XWVVIgiYd82KSYb3gHvkHVt9r5oRoEK0hqO1B+Aw=` | |
| 7 | + | - Go module checksum: `h1:QdV0QI7vUnlAF+7+CiPhThHDpDSkxMEZmCYl/Eo+xCA=` | |
| 8 | + | - Standalone release commit: `7bd1a3c4` | |
| 9 | + | - vev cutover commit: `df9964b7` | |
| 10 | + | ||
| 11 | + | ## Acceptance evidence | |
| 12 | + | ||
| 13 | + | - vev: `make test`, `make lint`, `go mod verify`, and clean-checkout module | |
| 14 | + | resolution pass without a `replace` directive. | |
| 15 | + | - Standalone module: tests, race tests, `go vet`, `golangci-lint`, external | |
| 16 | + | consumer smoke, import-boundary checks, and signed release tag pass. | |
| 17 | + | - Fuzz smoke passes for VT input, ANSI rendering, VTH3 decoding, and VEVS v4 | |
| 18 | + | restore decoding. Seeds include escape sequences, Unicode, clipboard input, | |
| 19 | + | malformed history, and the VEVS restore golden. | |
| 20 | + | - VTH3 and VEVS fixtures remain byte-compatible. VEVS framing and session policy | |
| 21 | + | remain vev-owned. | |
| 22 | + | - History/codec benchmark allocations and bytes are unchanged in the selected | |
| 23 | + | pre/post comparison. Representative daemon frame benchmarks remained within | |
| 24 | + | normal run variance; no output-byte regression was observed. | |
| 25 | + | ||
| 26 | + | ## Diff classification | |
| 27 | + | ||
| 28 | + | - **Extraction:** standalone module release, vev module dependency cutover, and | |
| 29 | + | removal of the in-repository VT/core/ANSI owners. | |
| 30 | + | - **Tests and fixtures:** external ownership contracts, VTH3 golden vectors, | |
| 31 | + | VEVS restore fixtures, and fuzz smoke coverage. | |
| 32 | + | - **Documentation:** ownership, callback, borrowing, release, and verification | |
| 33 | + | records. | |
| 34 | + | - **CI:** standalone formatting, lint, race, fuzz, benchmark, and consumer jobs. | |
| 35 | + | ||
| 36 | + | ## Risks and follow-up | |
| 37 | + | ||
| 38 | + | - A broad baseline run including `BenchmarkScreenResizeReflowViewport` still | |
| 39 | + | exposes the pre-existing `invalid history row ID` benchmark panic. The | |
| 40 | + | selected extraction comparison excludes that benchmark rather than masking it. | |
| 41 | + | - There is no dedicated standalone `RuneWidth` benchmark; width behavior is | |
| 42 | + | covered by public contract tests and the screen/parser benchmark suite. | |
| 43 | + | - The outer VEVS codec intentionally remains in vev and must not move into the | |
| 44 | + | standalone module. | |
| @@ -0,0 +1,44 @@ | |||||
| 1 | + | # VT extraction verification evidence | |||
| 2 | + | ||||
| 3 | + | ## Release | |||
| 4 | + | ||||
| 5 | + | - Module: `github.com/bnema/vev-vt v0.2.1` | |||
| 6 | + | - Module checksum: `h1:sb5XWVVIgiYd82KSYb3gHvkHVt9r5oRoEK0hqO1B+Aw=` | |||
| 7 | + | - Go module checksum: `h1:QdV0QI7vUnlAF+7+CiPhThHDpDSkxMEZmCYl/Eo+xCA=` | |||
| 8 | + | - Standalone release commit: `7bd1a3c4` | |||
| 9 | + | - vev cutover commit: `df9964b7` | |||
| 10 | + | ||||
| 11 | + | ## Acceptance evidence | |||
| 12 | + | ||||
| 13 | + | - vev: `make test`, `make lint`, `go mod verify`, and clean-checkout module | |||
| 14 | + | resolution pass without a `replace` directive. | |||
| 15 | + | - Standalone module: tests, race tests, `go vet`, `golangci-lint`, external | |||
| 16 | + | consumer smoke, import-boundary checks, and signed release tag pass. | |||
| 17 | + | - Fuzz smoke passes for VT input, ANSI rendering, VTH3 decoding, and VEVS v4 | |||
| 18 | + | restore decoding. Seeds include escape sequences, Unicode, clipboard input, | |||
| 19 | + | malformed history, and the VEVS restore golden. | |||
| 20 | + | - VTH3 and VEVS fixtures remain byte-compatible. VEVS framing and session policy | |||
| 21 | + | remain vev-owned. | |||
| 22 | + | - History/codec benchmark allocations and bytes are unchanged in the selected | |||
| 23 | + | pre/post comparison. Representative daemon frame benchmarks remained within | |||
| 24 | + | normal run variance; no output-byte regression was observed. | |||
| 25 | + | ||||
| 26 | + | ## Diff classification | |||
| 27 | + | ||||
| 28 | + | - **Extraction:** standalone module release, vev module dependency cutover, and | |||
| 29 | + | removal of the in-repository VT/core/ANSI owners. | |||
| 30 | + | - **Tests and fixtures:** external ownership contracts, VTH3 golden vectors, | |||
| 31 | + | VEVS restore fixtures, and fuzz smoke coverage. | |||
| 32 | + | - **Documentation:** ownership, callback, borrowing, release, and verification | |||
| 33 | + | records. | |||
| 34 | + | - **CI:** standalone formatting, lint, race, fuzz, benchmark, and consumer jobs. | |||
| 35 | + | ||||
| 36 | + | ## Risks and follow-up | |||
| 37 | + | ||||
| 38 | + | - A broad baseline run including `BenchmarkScreenResizeReflowViewport` still | |||
| 39 | + | exposes the pre-existing `invalid history row ID` benchmark panic. The | |||
| 40 | + | selected extraction comparison excludes that benchmark rather than masking it. | |||
| 41 | + | - There is no dedicated standalone `RuneWidth` benchmark; width behavior is | |||
| 42 | + | covered by public contract tests and the screen/parser benchmark suite. | |||
| 43 | + | - The outer VEVS codec intentionally remains in vev and must not move into the | |||
| 44 | + | standalone module. | |||