Skip to content

scaffold drift: emitted output not aligned with current ecosystem patterns #41

Description

@TMHSDigital

Summary

While populating Blender-Developer-Tools to v0.1.0 against current ecosystem
patterns, I found that scaffold/ in this repo emits an output that is now
materially behind several conventions established after the scaffold was last
touched. New tool repos generated today will land already-drifted from the
ecosystem and require manual rework before they pass drift-check@v1.9 or
align with release-doc-sync@v1.

This issue tracks the audit; no fix is requested in the issue itself.
Blender-Developer-Tools was populated using Plaid-Developer-Tools as the
working pattern reference, not the scaffold output, so the new repo lands at
current ecosystem patterns regardless of scaffold staleness.

Concrete gaps observed (against Plaid-Developer-Tools and

Home-Lab-Developer-Tools as reference points, with VERSION at 1.9.1)

  1. templates/validate.yml.j2 has no validate-counts job. Plaid grew
    one (DTD#39 era). The scaffold still only does JSON/manifest/frontmatter
    validation. New repos cannot enforce README aggregate count truthfulness
    out of the box.

  2. templates/ does not emit drift-check.yml. Consumer wiring at
    TMHSDigital/Developer-Tools-Directory/.github/actions/drift-check@v1.9
    is missing entirely. New repos start with zero drift coverage.

  3. templates/release.yml.j2 does not consume release-doc-sync@v1.
    The current template ends at gh release create ... --generate-notes
    without ever invoking the doc-sync action, so CHANGELOG.md, CLAUDE.md
    **Version:**, and ROADMAP.md **Current:** will not auto-update on
    release in newly scaffolded repos.

  4. templates/ does not emit label-sync.yml. No self-healing
    gh label create --force per-label loop pattern (the DTD#4 fix). New
    repos have no auto-labeling at all.

  5. templates/ does not emit dependabot.yml. The expected
    github-actions ecosystem entry (now standard across tool repos) is
    missing, so newly scaffolded repos will silently lag on action security
    updates.

  6. templates/CLAUDE.md.j2 does not carry a **Version:** line.
    release-doc-sync rewrites this line on every release. Without it
    in the template, freshly scaffolded repos start with a CLAUDE.md that
    release-doc-sync cannot align until somebody hand-adds the line.

  7. templates/ROADMAP.md.j2 is missing both the <!-- standards-version: -->
    marker and the **Current:** convention.
    Same problem as chore: finish Phase 1 with standards template and scaffold updates #6 plus the
    marker is required for drift-check@v1.9 to recognize the file. Today
    newly scaffolded ROADMAP.md fails drift-check on day one.

  8. templates/AGENTS.md.j2 does carry the standards-version marker.
    This one is correct. Listing it for completeness so the audit is
    exhaustive.

Suggested fix scope (not done in this issue)

  • Add validate-counts to validate.yml.j2.
  • Add a drift-check.yml.j2 template and emit it from create-tool.py.
  • Add the release-doc-sync@v1 step to release.yml.j2 between the version
    bump and the commit/tag step. Wire plugin-version and previous-version.
  • Add a label-sync.yml.j2 template using the per-label gh label create --force pattern.
  • Add a dependabot.yml.j2 template at .github/dependabot.yml with a
    github-actions ecosystem entry (weekly schedule, target main).
  • Add **Version:** {{ version }} to CLAUDE.md.j2.
  • Add <!-- standards-version: {{ standards_version }} --> and **Current:** {{ version }} to ROADMAP.md.j2.

Reference

Pattern source for all of the above: TMHSDigital/Plaid-Developer-Tools
(skills/rules/release flow) plus TMHSDigital/Home-Lab-Developer-Tools
(label-sync layout). Both currently mark standards-version: 1.9.0. Meta
VERSION at the time of audit: 1.9.1.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions