Repository navigation
feat(wfctl): add workflow ecosystem audit commands - #487
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Adds new wfctl audit tooling to help dogfood and verify the Workflow ecosystem’s plan/design metadata and local plugin manifest conformance, alongside restoring wfctl’s embedded CLI workflow dispatcher config and tightening plugin removal behavior.
Changes:
- Introduces
wfctl audit plans(plan frontmatter parsing, evidence checks, stale verification warnings, anddocs/plans/INDEX.mdgeneration). - Introduces
wfctl audit plugins(localworkflow-plugin-*discovery and manifest-shape classification with optional strict mode). - Restores
cmd/wfctl/wfctl.yamlembedded CLI workflow dispatcher config and adjusts plugin removal to avoid rewriting unrelated manifests.
Reviewed changes
Copilot reviewed 19 out of 19 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| docs/plans/INDEX.md | Generated plans index output produced by the new plans audit tooling. |
| docs/plans/2026-04-25-workflow-ecosystem-audit.md | Implementation plan documenting the audit commands and verification approach. |
| docs/plans/2026-04-25-workflow-ecosystem-audit-design.md | Design doc + frontmatter contract for tracking status/evidence. |
| docs/plans/2026-04-25-wfctl-mcp-hot-reload-design.md | New design doc tracked by the plans audit system. |
| docs/plans/2026-04-25-wfctl-lifecycle-product-design.md | New design doc tracked by the plans audit system. |
| docs/plans/2026-04-25-plugin-contract-registry-design.md | New design doc tracked by the plans audit system. |
| docs/plans/2026-04-25-editor-cloud-ide-design.md | New design doc tracked by the plans audit system. |
| docs/plans/2026-04-25-core-runtime-boundaries-design.md | New design doc tracked by the plans audit system. |
| docs/WFCTL.md | Documents wfctl audit commands, flags, and frontmatter contract. |
| cmd/wfctl/wfctl.yaml | Restores embedded CLI workflow command metadata and cmd-* pipeline wiring; adds audit. |
| cmd/wfctl/main.go | Registers the new audit command in the CLI command registry. |
| cmd/wfctl/audit.go | Implements routing + output/reporting for wfctl audit plans and wfctl audit plugins. |
| cmd/wfctl/audit_test.go | Adds command-level tests for audit routing, output, JSON, strict mode, and index fixing. |
| cmd/wfctl/plan_audit.go | Implements plan doc parsing/validation and index rendering. |
| cmd/wfctl/plan_audit_test.go | Unit tests for parsing/validation/index rendering (incl. git-commit evidence checks). |
| cmd/wfctl/plugin_audit.go | Implements plugin repo inventory + manifest shape classification and findings. |
| cmd/wfctl/plugin_audit_test.go | Unit tests for plugin manifest shapes, missing/placeholder detection, and repo discovery. |
| cmd/wfctl/plugin_remove.go | Avoids rewriting wfctl.yaml when plugin removal is a no-op. |
| cmd/wfctl/plugin_remove_test.go | Adds regression test ensuring plugin removal doesn’t rewrite unrelated wfctl.yaml. |
⏱ Benchmark Results✅ No significant performance regressions detected. benchstat comparison (baseline → PR)
|
intel352
force-pushed
the
feat/workflow-ecosystem-audit
branch
from
April 25, 2026 15:16
60f9814 to
5ec794c
Compare
intel352
force-pushed
the
feat/workflow-ecosystem-audit
branch
from
April 25, 2026 15:27
862b52c to
cd1077c
Compare
intel352
force-pushed
the
feat/workflow-ecosystem-audit
branch
from
April 25, 2026 15:33
cd1077c to
2662759
Compare
intel352
force-pushed
the
feat/workflow-ecosystem-audit
branch
from
April 25, 2026 15:43
2662759 to
abb969c
Compare
intel352
force-pushed
the
feat/workflow-ecosystem-audit
branch
from
April 25, 2026 16:03
abb969c to
c7459c9
Compare
intel352
force-pushed
the
feat/workflow-ecosystem-audit
branch
from
April 25, 2026 16:06
c7459c9 to
2aa538f
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
wfctl audit plansfor design/plan metadata parsing, implementation evidence checks, stale verification warnings, and generateddocs/plans/INDEX.md.wfctl audit pluginsfor localworkflow-plugin-*manifest inventory and canonical/legacy/missing/invalid shape reporting.wfctl.yamlfiles.Design
Implementation Plan
Test Plan
GOWORK=off go test ./cmd/wfctl -run 'TestRunAudit|TestParsePlanDoc|TestRenderPlanIndex|TestAuditPlugin|TestPluginRemove_DoesNotRewriteManifestWhenPluginAbsent' -count=1GOWORK=off go test ./cmd/wfctl ./interfaces ./plugin/...GOWORK=off go run ./cmd/wfctl audit plans --dir docs/plansGOWORK=off go run ./cmd/wfctl audit plugins --repo-root /Users/jon/workspaceGOWORK=off go build -o /tmp/wfctl-audit ./cmd/wfctl/tmp/wfctl-audit audit plans --dir docs/plans/tmp/wfctl-audit audit plugins --repo-root /Users/jon/workspaceRuntime launch transcript
Build:
Exit code: 0
Launch:
Failure-signature scrape: clean. The
FAIL plugins auditline is expected inventory output in non-strict mode and exits 0.Verdict: PASS