Add the brief use case UC-005 (Run Project Quality Checks), the actor and
use case in UCD-001, stories US-001.09 and US-001.10, and ADR-0005 with the
inputs, the pinned tools and what a pass and a fail mean, based on a probe
of the runner image. Review and accept them (RC-035 to RC-038) and update
TM-001 and the registry.
Task: MIL-003#2
The sync and publish-wiki scoped workflows embed 200 to 300 lines of Python
in their YAML. Add task 6 to move them to tools/ and run them from a
checkout of this repository, as verified from two organisations, with a
Go/No-Go criterion and O2 in the traceability. Review and accept the
amendment (RC-034) and update TM-001.
Verified on 2026-10-10 with throwaway branches (deleted afterwards):
workflow_call and uses run from the same repository, another repository of
the organisation and a repository of another organisation, so MIL-003 needs
no copied-template fallback. Not tested: a private provider, secrets passed
to a called workflow, and a tag reference. Review it (RC-033) and update
TM-001.
Task: MIL-003#1
S01, standing in for S05 (ADR-0002), approves the minimum Gitea and GitHub
token permissions, recorded with the evidence from the Gitea source and the
GitHub documentation; they are still not tested with a minimal token on the
instance. Confirm the target dates of MIL-001 to MIL-006 and PP-001 (RC-026
to RC-032), update TM-001 and regenerate the Credentials wiki page with its
translations.
Task: MIL-002#4
Add the use case diagram UCD-001, the user stories US-001 and the brief use
cases UC-001 to UC-004 (Synchronize Repository Metadata, Configure Workflow
Credentials, Onboard a Repository, Diagnose a Failed Workflow). Review and
accept them (RC-019 to RC-024) and the PP-001 row that records them
(RC-025), and update TM-001 and the registry.
Task: MIL-002#1
A repository opts in with wiki/.publish; the word prune in it is the only
thing that lets the workflow delete pages. The shared workflow uses the
organisation's TOKEN_FOR_GITEA_WIKI only. Review and accept it (RC-018),
update TM-001 and link the MIL-006 milestone in PP-001.
Add milestone MIL-006 with five tasks: a scoped publish-wiki workflow with
an opt-in rule, piloted in one other repository. Schedule it in PP-001.
The milestone is Proposed; no code starts before it is accepted.
A working document for the native readers of Danish and Bahasa Malaysia
(MIL-005 task 5): page list with links, ten checks per page, the judgement
calls to look at first, a findings table and an outcome table.
Add review record RC-015, remove JSON from the credential failures of UC
candidate 2 and the answered MIL-001 items from Open Issues, accept PP-001
and update TM-001.
The sync workflow reads secrets.PAT_FOR_GITHUB as clear text and
parse_github_token and parse_gitea_token only check that the value is not
empty. No secret is JSON any more; the wiki publisher follows. Update the
tests, the guides, the README, PP-001 UC candidate 2 and the wiki pages with
their Danish and Bahasa Malaysia translations.
Task: MIL-002#5
ADR-0002: an artifact approved by S01 counts as approved for the other
named reviewers, with the stand-in recorded. ADR-0003: the wiki is published
with a separate TOKEN_FOR_GITEA_WIKI, dot-named titles work. Add review
records RC-013 and RC-014 and update TM-001.
Draft ten translations (Home, Onboarding, Credentials, Troubleshooting,
Capabilities in da and ms) with the source hash header from ADR-0001, a
language switcher on every page and a term list. build_wiki.py --check now
reports missing or stale translations, and tests assert that translations
follow the structure of the English page.
The drafts await review by a native reader (MIL-005 task 5).
Task: MIL-005#4
English pages are generated and have no suffix; translations are named
<Page>.da and <Page>.ms, written by hand in wiki/, reviewed and checked for
staleness through a source hash. Add the ADR type to the registry.
Records the decision for task 2: the page source lives in this repository,
reaches the wiki repository only through a workflow, and the agent never
pushes to it. Adds task 8 for the publishing workflow and a Go/No-Go
criterion that no manual push exists.
Add milestone MIL-005 with seven tasks, schedule it in PP-001, add the wiki
to the Business Case scope and record the wiki languages in the registry.
The milestone is Proposed; no wiki work starts before it is accepted.
Not every Gitea repository has a GitHub push mirror. Zero GitHub mirrors
now ends the run successfully without reading the GitHub secret; several
mirrors still fail. Tests, guides, README, BC-001, PP-001 and MIL-001
are updated to match.
Task: MIL-001#1
Task: MIL-001#5
Sync workflow: every failure is now reported as `ERROR: [category] message`
with the categories configuration, credentials (HTTP 401), permissions
(HTTP 403) and api (other HTTP errors, unreachable service); HTTP 404 is a
configuration error. Before changing anything the workflow checks that the
GitHub token can administer the mirror repository and stops with a
permissions error otherwise. No secret value is printed.
Guides: onboarding (with runner labels, prerequisites and offline runner
symptoms), credentials (minimum permissions, preflight, rotation) and
troubleshooting (every message mapped to a category and a fix). README
capability table updated. MIL-002 records the verification of scoped
workflow support: Gitea 1.27.3 runs the workflow in this repository;
delivery to other repositories is not yet verified.
Task: MIL-002#2
Task: MIL-002#3
Task: MIL-002#4
Task: MIL-002#5
Task: MIL-002#6
Task: MIL-002#7
Refs #9
Refs #10
Refs #11
Refs #12
Refs #13
Refs #14
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Set the owner/reviewer revision of each milestone to Accepted and deprecate
its initial row, as the Product Owner accepted the milestones. No task
content changed.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>