Maintenance workflows
DRS ships packaged maintenance workflows alongside review workflows. They use the same YAML DSL and the same agent/action system, but they mutate repository files instead of posting comments.
Available maintenance workflows
| Workflow | Purpose |
|---|---|
local-changelog-update | Update CHANGELOG.md from local unstaged changes using task/changelog-updater. |
tag-changelog-update | Update CHANGELOG.md from the previous stable tag to the current tag (or explicit refs). |
release-changelog-finalize | Finalize CHANGELOG.md for a release before tagging. |
local-fix-review-issues | Fix actionable findings from the latest saved review artifact, then re-run review. |
local-update-agents-md | Update AGENTS.md or equivalent guidance using task/agents-md-updater. |
repository-wiki-sync | Generate, reconcile, or update an OKF v0.1 repository wiki bundle. |
repository-wiki-check | Verify wiki delta state and OKF v0.1 conformance without a model call. |
These workflows are defined in .pi/workflows/*.yaml. They are intentionally local-only and do not commit changes. Projects can compose them with git-add, git-commit, and platform posting actions to build stronger automation.
Changelog workflows
local-changelog-update loads the local unstaged diff, runs the task/changelog-updater agent, and writes the updated CHANGELOG.md. It does not stage or commit.
tag-changelog-update uses a change-source action with type: git-range. When from and to are omitted, it infers to from a tag event (GITHUB_REF_NAME) or the exact tag at HEAD, and from from the previous reachable stable semver tag. Set includePrereleaseFrom: true to compare an RC against the previous RC. It remains an explicit local analysis utility; repository release automation does not run after tags.
release-changelog-finalize supports prereleases and final releases. The manual .github/workflows/release-changelog.yml transaction uses a protected read-only preparation job to validate increasing exact SemVer, update package and lockfile versions, finalize the changelog, refresh the wiki, and run release checks. A deterministic write job applies the checked binary patch and atomically pushes the release commit with its tag. It explicitly dispatches CI, Pages, and the manual-only npm publisher against that immutable tag and commit; a GITHUB_TOKEN push is never used as an implicit trigger.
Fix workflows
local-fix-review-issues loads the latest saved review artifact, runs the task/review-issue-fixer agent, and re-reviews the resulting changes. It uses the same artifact-aware reconciliation as the platform fix flow but stays local.
github-pr-review and gitlab-mr-review also support fix flows when fix=true:
fixMode=internalstages and commits fixes to the source branch.fixMode=stackedcreates a stacked PR/MR with a branch prefix (defaultdrs-fix/pr-).
Both modes default useChangeRequestAuthor to true, so fix commits are attributed to the original PR/MR creator. Set the input to false when push rules require the authenticated token owner's committer identity. The stack-guard action prevents the workflow from running recursively on DRS-managed branches. The review-threshold action checks whether enough findings at or above fixSeverity exist before any fix work begins.
Agent guidance refresh
local-update-agents-md runs task/agents-md-updater to refresh repository guidance such as AGENTS.md. The default output path is AGENTS.md, but it can be overridden with the path input.
The stacked platform variants (github-pr-update-agents-md-stacked and gitlab-mr-update-agents-md-stacked) expose the same default-true useChangeRequestAuthor input for updated guidance commits.
Project-local composed workflows
This repository defines a project-local workflow at .drs/workflows/local-changelog-review.yaml:
- Load the local unstaged diff.
- Run
task/changelog-updaterto editCHANGELOG.md. - Reload the local diff.
- Run the normal review action on the final changes.
- Commit only
CHANGELOG.mdwithdocs: update changelog.
It is selected as the default workflow in .drs/drs.config.yaml (workflow.default: local-changelog-review), so npm run dev:cli -- workflow run runs it without a name.
Repository wiki
The repository-wiki-sync workflow creates or updates an OKF v0.1 wiki bundle. It uses a deterministic delta planner to decide whether the wiki needs to be regenerated, reconciled, updated, or left unchanged. The task/okf-wiki-maintainer agent runs only when the delta plan says work is needed, and it runs under generic workflow-agent permissions that restrict writes to Markdown below the configured bundle root, deny generated indexes, reject shell access, and validate proposed OKF documents before each mutation. After the agent edits concepts, the workflow synchronizes directory indexes, validates the bundle, records state in .drs/wiki-state.json, and outputs wikiResult — the validation object enriched with summary and escaped summaryMarkdown.
The repository-wiki-check workflow is a model-free CI gate. It checks the recorded delta state and validates the bundle without invoking an agent. .github/workflows/ci.yml runs the strict check for the scheduled drs/wiki-update pull request; ordinary feature pull requests build the wiki site to validate bundle structure and rendering without requiring branch-local freshness.
See Repository wiki for the full delta fingerprinting, state, and validation details.
See also
- Workflow engine for the DSL and scheduling.
- Review workflows for the review artifact and fix verification.
- Integrations for the GitHub Actions wrappers that use these workflows.
- Repository wiki for OKF wiki maintenance and CI checks.
- Configuration for
fix.checksand workflow defaults.