Relationships
#936 Automate mechanical frontmatter fixes in the fixing stage
Opened by mellens · 7/3/2026
Problem
The current fixing stage is fully interactive — every fix, including purely mechanical ones, is applied by the agent in conversation. Several criteria have deterministic fixes that require no judgment and could be automated:
- versioning (plugin layout): copy
versionfromplugin.jsoninto the SKILL.md frontmatter. No judgment needed — the source of truth is alwaysplugin.json. - ownership (plugin layout): copy
author.namefromplugin.jsoninto the SKILL.md frontmatter asowner:. - metadata-completeness: ensure the
---frontmatter block exists and containsdescription:; this can be scaffolded from the skill's H1 title if missing.
In the cycle-1 EE skills fix, these were done by hand-written Python scripts — correct, but outside the factory and not recorded as a repeatable capability.
Proposed solution
Add a skill-fixer method to the skill-analyser (or a new skill-fixer model) that accepts the inventory and review-results artifacts and applies a configurable subset of mechanical fixes deterministically. The fixing stage would call this method first for all mechanical criteria, then fall back to interactive mode only for criteria that require judgment (writing-quality, robustness, failure-modes, dependencies, etc.).
The method should:
- Accept a list of criterion names to fix (e.g.
["versioning", "ownership"]) - Read source data from the plugin's
plugin.json(for plugin-layout repos) - Apply frontmatter patches in-place to each failing SKILL.md
- Return a structured list of which files were changed and what was written
- Integrate with the factory's
record_artifact/record_evidenceflow
Criteria that are good candidates for automation
| Criterion | Automated fix |
|---|---|
versioning |
Copy version from plugin.json → SKILL.md frontmatter |
ownership |
Copy author.name from plugin.json → SKILL.md owner: |
metadata-completeness |
Scaffold frontmatter from H1 title if missing |
discoverability |
Extract trigger keywords from description and write tags: |
What this is NOT
Not a replacement for the interactive stage — criteria like documentation, failure-modes, dependencies, and writing-quality still require judgment and human review. The goal is to eliminate the boilerplate mechanical pass before the interactive one begins.
Closed
No activity in this phase yet.