- Breaking: the
agentcomponent is gone, with theagent.locationconfig key and the bundledclaude.mdreference document.repomatic initno longer writes to a repository's instructions file, which each repository now owns outright. - Breaking:
CLOUDFLARE_ACCOUNT_IDis gone: the account derives fromCLOUDFLARE_API_TOKENalone.cloudflare-pages --account-idandlint-repo --has-cloudflare-account-idare removed with it. - Breaking: the
debug.yamlworkflow is now opt-in, gated by a new[tool.repomatic] debug.synckey. A repository already carrying it keeps it by settingdebug.sync = true. - Breaking: the
archfield ofrepomatic metadata'sbuild_targetsandnuitka_matrixoutput now readsx86_64andaarch64, notx64andarm64. Update any workflow branching onmatrix.arch. - Breaking:
build_targetsandnuitka_matrixreplace theglibc_floorandmin_oskeys with a singlefloor, holding the same versions. A workflow readingmatrix.min_osneedsmatrix.floor. lint-repogains two checks:setup-uv-checksum-coverage, warning when CI installs the pinned uv unverified, andclassic-branch-protection, reporting a branch protection rule left beside a ruleset.show-test-matrixgains--row-axis,--col-axisand--flat, laying the grid out on any job key the matrix carries or listing one row per job.show-test-matrixstates how many jobs a cell stands for (✅ stable ×5), and sorts its Python rows by release instead of job order.scan-virustotalandsample-metricspublish through one long-lived pull request that each run appends to, instead of committing to the default branch. No file-modifying job pushes there any more.- Both gain
--carry-from, restoring the store from a remote branch first, so records pending in an open pull request are appended to rather than dropped. sample-metricsnames the phase (forward,reconstruct,importorwayback) in a new column of its report table, so one subject reads as one outcome per phase.cloudflare-pages --createis now idempotent: an existing Pages project is reused and reconciled against the declared settings, instead of failing on the API's409duplicate-name refusal.- The Todo list documentation page lists the project's pending work: each deferred change is written as a
todoadmonition beside the code or prose it acts on. - The
repomatic-shipskill now sweeps those admonitions: pending work the cycle introduced is written as one, and a todo whose upstream trigger fired is retired with the shim it guards. metadataand every glob-driven check now walk the repository tree once and skip.git/, instead of re-walking it on every lookup.ci-statuslocates every workflow's newest run through one branch-wide listing instead of one query per workflow.- Every HTTP fetch now identifies itself with a
repomatic/{version}user agent. sync-workflow-pinsno longer bumps the uv pin past what the pinnedastral-sh/setup-uvcan checksum-verify: the action silently skips validation for a version its bundled table does not list.show-configwraps its widest columns instead of running past 240 characters. A format unable to hold a wrapped cell, likegithuborcsv, stays unwrapped.list-skillsrenders a table honoring--table-format, replacing the hand-padded lines that ran to 500 characters.sync-runner-imagestakes--livelike every other command with a dry-run mode, replacing its odd--no-dry-runspelling.- Dependency-update pull requests no longer list yanked or pre-release versions in their intermediate release notes.
- The bundled
[tool.typos]config no longer checks SVG content: a terminal capture splits words across<text>runs, so correcting a fragment corrupts the image. - The
lint-repostale gh-pages check now passes only on a confirmed404: any other API failure reports as skipped instead of green. - Fix
lint-repoflagging everytest-matrix.excludeentry as stale on afull-includematrix, and the finding now names the missing axis values. - Fix
lint-depsmissing a dependency floor declared with>when checking floors against the cooldown window. - Fix
lint-depsasking an aggregate extra selecting the project's own extras for a version floor, which a project can never declare on itself. - Fix
metadataleaving the checkout on a past commit with changes stashed when a mid-scan git command fails. - Fix the
sample-metricschart crashing on a series whose peak is0or1. - Fix
sample-metricsabandoning the tail of a sampling pass to GitHub's secondary rate limit: theghplumbing now retries the refusal on a bounded backoff. sample-metrics --backfill-waybackgives up after ten consecutive refusals and reports to retry later, instead of spending every remaining capture's retry schedule against an exhausted per-IP budget.- Fix
show-test-matrixleaving a cell bare when several jobs share it: every state of astable, unstablecell now carries its own glyph. - Fix the
plugincomponent writing tab-indented settings into a repository whose Biome config asks for spaces, which hadsync-repomaticandformat-jsonfighting each other. The indent now follows that config. - Fix
initleaving behind the folder of a removed skill whoseSKILL.mdwas already gone: the tombstone addresses the file, so an empty folder outlived every later run. - Fix
format-imagesdropping its optimization summary table from the PR body, lost in7.11.0when its two PR-publishing steps collapsed into one. - The skills, subagents and plugin documentation pages group under an Agent tooling section and move to
/agent-skills,/subagentsand/claude-code-plugin, with the old URLs redirecting. - The generated API reference moves off the guide pages and splits one page per module (
/repomatic.awesome_toc), instead of stacking a whole package onto one page. The guide pages keep their prose and link to it. - The Python compatibility table of the install page marks a version a release neither declared nor excluded with
–, instead of counting it as unsupported. - The
commit-messagespage and the bundled skills now hold a commit body to three cases: bundled orthogonal work, a link to a public record, or aCloses #Npointer. - Fix the
excludeexample of the configuration page namingzizmor, which is not a component: copying it maderepomatic initfail. - Fix stale guidance in the bundled skills: two module pointers the regroup broke, the scan history now published through a pull request, and a retired upstream contribution target.
- Fix the dead
claude.mdsection cross-references the bundled skills and subagents carried, and guard against new ones. - Sphinx linkcheck no longer reports every release-asset download URL as broken:
conf.pywithholds its github.com credential from those URLs, which GitHub redirects to a host that answers 401. - Fix the dead links on the install and operation-contracts pages, and the API reference documenting every regrouped module twice.
Full changelog: v7.13.0...v7.14.0