feat: complete fastn-p2p streaming API and remote shell functionality #2210
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Main Tracking PR - Complete implementation plan for fastn-p2p streaming API and remote shell functionality (rshell/rexec). This PR tracks the complete plan originally outlined in PR #2202, building on the fastn-context foundation from PR #2203.
This feature will be built incrementally through focused, reviewable PRs for better development and review process.
🎯 Complete Implementation Plan
Phase 1: Basic fastn-context (Minimal) ✅ Completed
Phase 2: fastn-p2p Streaming API 🚧 API Stubs Only
Phase 2a: Implement Core Streaming ⏳ Next - Must Do
Phase 3: Implement Multi-Stream Support ⏳ After 2a
Phase 4: Test and Validate ⏳ After 3
Phase 5: Remote Shell Integration ⏳ After 4
Phase 6: Codebase Migration ⏳ Critical
🔗 Related PRs
🎯 Success Criteria
🚨 Current Reality
PR #2208 Status: API stubs with 7 TODOs
client::connect()-todo!()client::Sessioncontext - commented outSession::accept_uni/bi()-todo!()Session::into_request()-todo!()Session::open_uni/bi()-todo!()Next: Implement Phase 2a to make these functions actually work.
🔧 Development Strategy
This feature branch approach provides:
Goal: Working remote shell over P2P with minimal API surface, built through reviewable increments, with zero breaking changes to existing code.
🤖 Generated with Claude Code