Commit 0d17c72
feat: positive-marker repo detection and scaffold auto-registration (#75)
Harden the tool-scaffolding subsystem so a repo cannot be born wrong,
born unknown, or born unregistered.
- _detect_repo_type keys on positive manifest markers (.cursor-plugin/
plugin.json => cursor-plugin; package.json => mcp-server) instead of
incidental directory presence. An mcp-server rendered with skills/ now
classifies correctly instead of flipping to unknown and silently losing
required-workflow enforcement. Adds package.json to SPARSE_PATHS so
mode=all detection sees the marker.
- create-tool.py registers every generated repo in registry.json by
default and regenerates derived artifacts via the shared sync_all code
path; --no-register is the escape hatch. The live registry is untouched.
- Canonical generation logic factored into importable scaffold/generator.py
(generate_repo / build_registry_entry / register_in_registry) so a second
generator can delegate instead of reimplement. create-tool.py is a thin CLI.
- standards/born-green-contract.md codifies the born-green acceptance
criterion (C1-C6) any generator must satisfy.
- Born-green test extended with the previously-breaking shapes (mcp-server
with skills, empty cursor-plugin) and a registration round-trip against a
temp registry root.
Bumps VERSION 1.16.3 -> 1.17.0.
Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>1 parent b7b9e7d commit 0d17c72
13 files changed
Lines changed: 814 additions & 348 deletions
File tree
- .github/workflows
- scaffold
- scripts
- drift_check
- standards
- tests
- fixtures/drift_check/mcp_repo
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
99 | 99 | | |
100 | 100 | | |
101 | 101 | | |
102 | | - | |
| 102 | + | |
103 | 103 | | |
104 | 104 | | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
105 | 108 | | |
106 | 109 | | |
107 | 110 | | |
108 | 111 | | |
109 | 112 | | |
110 | 113 | | |
111 | 114 | | |
| 115 | + | |
112 | 116 | | |
113 | 117 | | |
114 | 118 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
106 | 106 | | |
107 | 107 | | |
108 | 108 | | |
| 109 | + | |
109 | 110 | | |
110 | 111 | | |
111 | 112 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
0 commit comments