feat: enable by default + correct the no-restart install docs (v0.1.1)#1
Conversation
- Enable by default (manifest enabled: true). Safe here: the WebSocket is operator- bearer-gated, and protoAgent only binds non-loopback when a token is set, so an un-gated shell is always loopback-local. Disable via plugins.disabled: [terminal]. - Fix the install docs: enabling a plugin HOT-MOUNTS its router (#822) and the rail picks up the view from runtime-status (#853) — no restart. The old "enable; then restart" line was stale boilerplate. Use the console Plugins panel (or reload_plugins / Sync) to pick up a CLI install live. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
👀 Quinn is reviewing — verdict (PASS / WARN / FAIL) + findings to follow. |
There was a problem hiding this comment.
QA Audit — PR #1 | feat: enable by default + correct the no-restart install docs (v0.1.1)
VERDICT: WARN (CI queued — re-review on terminal)
CI Status
- test: queued
Diff Review
protoagent.plugin.yaml:enabled: false → true, version0.1.0 → 0.1.1, description updated. Security rationale is sound — the WS is bearer-gated, and protoAgent only binds non-loopback when a token is set.pyproject.toml: version bump0.1.0 → 0.1.1— consistent with manifest.__init__.py: docstring updated to reflect enabled-by-default.tests/test_packaging.py:assert m["enabled"] is False → True— test stays aligned.README.md: install docs fixed — no-restart flow documented, Plugins panel instructions added, token language clarified.
Observations
- LOW: clawpatch unavailable (repo not in project registry) — manual review only.
- INFO: no unresolved CodeRabbit threads.
- INFO: version bumps consistent across
pyproject.tomlandprotoagent.plugin.yaml.
— Quinn, QA Engineer
|
Submitted COMMENT review on #1. |
There was a problem hiding this comment.
QA Audit — PR #1 | feat: enable by default + correct the no-restart install docs (v0.1.1)
VERDICT: WARN
CI Status
- test: cancelled (terminal, not green)
Diff Review
protoagent.plugin.yaml:enabled: true, version → 0.1.1 — the core changeREADME.md: docs rewritten for enabled-by-default, no-restart hot-mount,--ref v0.1.1__init__.py: docstring updated to matchpyproject.toml: version → 0.1.1tests/test_packaging.py: assertion updatedis False→is True
Observations
- LOW: clawpatch unavailable — repo not in project registry; structural review skipped
- MEDIUM: CI
testis cancelled — cannot confirm test suite passes. Re-run CI before merge. The manifest-shape test assertion (enabled is True) is the critical one; if it passes, the rest is docs - LOW: README install cmd references
--ref v0.1.1— tag won't exist until post-merge release. Not a defect, just a docs sequencing note
Security posture: The enabled-by-default reasoning holds — WS is bearer-gated and protoAgent stays loopback-local without a token. The old "install ≠ enable" model was more conservative but the new model is adequately defended. Docs now clearly surface the opt-out path (plugins.disabled: [terminal]).
— Quinn, QA Engineer
|
Submitted COMMENT review on |
…I timeout) The WS round-trip used an unbounded receive_json loop racing the shell's prompt/echo — it passed in v0.1.0's CI but hung this run (flaky). Harden it: - pytest-timeout (timeout=60) → any hanging test fails with a traceback, never hangs. - CI job timeout-minutes: 8 (safety net). - the round-trip now drives /bin/cat (deterministic echo, no shell-init race); real shell behaviour stays covered by test_pty_session against /bin/sh. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
There was a problem hiding this comment.
QA Audit — PR #1 | feat: enable by default + correct the no-restart install docs (v0.1.1)
VERDICT: WARN (CI pending — test: queued; re-evaluating once terminal)
CI Status
- test: queued
Diff Review
- Core change:
enabled: false → trueinprotoagent.plugin.yamlwith clear bearer-gate/loopback rationale - All docs, docstrings, and test assertions consistently updated to match (8 files)
- WS round-trip test improved:
/bin/sh→/bin/catfor deterministic cross-platform output (tests/test_api.py:15-18) - CI + pytest timeouts added as safety nets — good hygiene for PTY/WS tests
Observations
- LOW: clawpatch unavailable —
protoLabsAI/terminal-pluginis not in the project registry. Structural review skipped; diff-only review. - LOW: README
--ref v0.1.1points to a tag that does not exist yet (will be created post-merge). Standard for release PRs, not a blocker.
— Quinn, QA Engineer
|
Submitted COMMENT review on #1. |
Enable the terminal by default and fix the install docs — no restart needed.
enabled: true). Safe: the WS is operator-bearer-gated, and protoAgent only binds a non-loopback interface when a token is set, so an un-gated shell is always loopback-local. Opt out withplugins.disabled: [terminal].reload_plugins/Sync) to pick up a CLI install live.16 tests green (the manifest-shape test now asserts
enabled is True).