feat: add router-axi to AXI catalog - #216
Conversation
|
|
Speaking as Kun's firstmate: independent source review completed at pinned revision Reviewed components (direct inspection): Direct source observations (not contributor claims):
Admission status VISION.md per-rule:
Contract-class: opt-in (catalog listing; does not change unconfigured axi defaults). Fork CI is green (docs-check, no-mistakes, generated-files guard). Not merging yet: this PR has no admission:
status: exception
reviewed_revision: 02db57b90fae9c9bd72bd5607b7f420c04a801ee
reviewed_components:
- bin/router-axi
- cmd/router-axi/main.go
- internal/app/app.go
- internal/app/watch.go
- internal/tr064/client.go
- go.mod
- README.md
source_observations:
- "Empty argv defaults to live status; compact output by default with --json (watch JSONL); unknown options and out-of-range watch bounds exit 2 before any router call (internal/app/app.go)."
- "wifi enable|disable and reboot are preview-only without --confirm; with --confirm, wifi SetEnable is sent only on state change then verified via GetInfo, and reboot sends DeviceConfig:Reboot once with redirect refusal and no retry (internal/tr064/client.go)."
- "backup requires ROUTER_AXI_BACKUP_PASSWORD from the environment only, HTTPS origin, atomic owner-only write, and --force to overwrite; redirects refused (internal/app/app.go, internal/tr064/client.go)."
- "Typed errors with exit codes 1–6 and hints; no stdin prompts; calls/devices/leases/forwards truncate at 20 with total/omitted and --all (internal/app/app.go)."
exception: "Errors are written to stderr rather than stdout and unknown-option errors do not list the command's valid flags (internal/app/app.go); version prints 'version: <ver>' rather than the bare version, -v is not accepted, and it is answered only after the app graph loads (cmd/router-axi/main.go, internal/app/app.go); no setup command or installable skill offers principle 7 session integration." |
65b8a07 to
71f7c31
Compare
| status: admitted | ||
| reviewed_revision: bd6f7b110c3f7cd0426f440c4d813defac6b8945 |
There was a problem hiding this comment.
Admission decision changed The accepted intent requires the maintainer-supplied exception block verbatim, including revision
02db57b90fae9c9bd72bd5607b7f420c04a801ee and its exception text. This entry instead records admitted at a different revision and removes the exception. The catalog therefore no longer preserves the admission decision this PR was meant to record, violating the instruction to follow the accepted intent.
Context Used: If there is a VISION.md file at the root of the repo, the PR must not conflict / diverge / drift from it. If the PR description has an "Intent" section, respect that as the accepted user intent. - Do make comments if anything in the implementation ... (source)
|
PR #216 has been updated for the router-axi v0.4.0 release. The catalog entry now pins reviewed_revision to The PR body and no-mistakes attestation have also been refreshed with this intent. The current Greptile failure appears to be attached to the superseded v0.3.0 context. Please retrigger Greptile or disregard that stale finding. |
|
Speaking as Kun's firstmate: independent source review completed at pinned revision Reviewed components (direct inspection): Direct source observations (not contributor claims):
Admission status must be VISION.md per-rule:
Contract-class: opt-in (catalog listing; does not change unconfigured axi defaults). Fork CI is green after first-time workflow approval (docs-check, no-mistakes, Guard generated files). Greptile 4/5 is not a merge blocker here. Not merging yet: tip records admission:
status: exception
reviewed_revision: bd6f7b110c3f7cd0426f440c4d813defac6b8945
reviewed_components:
- bin/router-axi
- cmd/router-axi/main.go
- internal/app/app.go
- internal/app/watch.go
- internal/tr064/client.go
- internal/skill/skill.go
- internal/skill/SKILL.md
- go.mod
- README.md
source_observations:
- "Empty argv defaults to live status with compact TOON-style output; --json is explicit (watch is JSONL). Bare -v, -V, and --version print the bare version and exit 0 before any router work; unknown or context-invalid flags exit 2 with that command's valid flags (cmd/router-axi/main.go, internal/app/app.go)."
- "Structured results and errors use stdout with typed exit codes and remediation hints; watch terminal errors are final stdout/JSONL records, and stderr is reserved for diagnostics when stdout itself fails (internal/app/app.go, internal/app/watch.go)."
- "wifi enable|disable and reboot preview without --confirm; confirmed Wi-Fi changes only call SetEnable when state differs and verify GetInfo afterward, while reboot sends DeviceConfig:Reboot once with redirect refusal and no retry (internal/tr064/client.go)."
- "backup reads ROUTER_AXI_BACKUP_PASSWORD only from the environment, requires HTTPS, writes atomically with owner-only permissions, and requires --force to overwrite; skill install is an explicit opt-in Agent Skill path with no automatic registration (internal/app/app.go, internal/tr064/client.go, internal/skill/skill.go)."
exception: "No setup hooks (or other) ambient-context install command is present, so principle 7 opt-in session integrations are not offered via the CLI (skill packaging only via `skill install`)." |
| domain: Router / TR-064 | ||
| description: "Agent-ergonomic router inspection CLI - read-only TR-064 inspection (device, WAN, traffic, calls, devices, leases, Wi-Fi, guest Wi-Fi, port forwards) plus confirmed mutations (`wifi enable|disable`, `reboot`) and configuration backup over documented FRITZ!Box TR-064 interfaces." | ||
| admission: | ||
| status: exception |
There was a problem hiding this comment.
Admission verdict contradicts intent
The PR’s Intent requires router-axi to be admitted at the pinned v0.4.0 revision and says the old exception must not be preserved. This change instead sets its status to exception and adds a principle-7 exception at line 1171. The catalog therefore records the opposite admission decision, violating the repository directive to respect the PR’s stated Intent.
Context Used: If there is a VISION.md file at the root of the repo, the PR must not conflict / diverge / drift from it. If the PR description has an "Intent" section, respect that as the accepted user intent. - Do make comments if anything in the implementation ... (source)
|
The maintainer-supplied v0.4.0 admission block is now applied at It pins review to No further router-axi code change is needed for this catalog review. The remaining Greptile failure reflects the superseded intent context; the maintainer’s current review confirms the corrected exception block and says the 4/5 result is not a merge blocker. |
|
Speaking as Kun's firstmate: this is merged. Thank you @Azd325 — really appreciate you taking the time on this. Tip VISION.md per-rule (final):
Contract-class: opt-in. |
Intent
The developer wanted to update PR #216 by fetching the maintainer’s comment and adding its exact admission block under router-axi in catalog.yaml, including the specified exception status, revision, reviewed components, observations, and exception text. They required verifying branch state, regenerating and checking documentation, committing the catalog and any generated files with a conventional docs: commit, then pushing through the existing no-mistakes gate and running the intent pipeline with an attestation bound to the new head. They explicitly instructed the agent to respond to gate issues as needed, not merge the PR, and report the pipeline outcome and final PR state.
What Changed
router-axito the community AXI catalog with its metadata, admission exception, reviewed revision, components, and source observations.README.mdanddocs/index.html.Risk Assessment
✅ Low: Bounded catalog metadata change with matching generated documentation and no executable source changes.
Testing
Only the rendered router-axi catalog row has supported live evidence. The catalog admission record and generated-output synchronization remain untested under the live-validation contract.
Evidence: router-axi admission record validation
Evidence: Rendered router-axi catalog row
Pipeline
Updates from git push no-mistakes
✅ **intent** - passed
✅ No issues found.
✅ **Rebase** - passed
✅ No issues found.
✅ **Review** - passed
✅ No issues found.
pnpm run docs:checkpnpm run docs:testSemantic YAML parse/assertion of router-axi admission dataLive Chrome rendering athttp://127.0.0.1:8765/index.html✅ **Document** - passed
✅ No issues found.
✅ **Lint** - passed
✅ No issues found.
✅ **Push** - passed
✅ No issues found.