fix(parsers): retain independent facts and boundary identity

Share bounded ELF section-name decoding across native and note readers; retain read-only ranges and coverage reasons when names are unknown. Preserve ELF symbol-version bytes, dyld-bound method uncertainty, partial gRPC-Web trailers, and per-parent model identity checks. Compare GPU signatures as bytes and require a PTX module header. Share selected-path errno classification across EVM and BEAM.

Validation: 397 shared-parser tests passed (one existing skip), 5 MCP schema tests passed, 14 EVM error-mapping tests passed, and 23 protobuf CLI/MCP matrix cases passed across focused runs. Build, typecheck/lint, docs, formatting, and 2134-file discovery passed. Full EVM provider workflow remains locally unverified on Darwin arm64; format controls are synthetic.

Fixes #6738
Fixes #6737
Fixes #6745
Fixes #6740
Fixes #6749
Fixes #6747
Fixes #6739
This commit is contained in:
morluto
2026-10-23 22:18:43 +08:00
parent a68cfd7db0
commit 99d2d7ad22
45 changed files with 1209 additions and 176 deletions
+7 -3
View File
@@ -36,9 +36,11 @@ HIP bundle recognition accepts both the legacy `amdgcn` triple and LLVM's
`amdgpu` subarchitecture triples, including declared generic processors such
as `gfx11-generic` and `gfx9-4-generic`. CUDA's legacy fatbinary compression
flag is retained as an unsupported codec with its encoded and decoded extents;
compressed bytes are not treated as PTX text. CCOB v1 has no stored total size,
so a following legacy bundle is located by the next `CCOB` signature and
zero-byte alignment padding remains part of the first container extent.
compressed bytes are not treated as PTX text. CCOB is recognized by the exact
four signature bytes `CCOB`; high-bit-corrupted bytes are not decoded as ASCII
and accepted as a bundle. CCOB v1 has no stored total size, so a following
legacy bundle is located by the next `CCOB` signature and zero-byte alignment
padding remains part of the first container extent.
`cuda_target_header` retains the OS ABI, normalized raw `e_flags` and exact
header location. CUDA OS ABI `0x33` and the observed `0x41` flags layout use
@@ -191,3 +193,5 @@ failures preserve earlier successfully parsed declarations and the original
failure reason. Standalone PTX recognition tries a small header first, then
continues within the existing 16 MiB text budget when leading comments or
whitespace obscure its directives; admitted full-file probe bytes are reused.
After those comments and whitespace, `.version` must be the first PTX module
token; later PTX-looking text does not identify an arbitrary binary as PTX.