Skip to content

Fix portable Linux collection, bounded execution, and lossless AI context size - #3

Merged
avds2 merged 4 commits into
mainfrom
fix/portable-fast-compact-context
Oct 2, 2026
Merged

avds2 merged 4 commits into
mainfrom
fix/portable-fast-compact-context

Conversation

@avds2

@avds2 avds2 commented Oct 1, 2026 •

Copy link
Copy Markdown
Owner

What changed

Correct false host observations (Debian residual packages, absent container modules, installed versus running managers, wildcard socket families, IPv6 and coexisting firewall state), add portable Python timeout/UID-GID and metadata/statvfs/procfs paths, and stop nested collector process trees before returning from a watchdog.

Batch collector metadata/staging/checksums and final redaction/validation/AI/scan/manifest work. Lossless AI encoding v2 interns endpoints, labels, provenance and repeated observations, preserves boolean/number types and conflicts, and retains v1 decoding/canonical v5. Final sanitized byte sizes and graph integrity are checked before publication.

Validation

  • make check: all 31 regression scripts passed locally.
  • All four profiles passed archive/manifest/AI round-trip/privacy smoke checks.
  • Exact supplied sample: canonical 114,586 B → previous AI 96,592 B → new AI 74,134 B (35.3% below canonical; 23.3% below prior AI). No sample contents are committed.
  • Five alternating before/after pairs in the same Ubuntu container, --no-archive: median quick 1.656 → 0.952 s; standard 1.497 → 1.232 s; max 1.750 → 1.681 s. These are local measurements; actual token savings and universal distro compatibility are not claimed.
  • CI run 36925555605: all seven jobs passed on Python 3.9/3.11/3.13 and Debian 12/Fedora 43/Arch/Alpine 3.22. Every distribution ran all 31 regression scripts and all-profile archive/manifest/AI/privacy smoke checks. Alpine retains BusyBox timeout/find/stat/mv/setpriv; owner handoff uses Python when setpriv lacks UID/GID options.

The local namespace maps only UID 0; CI verified real sudo owner handoff to UID/GID 65534, including the Python fallback on Alpine. Containers validate userland compatibility, not every live init manager, hardware/desktop daemon or distribution-specific inventory. Gentoo/Nix/Slackware package inventories are outside this change. Docker fixtures inject only the socket filesystem predicate without contacting a host daemon.

See docs/AUDIT.md for findings, measurement scope and limits.

@avds2
avds2 marked this pull request as ready for review October 1, 2026 21:01
@avds2
avds2 merged commit 1b513b8 into main Oct 2, 2026
7 checks passed
@avds2
avds2 deleted the fix/portable-fast-compact-context branch October 2, 2026 17:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant