# repo22 Final Review Independent Manual Regression Execution window: 2026-08-09 18:04-18:29 UTC Source baseline: `fcc85b93d5f8fd9671686bd68bf3b086c8bd25cf` Scope: TC157-TC161, final dual-configuration build and mount smoke, TC111 coverage-matrix follow-up, and resource hygiene. No CI runner or automated kernel-test harness was used. ## Result All five assigned test cases passed. | Test ID | Status | Manual evidence | | --- | --- | --- | | TC157 | PASS | Six 16/32-byte descending, duplicate, and cross-branch tables returned positive `EINTEGRITY`; repeated lookup agreed; a raw offset-4096 control was observable while failed lookups produced no payload read. | | TC158 | PASS | A 17,592,186,056,704-byte sparse provider produced direct and file-handle `st_blocks=34359738384`; two FBT returns recorded `va_bytes=17592186052608`; the file remained readable. | | TC159 | PASS | FIFO size-only setattr returned 0; size plus mode, owner, times, and all fields returned `EROFS(30)`; metadata remained `10640:0:0:0:0`. | | TC160 | PASS | Both `OFF_MAX` and zero-offset `getdirentries` calls returned `EINTEGRITY(97)` and preserved their offsets; independent truss SHA256 was `6df9c594bfba8aaf849fa7105fda09a5cab99d79f04c42901a438321c90700e0`. | | TC161 | PASS | Both normal configurations built, the private `nm` shim failed before publication without a SUCCESS line or temporary file, the previous KLD hash stayed unchanged, and a final normal build used `/usr/bin/nm` and exited 0. | The TC157 fixtures do not cover a first nonzero `lstart` or an extreme extent-count performance boundary. These are residual coverage limits, not observed failures. Positive mapped-payload coverage remains the separate TC146 PARTIAL issue. ## Exact Inputs The source archive exported from the baseline had SHA256 `a0c330601f9d7b2aa246a17e67bcd67914d457480cb69df025d09bc34d8b7b31`. The independent fixture archive had SHA256 `bf8ab5430f06dfc067f041002cc7861b0b110dc00d9c447a82877f21b67b09ed`. Its manifest and evidence hashes were `b880be5d214985e6a7f75cc77fea333f046a30963a9d310d57a6cdc67104e740` and `ace71446671b3d17e6a46997f43fc605a7a6bb5993c9de0e6e12cd223746b317`. The fixture evidence recorded: - complete TC157 logical-start arrays and old binary-search visit indices; - TC158 `blocks_lo=2`, `blocks_hi=1`, and 4,294,967,298 data blocks; - TC159 compact FIFO mode `010640`; - TC160 `i_size=9223372036854775807` and expected errno 97. ## TC161 Build Qualification The shim log SHA256 was `a1a83797ba2c0111b66bb8783f3a67087420ef7a9bccc93fd42fb94c9c24c593`. It contained `ERROR: nm failed while checking erofs.ko`, no SUCCESS line, and left no `nm-undef.*` file. The post-shim status file recorded `exit=0` and `nm=/usr/bin/nm`; its build log SHA256 was `5ce2519a85de7a4846f95fdb858fd7818182aad3fa55a7ea8d06cf7687143f11`. The post-shim build used an explicit normal path and environment: ```sh env PATH=/usr/bin:/bin:/usr/sbin:/sbin \ FREEBSD_SRC=/tmp/repo22-freebsd15-src \ WITH_ZSTDIO=0 ./build.sh ``` Its key log lines were `==> Building repo22 erofs.ko` and `==> SUCCESS: .../build/erofs.ko`. Final exact-source builds used FreeBSD 15 kernel `-Werror`: | Configuration | KLD SHA256 | Result | | --- | --- | --- | | `WITH_ZSTDIO=0` | `15fda9d334132cd81769ce4dff4f8411a6e2b4cf7531c352530d0de85f42a2d2` | PASS | | `WITH_ZSTDIO=1` | `23782dc0ce7da188807d35020bf2d8c6044b796c5c9a8746b398ba784cd6ad4e` | PASS | The final ZSTD build log SHA256 was `e58bc73d1b0b8295d8baba0cf0ce07bf4e9c994837e65c7ccdd731dc91edb283`. ## Final Module Smoke and Cleanup Each final KLD loaded independently, mounted `special-setattr.erofs` through a fresh vnode md provider, exposed the expected FIFO, unmounted, detached the md unit, and unloaded. The smoke log SHA256 was `7ced7329da9f39527cf903213dee4c99dbe6d8d6fa96e55bca3427c4f4a56420`. Final guest state was: ```text residual-mount-count=0 residual-md= residual-kld-count=0 smoke-exit=0 ``` The host repo22 ignored `build/`, old ignored generated fixture/artifact trees, and `__pycache__` content were removed before aggregation. No generated KLD, object, image, or Python bytecode is acceptance evidence in Git. ## TC111 Coverage-Matrix Follow-up A bounded filename audit found 162 specifications, TC000 through TC161, with 162 unique IDs, no duplicate, and no missing ID. TC000 is a template and is not counted as executable. The eight canonical G1-G8 report tables contained exactly 156 rows and 156 unique IDs covering TC001-TC156, with no duplicate or omission. TC157-TC161 add five unique executable cases. TC060's original G3 failure is superseded by its dated fixed-source PASS report; TC153's G3 result is PASS. The canonical final result is therefore: ```text Executable test cases: 161 PASS: 160 PARTIAL: 1 (TC146) FAIL/KERNEL-FAIL/ENV/SHELVED_TC: 0 ``` TC146's shelved positive mapped-payload subitem is not counted as an additional test case. G1-G8 evidence was collected across multiple source commits; this report does not claim that every historical test ran on the final KLD. The final `fcc85b93d` code baseline received the independent TC157-TC161 checks and the affected final build/load/mount regressions recorded here.