v1.6.0
What's changed
f53a1a2 Merge pull request #2 from jverhoeks/release/v1.6.0
60868a6 chore: build binaries for v1.6.0
333592c docs: rewrite routing section — four-layer interception model with escrow-cli commands
19ef389 feat(config): write-shell / check-shell / restore-shell — zshrc/bashrc env block with source activation hint
e870a4b fix(env): user LaunchAgent instead of system LaunchDaemon (SIP blocks setenv in system domain); quote shell values
b5647d1 feat(config): write-env / check-env / restore-env — LaunchDaemon (macOS) and profile.d (Linux) injection
4309024 feat(config check-local): show all tools with honest N/A for pip, poetry, go, maven, gradle
f4dca2a feat(config): expand tool coverage — yarn v1/v2+, bun, poetry, gradle
cbd9c63 docs: Swift companion app spec — NETransparentProxyProvider, XPC, menu bar UI
673552b docs: markdown blog post with slug and frontmatter
bba0e90 docs: supply chain interception blog post
744fe45 fix(fw): restore inet6 block rules for hosts with AAAA records; skip for IPv4-only hosts
18d9f92 fix(status): detect ecosystems from anchor file, not pfctl nat output (which shows IPs)
6dfb236 fix(fw-test/status): query pfctl -s nat for rdr rules (not -s rules which shows filter only)
271acce fix(setup): create _escrow via dscl local node (not sysadminctl OD); fix lookupUID to match
c67f270 fix(fw): use id -u for UID lookup — os/user misses Open Directory accounts when CGO disabled
a2e2dd4 fix(fw): use numeric UID in pf pass rules; drop inet6 block rules; add fw-test command
5020dcf fix(setup): clear anchor before pfctl -f to avoid stale user/rule errors
90a4ece fix(setup): sysadminctl path /usr/sbin/; add --dry-run flag
Full changelog: v1.5.7...v1.6.0