Skip to content

feat: enable by default + correct the no-restart install docs (v0.1.1)#1

Merged
mabry1985 merged 2 commits into
mainfrom
chore/enable-by-default-and-no-restart
Jun 13, 2026
Merged

feat: enable by default + correct the no-restart install docs (v0.1.1)#1
mabry1985 merged 2 commits into
mainfrom
chore/enable-by-default-and-no-restart

Conversation

@mabry1985

Copy link
Copy Markdown
Contributor

Enable the terminal by default and fix the install docs — no restart needed.

  • Enabled by default (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 with plugins.disabled: [terminal].
  • No restart — enabling a plugin hot-mounts its router (#822) and the rail picks up the view from runtime-status (#853). The old "enable; then restart" line was stale; use the console Plugins panel (or reload_plugins/Sync) to pick up a CLI install live.

16 tests green (the manifest-shape test now asserts enabled is True).

- 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>
@protoquinn

protoquinn Bot commented Jun 13, 2026

Copy link
Copy Markdown

👀 Quinn is reviewing — verdict (PASS / WARN / FAIL) + findings to follow.

@protoquinn protoquinn 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.

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, version 0.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 bump 0.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.toml and protoagent.plugin.yaml.

— Quinn, QA Engineer

@protoquinn

protoquinn Bot commented Jun 13, 2026

Copy link
Copy Markdown

Submitted COMMENT review on #1.

@protoquinn protoquinn 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.

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 change
  • README.md: docs rewritten for enabled-by-default, no-restart hot-mount, --ref v0.1.1
  • __init__.py: docstring updated to match
  • pyproject.toml: version → 0.1.1
  • tests/test_packaging.py: assertion updated is Falseis True

Observations

  • LOW: clawpatch unavailable — repo not in project registry; structural review skipped
  • MEDIUM: CI test is 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

@protoquinn

protoquinn Bot commented Jun 13, 2026

Copy link
Copy Markdown

Submitted COMMENT review on protoLabsAI/terminal-plugin#1.

…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>

@protoquinn protoquinn 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.

CI terminal-green, no blockers on prior review — auto-approving on green (#748).

@mabry1985 mabry1985 merged commit 9ab8c39 into main Jun 13, 2026
1 check passed
@mabry1985 mabry1985 deleted the chore/enable-by-default-and-no-restart branch June 13, 2026 18:29

@protoquinn protoquinn 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.

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 → true in protoagent.plugin.yaml with 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/cat for 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-plugin is not in the project registry. Structural review skipped; diff-only review.
  • LOW: README --ref v0.1.1 points to a tag that does not exist yet (will be created post-merge). Standard for release PRs, not a blocker.

— Quinn, QA Engineer

@protoquinn

protoquinn Bot commented Jun 13, 2026

Copy link
Copy Markdown

Submitted COMMENT review on #1.

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