REPO_REFACT.md and ECOSYSTEM_PLAN.md moved out of the un-versioned
workspace root into the devarea repo, next to WIKI_CONNECTION.md.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Publishing warp_engine hit it: a credentials key written as the host URL
never matches --host, because RubyGems normalizes those keys. gem push
then falls back to signing in against an endpoint Gitea does not have,
and reports "404 page not found" — which points nowhere near the cause.
Also notes that fixing a release pipeline means re-tagging: Woodpecker
reads the config from the tagged commit, so a retry on the old tag would
run the old, broken config.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The marketplace held only MCP servers so far. These are skills for the
work that keeps costing manual effort and quietly breaking:
- ttg-publish-module — releasing a library, and verifying from a clean
external project that the release is actually fetchable. Encodes the
trap that cost the most: Gitea redirects old repo paths, but not Go
module paths, so a repo can be reachable while `go get` fails.
- ttg-move-repo — moving a repo and following it through every place
that names it, including the ones redirects do not cover.
- ttg-new-repo — creating one in the right org and registering it, so
it cannot end up absent from the clone list the way batocera-store did.
- ttg-ci-enroll — wiring a repo into the build, and the usual failure
where the config exists but the repo was never registered.
- ttg-audit-forge — the drift check between forge, clone list, wiki,
catalog and CI.
- ttg-update-docs — README, wiki page and the public site (Vue page plus
both locale files) after a change.
The rules stay in REPO_REFACT.md, WIKI_CONNECTION.md and
ECOSYSTEM_PLAN.md; the skills read them instead of carrying a second
copy that drifts.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>