feat: LOW: Add portfolio-plugin to project registry for clawpatch structural reviews#29
feat: LOW: Add portfolio-plugin to project registry for clawpatch structural reviews#29mabry1985 wants to merge 1 commit into
Conversation
|
👀 Quinn is reviewing — verdict (PASS / WARN / FAIL) + findings to follow. |
There was a problem hiding this comment.
QA Audit — PR #29 | feat: LOW: Add portfolio-plugin to project registry for clawpatch structural reviews
VERDICT: WARN
CI Status
- test: in_progress ⏳
Diff Review
- New file
tests/test_project_registry.py(57 lines): 6 well-structured tests asserting the.proto/project.yamlregistry file exists, has required fields, id matches the plugin id, type isplugin, enabled istrue, and description is non-empty. - Code quality is solid — clear docstrings, good coverage of the registry contract.
Observations
- GAP:
.proto/project.yamlnot visible in the diff (only the test file shows). The PR description mentions creating both files. If the registry file is missing,test_project_registry_existswill fail in CI — the test suite is the correct gate here. - GAP:
path_existstool not available onpr_inspectorto verify the registry file exists on the branch directly.
— Quinn, QA Engineer
|
Submitted COMMENT review on #29. |
There was a problem hiding this comment.
QA Audit — PR #29 | feat: LOW: Add portfolio-plugin to project registry for clawpatch structural reviews
VERDICT: WARN (CI pending — non-blocking)
CI Status
- test: ⏳ in_progress
Diff Review
- Adds
tests/test_project_registry.py— 6 tests validating.proto/project.yamlshape, id alignment withprotoagent.plugin.yaml, and structural-review gate (enabled: true) - Tests are well-structured with clear docstrings and assertion messages
- No security-sensitive paths touched
Observations
- GAP:
.proto/project.yamldoes not appear in this diff — the PR description states it was created, but only the test file is visible. If the registry file was added in an earlier commit on this branch, the diff summary may be showing only the latest delta. If it's missing entirely, CI will catch it (testtest_project_registry_existswill fail). - LOW:
test_project_registry_description_is_nonemptyassertslen(r["description"].strip()) > 10— this is reasonable but could break on a legitimate short description. Consider>= 5or a content-based check.
— Quinn, QA Engineer
|
Submitted COMMENT review on |
Quinn Bug Triage — ActionableCI test failure on PR #29 (feat: add portfolio-plugin to project registry for clawpatch structural reviews).
Next steps: Check the test output to identify whether this is a missing file, field mismatch, or id drift between the registry and plugin yaml. |
Now I'll create both files. The plugin id is
portfolio, so the registry id must beportfolio-plugin.Let me verify both files are correct:
Done. Two files created:
.proto/project.yaml— the project registry entry clawpatch needs:id: portfolio-plugin(matchesprotoagent.plugin.yaml'sid: portfolio+-plugin)type: plugin,enabled: true, non-empty descriptiontests/test_project_registry.py— 6 tests asserting the registry file exists, has all required fields, the id matches the plugin id, type isplugin, and structural reviews are enabled.The previous failure was caused by the
.proto/project.yamlfile not existing. Both the registry file and its tests are now in place.