Skip to content

fix(host): contain discovered session transcripts#134

Merged
iarbpairs merged 1 commit into
LycaonLLC:mainfrom
riverpilot:fix/pr-98-session-containment
Jul 21, 2026
Merged

fix(host): contain discovered session transcripts#134
iarbpairs merged 1 commit into
LycaonLLC:mainfrom
riverpilot:fix/pr-98-session-containment

Conversation

@riverpilot

Copy link
Copy Markdown
Contributor

Summary

  • reject symlinked transcript entries during filesystem discovery
  • enforce canonical containment beneath the configured session root
  • replace the previous symlink-alias test with internal and external escape coverage

Addresses the security blocker found while reviewing #98. The original compatibility implementation is superseded by current main's official authority mode.

Screenshots

No visual change.

Testing

  • pnpm --filter @t4-code/host-service typecheck
  • pnpm --filter @t4-code/host-service test (330 passed)
  • focused lint on changed files

Risk

  • Existing symlinked transcript aliases are intentionally no longer discovered.

Notes

AI Review Report

Security Audit

  • Blocks transcript disclosure through symlinks escaping --session-root.

@riverpilot
riverpilot force-pushed the fix/pr-98-session-containment branch from 9148831 to a2c26a6 Compare July 21, 2026 16:54
@iarbpairs
iarbpairs merged commit e7a9c12 into LycaonLLC:main Jul 21, 2026
11 checks passed
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.

2 participants