Skip to content

Release v0.112.6

Choose a tag to compare

@DraconDev DraconDev released this 16 Jun 20:29
· 5163 commits to main since this release

Release v0.112.6 — 2026-06-16

Summary

This is a release hygiene + architecture formalization release. It packages
the work from goal 83e42c15 which made the 3 long-name façade repos the
canonical "mains" for the project. The release notes below also list those 3
long-name repos as the install targets for users who land here from search
or the GitHub profile.

Install targets (canonical mains)

The 3 long-name façade repos are the canonical install targets for users
who want to learn about each utility. They are deliberately brutally-descriptive
so they are self-explanatory on search engines and on Codeberg / Forgejo.

Utility Install target (GitHub) Also on
dracon-sync DraconDev/dracon-sync-background-auto-commit-multi-remote GitLab + Codeberg
dracon-system DraconDev/dracon-system-disk-process-guard-doctor GitLab + Codeberg
dracon-warden DraconDev/dracon-warden-secret-encrypt-age-git-filter GitLab + Codeberg

Repository architecture (formalized in this release)

This is now a 4-repo system with distinct roles:

Repo Role Contains Updated by
DraconDev/dracon-utilities (this repo) Dev workspace All 3 utilities' source code + monorepo build + install.sh + tests + docs The operator (manual commits) + dracon-sync daemon (auto-commits to all 4 remotes)
DraconDev/dracon-sync-background-auto-commit-multi-remote Façade main for dracon-sync README + LICENSE + SECURITY + .gitignore + .github/ + docs/SOURCE_OF_TRUTH.md post-commit hook → regenerate_facade_repos.pydracon-sync daemon (auto-pushes to all 3 remotes)
DraconDev/dracon-system-disk-process-guard-doctor Façade main for dracon-system Same 7 files as above Same
DraconDev/dracon-warden-secret-encrypt-age-git-filter Façade main for dracon-warden Same 7 files as above Same

The 3 façade repos are the canonical "mains" for users (presentation +
discoverability). The monorepo is the canonical "main" for builds
(./install.sh clones the monorepo, not the façade repos — the façade repos
contain only presentation content, not source code).

The flow is one-way: operator edits code in the monorepo → commits trigger
the post-commit hook → the hook runs regenerate_facade_repos.py for the
affected utility → the script writes the new README + metadata to the 3 façade
repo clones at /home/dracon/Dev/facade-repos/ → the daemon (dracon-sync)
sees the local change and auto-pushes to GitHub + GitLab + Codeberg.

Version bumps

  • Root workspace: 0.112.50.112.6 (patch-level, doc/infra only)
  • dracon-sync: 0.1.60.1.7
  • dracon-system: 0.2.10.2.2
  • dracon-warden: 0.3.10.3.2

What's in the box (since v0.112.5)

The full [0.112.6] CHANGELOG section includes:

  • Repository architecture formalized: root README.md and
    docs/design/github-feature-repos.md now have explicit "Repository
    architecture" sections that document the 4-repo model
  • 3 long-name façade repos are the canonical "mains": referenced in
    root README, design doc, daemon watch list, scaffold/regen scripts, and
    release notes
  • /tmp/fa-clones-b/ cleaned up: the 3 façade repo clones were moved
    to /home/dracon/Dev/facade-repos/ (a daemon-watched path)
  • Old short-name repos deprecated:
    • GitHub: 0 (the Set A→B rename was in-place, old URLs redirect)
    • Codeberg: 0 (hard-deleted during the Set B migration)
    • GitLab: 3 Set A repos soft-deleted with _deletion_scheduled-XXXXXXXX
      suffix; awaiting operator decision for hard-delete vs archive

Verification

  • cargo build --release --locked: succeeds
  • cargo test --workspace --locked: 856 passed, 0 failed, 9 ignored
  • python3 scripts/scaffold_feature_repos.py --validate-name: passes
  • python3 scripts/regenerate_facade_repos.py --dry-run: passes
  • 3 Set B façade repos: 4-remote aligned (da0dbf5 / b37781a / 8ceb070)
  • Monorepo: 4-remote aligned at release SHA
  • Daemon: 4 repos watched (1 monorepo + 3 façade repos), all healthy
  • All 3 façade repos are the install targets in this release's release notes

Migration notes

  • If you cloned the old Set A repos (DraconDev/dracon-sync, etc.) on
    GitHub, the rename in place means the old URLs redirect to the new ones
    for a grace period. Update your bookmarks to the new long names.
  • The 3 new façade repos are at /home/dracon/Dev/facade-repos/ (a path
    the daemon already watches) and stay in sync with the monorepo via the
    post-commit hook + regenerate_facade_repos.py.
  • If you commit changes to a utility's source files, the post-commit hook
    fires automatically and the daemon pushes the regenerated façade content.
    No manual scaffold_feature_repos.py invocation needed.

What's next

  • Operator to decide on the 3 GitLab Set A repos (hard-delete vs archive vs
    leave-as-is) — this is the only remaining open item from goal 83e42c15
  • The 3 façade repos will now stay in sync with the monorepo via the
    post-commit hook + daemon auto-push