fix(ci): retain trace coverage limits after integration

Restore explicit unverified symlink aliases and same-Node stat/status purpose in the shared coverage contract and guide. The native-exit and trace-attribution integration does not establish those properties. Preserve both limitations rather than silently broadening the reported qualification.

Assisted-by: Reimu (gensokyo-skills:reimu-incident-triage)
This commit is contained in:
gensokyo-dev
2026-10-19 17:46:06 +00:00
parent 3de261cc5e
commit 33450d02ea
2 changed files with 7 additions and 3 deletions
+5 -3
View File
@@ -109,14 +109,16 @@ owned live sentinel. An observed Node thread group must launch the exact ownersh
`ps` inventory before it can read that live process's `stat` or `status` for native
identity/UID facts. Only traced `CLONE_THREAD` members share this allowance;
exec-replaced threads, ordinary children, debugger and decoder processes cannot
use it. A second recording uses a valid
use it. The purpose of stat/status reads within the same Node thread group
cannot be distinguished by strace. A second recording uses a valid
historical PID above the host's assignable PID range and rejects resolved lookups,
including Node `stat`/`status` reads, to detect historical-PID-driven access separately
from live inventory. Descriptor paths come from strace's `-yy` decoding; exact
PID-directory opens and relative accesses through those handles are rejected.
Failed FD-relative pathname attempts are checked across syscall variants.
Legacy relative pathname calls without dirfd/cwd evidence remain unverified;
the verification report declares this gap rather than establishing their absence.
Legacy relative pathname calls without dirfd/cwd evidence and symlink aliases
remain unverified; the verification report declares these gaps rather than
establishing their absence.
One syscall/selector contract supplies trace selection, target interpretation
and the report's explicit coverage catalog. Unlisted PID-directed syscalls remain
unverified. The catalog includes PID-directed resource
@@ -47,6 +47,8 @@ export const historicalPidTraceContract = Object.freeze({
pid_syscalls: Object.freeze([...pidTargetKinds.keys()]),
unverified: Object.freeze([
"legacy-cwd-relative-paths",
"symlink-path-aliases",
"same-node-thread-stat-status-purpose",
"other-pid-directed-syscalls",
]),
});