Skip to content

v0.15.0 — D5 isolation hardening

Choose a tag to compare

@ywatanabe1989 ywatanabe1989 released this 14 May 00:04
· 699 commits to main since this release

Summary

D5 isolation hardening cycle:

  • Canonical container HOME = /home/agent (auto-injected via --home), operator-independent and attestable.
  • ApptainerSpec.fakeroot opt-in (userns root inside container; host uid unchanged).
  • Static D5 preflight: uid != 0 (or userns-fakeroot via /proc/self/uid_map) + $HOME == /home/agent.
  • _apptainer_iso_flags helper centralises the auto-prepend logic (containall / cleanenv / writable-tmpfs / home / fakeroot).
  • credentials.json bind → /tmp/sac-claude/ + CLAUDE_CONFIG_DIR so SDK auth resolves without $HOME pollution.
  • Bind destination validation — parser rejects ~/$VAR/relative with a clear error.
  • sac-base.sif rebuild — ubuntu → agent at UID 1000 (whoami=agent).
  • ADR relocated to docs/adr/0001-isolation-hardening.md with D5 + network addenda.
  • docs/isolation.md + docs/spec-reference.md + full-agent example all refreshed.
  • CI fix: awk regex in publish-pypi.yml release-notes extraction (was over-escaped).

Install: pip install scitex-agent-container==0.15.0