Skip to content

📝 docs(portwing): document edge exec protocol, trigger limits, and sockguard pairing - #638

Merged
scttbnsn merged 2 commits into
dev/v1.6from
docs/v1.6-portwing-edge-gaps
Jul 29, 2026
Merged

📝 docs(portwing): document edge exec protocol, trigger limits, and sockguard pairing#638
scttbnsn merged 2 commits into
dev/v1.6from
docs/v1.6-portwing-edge-gaps

Conversation

@scttbnsn

@scttbnsn scttbnsn commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Docs-only. Closes the drydock-side gaps from the 2026-07-28 tri-tool docs audit:

  • api/portwing.mdx: new exec protocol section (exec_* frames incl. exec_end reason) — documented as an agent-implementer protocol reference; v1.6 ships no user-facing exec surface
  • configuration/agents/index.mdx: explicit callout + Features-table exception that update-triggers are not supported over Edge Mode
  • configuration/agents/index.mdx: Edge compose example now points at the sockguard tri-tool bundle instead of implying a raw socket bind mount is fine
  • guides/security/index.mdx: mention the portwing-with-exec.yaml preset and sockguard-enforced exec policy
  • faq/index.mdx: entries for the Edge update-trigger limitation and Ed25519 key rotation/revocation

Related issues found in the same audit: #635, #636, #637.

✨ Added:

  • Portwing Edge “exec session protocol” docs (WebSocket multiplexing) covering exec_start, exec_ready, exec_output, exec_input, exec_resize, and exec_end (including termination/reason handling) plus the per-edge-connections concurrency cap (MAX_EXEC_SESSIONS=100) and “implementers only” scope.
  • FAQ entries for Edge update-trigger limitations and Ed25519 key rotation/revocation for edge agents.

🔧 Changed:

  • Clarified that v1.6 exposes no user-facing Edge exec surface/API.
  • Documented that Edge Mode does not proxy docker/dockercompose update triggers (and that related UI/action behavior may be missing or a no-op in v1.6), with guidance to configure update triggers on standard inbound HTTP agents instead.
  • Updated Edge-agent (Portwing) Docker Compose example guidance to use Sockguard-style isolation (tri-tool bundle usage) and added explicit warnings about Docker socket mount security.
  • Added/expanded documentation on exec-preset activation.

🔒 Security:

  • Added security guidance for portwing-with-exec.yaml and emphasized that exec authorization (privilege/root escalation and per-command allowlisting) is enforced by Sockguard’s exec policy, not Drydock.

  • Warned that :ro on the Docker socket bind-mount is not an API boundary.

  • Verify the documented exec protocol details (frame shapes, exec_end reasons) and MAX_EXEC_SESSIONS=100 match the implementation.

  • Confirm exec-preset activation behavior is accurately documented and aligns with the shipped presets/config.

  • Confirm the Ed25519 key rotation/revocation steps and referenced API workflow are correct.

  • Ensure Edge update-trigger limitations are consistent across all affected docs and examples.

  • Re-check Sockguard/tri-tool bundle compose guidance and that the :ro “not an API boundary” warning is unambiguous.

@vercel

vercel Bot commented Jul 29, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
drydock-website Ready Ready Preview, Comment Jul 29, 2026 3:03am
drydockdemo-website Ready Ready Preview, Comment Jul 29, 2026 3:03am

@coderabbitai

coderabbitai Bot commented Jul 29, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 322f16d7-dc28-4265-92a9-b113cc11f3fb

📥 Commits

Reviewing files that changed from the base of the PR and between 1616af7 and eb2f3f3.

📒 Files selected for processing (2)
  • content/docs/current/configuration/agents/index.mdx
  • content/docs/current/guides/security/index.mdx
🚧 Files skipped from review as they are similar to previous changes (2)
  • content/docs/current/guides/security/index.mdx
  • content/docs/current/configuration/agents/index.mdx

📝 Walkthrough

Walkthrough

Updated Portwing Edge documentation with an implementer-focused WebSocket exec session protocol, including frame types and per-connection concurrency limits. Added sockguard guidance for exec authorization and raw Docker socket isolation. Clarified that Edge Mode does not proxy Docker update triggers. Added FAQ guidance for unsupported update actions and edge-agent key rotation or revocation.

🚥 Pre-merge checks | ✅ 2
✅ Passed checks (2 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/v1.6-portwing-edge-gaps

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@content/docs/current/configuration/agents/index.mdx`:
- Line 56: The Docker socket warning should explicitly state that the :ro mount
protects only the socket file, not Docker Engine API operations. Update the
Callout near the raw socket example to include this warning, and present the
sockguard-fronted compose stack as the primary production recommendation rather
than a secondary reference.

In `@content/docs/current/guides/security/index.mdx`:
- Around line 96-97: Update the security guide’s exec preset documentation to
instruct operators to replace or merge the mounted sockguard configuration with
portwing-with-exec.yaml, using the actual configuration contract and paths.
State that the default configuration denies exec and that the preset’s rules
must be enabled for remote exec, while preserving the existing distinction that
sockguard enforces exec authorization.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: e1ffcb49-0123-4be9-b239-3737bc81a5ee

📥 Commits

Reviewing files that changed from the base of the PR and between 3dc5f7b and 1616af7.

📒 Files selected for processing (4)
  • content/docs/current/api/portwing.mdx
  • content/docs/current/configuration/agents/index.mdx
  • content/docs/current/faq/index.mdx
  • content/docs/current/guides/security/index.mdx

Comment thread content/docs/current/configuration/agents/index.mdx Outdated
Comment thread content/docs/current/guides/security/index.mdx Outdated
@scttbnsn
scttbnsn merged commit f903ea0 into dev/v1.6 Jul 29, 2026
25 checks passed
@scttbnsn
scttbnsn deleted the docs/v1.6-portwing-edge-gaps branch July 29, 2026 04:02
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