Moves the agent workflow system from agent-system/ to .agents/ (dotfile convention). Restructured from 5-role to 7-role pipeline: adds Analyst and splits Reviewer into Code Reviewer + Security Reviewer. Removes all old workflow run artifacts. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2.2 KiB
2.2 KiB
Code Review Checklist
Use this checklist for the Code Reviewer role.
Guard IDs live in .agents/checks/guard-catalog.json (guards where reviewer = code).
Architecture & Conventions
GR-CORE-003request input via requestInput(); no $_POST/$_GET/$_FILESGR-CORE-007OpenAPI updated when API endpoints changedGR-CORE-010DB schema changes shipped as idempotent scripts in db/updates/GR-CORE-011new settings in DB settings table, not config filesGR-CORE-012successful mutating POSTs use PRG pattern; flash before redirect
Testing
GR-TEST-001new/changed Service/Gateway logic has PHPUnit tests (happy + edge case)GR-TEST-002new code uses constructor injection; no hidden global state
UI (skip if backend-only)
GR-UI-014new views/components handle loading, empty, error, success statesGR-UI-LISTlist/grid standards preserved (row actions, page size, initStandardListPage)GR-UI-DETAILdetail page contracts, shared partials, no inline confirm, layout systemGR-UI-A11Yno a11y regression; new components use semantic HTML, keyboard-operableGR-UI-I18Nall visible text uses t(); keys present in all language filesGR-UI-REUSEexisting JS/CSS checked before adding new functions/rules
Quality Gates
QG-001toQG-003are run unless explicitly out of scopeQG-004structural checks reported when relevantQG-005JS smoke for JS-touching changesQG-006PHP style check for PHP-touching changes
Security Review Checklist
Use this checklist for the Security Reviewer role.
Guard IDs live in .agents/checks/guard-catalog.json (guards where reviewer = security).
Security
GR-SEC-001CSRF token verified on every POST before processingGR-SEC-002no PII or secrets in logs/audit metadataGR-SEC-003all SQL via Repository with prepared statementsGR-SEC-004no external CDN or remote asset loadingGR-SEC-005encryption only via lib/Support/Crypto.phpGR-SEC-006file uploads in storage/ only; authz-gated serving; MIME validatedGR-SEC-007API requests do not start sessionsGR-SEC-008authorization enforced server-sideGR-SEC-009tenant scope enforced server-side; tenant_id filtering on all scoped queries