Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
878adbf148 | ||
|
|
9963d69731 | ||
|
|
2f267df2a2 | ||
|
|
8051a07e7b | ||
|
|
38deeba89b | ||
|
|
856197d0bb | ||
|
|
86e69ce85d | ||
|
|
bb3b0f242b | ||
|
|
922ff18c0a | ||
|
|
2b53ee6d21 | ||
|
|
157bf6560d | ||
|
|
8c0f006dc5 | ||
|
|
7fecb33a72 | ||
|
|
8c2c52ebd2 | ||
|
|
2ee3d4d535 | ||
|
|
8f0ded2593 | ||
|
|
23a64a3f35 | ||
|
|
8c1fba6d9d | ||
|
|
672bc2988e | ||
|
|
9aeb74e8b0 |
@@ -9,7 +9,8 @@
|
||||
## Version History
|
||||
| Date | Status | Author | Reviewer | Change | Commit |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
| 2026-10-13 | Proposed | Jens Tirsvad Nielsen | S01 | Initial version | [01b9c29] |
|
||||
| 2026-10-13 | Deprecated | Jens Tirsvad Nielsen | S01 | Initial version | [01b9c29] |
|
||||
| 2026-10-13 | Accepted | Jens Tirsvad Nielsen | S01 | Review findings fixed (RC-063): the product owner's language is spelled out, the security consequence is named, and the secret passing is recorded as verified | [8c2c52e] |
|
||||
|
||||
Allowed Status values: `Proposed`, `Accepted`, `Rejected`, `Deprecated`, `Superseded by ADR-NNNN`.
|
||||
|
||||
@@ -22,7 +23,8 @@ repository of an organisation, and a marker file `wiki/.publish` is the opt-in.
|
||||
That avoids a copy of the workflow, but it runs where nobody asked for it and
|
||||
needs a safety gate for that reason; its trigger path (`wiki/**`) and the
|
||||
version of the script (`v1`) are fixed centrally. The framework now prescribes
|
||||
the wiki in `docs/wiki/` with English and the PO language as a minimum, and
|
||||
the wiki in `docs/wiki/` with English and the product owner's language as a
|
||||
minimum, and
|
||||
repositories need to say where their wiki is.
|
||||
|
||||
Options:
|
||||
@@ -61,6 +63,9 @@ The rules that follow from it:
|
||||
to `docs/wiki/` one repository at a time.
|
||||
- Opting in is a file in the repository, reviewed in a pull request, and a
|
||||
repository without a caller is never written to.
|
||||
- Security: the token is passed explicitly by the caller and is never
|
||||
inherited or taken from a fallback, so a repository that does not pass it
|
||||
cannot write a wiki.
|
||||
- One call convention for every shared workflow of this repository.
|
||||
|
||||
**Negative:**
|
||||
@@ -74,8 +79,13 @@ The rules that follow from it:
|
||||
their migrations.
|
||||
- The owner chose a patch release (1.2.2) for this change although a new
|
||||
workflow is a minor one under [ADR-0006]; the changelog states the deviation.
|
||||
- Passing a declared secret through `workflow_call` is not yet verified on this
|
||||
Gitea instance; it is checked by the first call, in this repository.
|
||||
- Anyone who can change the caller file of a repository can change the folder
|
||||
and `prune`, and so what the token deletes in that repository's wiki; this is
|
||||
the same exposure as the marker had, and it is reviewed through the pull
|
||||
request that changes the caller.
|
||||
- Passing a declared secret through `workflow_call`, and a local `uses:` call,
|
||||
were verified on this Gitea instance by run 316 of this repository on
|
||||
2026-10-13.
|
||||
|
||||
## Affected Artifacts
|
||||
|
||||
@@ -91,3 +101,4 @@ The rules that follow from it:
|
||||
[ADR-0006]: ./adr-0006-release-process-and-version-pinning.md
|
||||
[ADR-0005]: ./adr-0005-quality-check-contract.md
|
||||
[01b9c29]: https://git.tirsystem.com/TirSystem/github-action/commit/01b9c2972b4317bcc590540010aea0eaf7f30014
|
||||
[8c2c52e]: https://git.tirsystem.com/TirSystem/github-action/commit/8c2c52ebd2a27e4d0edb4008c31c002718d280fb
|
||||
|
||||
@@ -10,8 +10,8 @@ each document lives in *this* project and the next version to use.
|
||||
| BC | Business Case | docs/business-case.md | 002 |
|
||||
| SA | Stakeholder Analysis | docs/stakeholder-analysis.md | 002 |
|
||||
| PP | Project Plan | docs/project-plan.md | 002 |
|
||||
| MIL | Milestone / Gateway | docs/milestones/*.md | 009 |
|
||||
| RC | SQA Review Record | docs/sqa/reviews/rc-*.md | 062 |
|
||||
| MIL | Milestone / Gateway | docs/milestones/*.md | 010 |
|
||||
| RC | SQA Review Record | docs/sqa/reviews/rc-*.md | 065 |
|
||||
| TM | Traceability Matrix | docs/sqa/traceability-matrix.md | 002 |
|
||||
| ADR | Architecture Decision Record | docs/adr/adr-NNNN-*.md | 0010 |
|
||||
| UCD | Use Case Diagram | docs/use-case-diagram.md | 002 |
|
||||
|
||||
@@ -0,0 +1,92 @@
|
||||
# MIL-009: Migrate the wiki callers and remove the scoped workflow
|
||||
|
||||
## Metadata
|
||||
| Key | Value |
|
||||
| --- | --- |
|
||||
| ID | MIL-009 |
|
||||
| CrossReference | [BC-001], [MIL-008], [ADR-0004], [ADR-0006], [ADR-0009] |
|
||||
|
||||
## Version History
|
||||
| Date | Status | Author | Reviewer | Change | Commit |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
| 2026-10-13 | Deprecated | Jens Tirsvad Nielsen | S01 | Initial version | [2b53ee6] |
|
||||
| 2026-10-14 | Accepted | Jens Tirsvad Nielsen | AI as stand-in for S01 | Plan accepted in chat with the defaults: target date 2026-11-30 confirmed, `027-sandbox` and `028-pomodoro` do not publish, framework release 0.7.0; reviewed (RC-064) | [2f267df] |
|
||||
|
||||
---
|
||||
|
||||
## Purpose
|
||||
|
||||
Decide whether the scoped `publish-wiki.yml` can be removed: every repository
|
||||
that publishes its wiki through it has moved to `docs/wiki/` and calls the
|
||||
reusable workflow `publish-wiki-pages.yml`, and ADR-0004 is superseded by
|
||||
ADR-0009. MIL-008 deprecated the scoped workflow and kept it because seven
|
||||
repositories still depended on it (checked on 2026-10-13).
|
||||
|
||||
## Deliverable
|
||||
|
||||
A released framework with the caller template; each of the seven repositories
|
||||
publishing its wiki from `docs/wiki/` through a caller, with its marker removed;
|
||||
the scoped workflow, its marker code path, its tests and every mention of the
|
||||
marker as an opt-in removed; ADR-0004 marked superseded; and the major release
|
||||
2.0.0 with the tag `v2`.
|
||||
|
||||
## Go / No-Go Criteria
|
||||
|
||||
| # | Criterion (objectively checkable) | Go | No-Go |
|
||||
| --- | --- | --- | --- |
|
||||
| 1 | The framework is released as 0.7.0 with `templates/ci/publish-wiki.yml` and `process/wiki.md`, as a tag | The tag exists and each migrating repository pins it | No tag, or a repository pins an unmerged commit |
|
||||
| 2 | Each of the seven repositories publishes from `docs/wiki/` through a caller of `publish-wiki-pages.yml`, and has no `wiki/.publish` | A scan of the instance lists the seven with a caller and no marker | Any marker or missing caller remains |
|
||||
| 3 | The wiki of each of the seven equals its `docs/wiki/` after the first run | 0 differences read back through the API for each | A difference, or a failed run |
|
||||
| 4 | A scan of every repository of the four organisations finds no `wiki/.publish` and no run of the scoped workflow that wrote | None found | Any found |
|
||||
| 5 | The scoped `publish-wiki.yml`, the marker code path of `tools/publish_wiki.py`, their tests and the marker text of the guides, README and wiki pages are removed | Offline tests pass; a search finds no `wiki/.publish` outside the changelog and ADRs | A mention remains, or a test fails |
|
||||
| 6 | ADR-0004 is `Superseded by ADR-0009` with a review record, and ADR-0009 links back | Both rows and RC present | Missing |
|
||||
| 7 | Release 2.0.0 is published with a Breaking entry, `v2` points to it, and `v1` still points to 1.2.2 | Tags read back through the API | `v1` moved, or no Breaking entry |
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Depends on | Reason |
|
||||
| --- | --- |
|
||||
| MIL-008 | Provides the reusable workflow, the deprecation and the list of repositories |
|
||||
| `TirSystem/sqa-qc-framework` release | The caller template and `process/wiki.md` must be a tag before a repository pins them |
|
||||
|
||||
## Traceability
|
||||
|
||||
| Business Case objective / KPI / user story | Reference |
|
||||
| --- | --- |
|
||||
| O2, O3 | [BC-001] |
|
||||
|
||||
## Ownership
|
||||
|
||||
| Role | Stakeholder ID (SA) |
|
||||
| --- | --- |
|
||||
| Owner | S05 |
|
||||
| Approving reviewer | S01 |
|
||||
|
||||
## Target Date
|
||||
|
||||
2026-11-30 — confirmed on 2026-10-14 by S01 in chat; the Business Case sets no deadline.
|
||||
|
||||
## Tasks
|
||||
|
||||
| # | Task | Summary | Needs its own Use Case/User Story? | Reference |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| 1 | Release the framework | `TirSystem/sqa-qc-framework` has the caller template and `process/wiki.md` merged (pull request 45). Add the changelog entry, tag the release and record the tag. Needed before any repository pins the template. | No | |
|
||||
| 2 | Migrate the three TirSystem projects | `sqa-and-qc`, `sqa-qc-framework` and `sqa-qc-checklists`: move `wiki/` to `docs/wiki/`, copy the caller from `templates/ci/publish-wiki.yml`, remove `wiki/.publish`, fix the paths in their generators and documents, move the framework pin to the released tag, one pull request each. Confirm the organisation secret `TOKEN_FOR_GITEA_WIKI` is present. | No | |
|
||||
| 3 | Migrate `repo-foundry` | Same steps for `TirSystem-BashScript/repo-foundry` (21 wiki files); the organisation `TirSystem-BashScript` needs its own `TOKEN_FOR_GITEA_WIKI` secret (S03). | No | |
|
||||
| 4 | Migrate the three Udemy repositories | Same steps for `021-snake-game`, `024-snake` and `025-weather` of `Tirsvad-Udemy-100-days-of-code` (5 wiki files each). `027-sandbox` and `028-pomodoro`, which have `docs/wiki/` and no marker, do not publish (decided by S01 on 2026-10-14). | No | |
|
||||
| 5 | Verify the migration | After each first run read the wiki back and compare it with `docs/wiki/`; then scan the four organisations for `wiki/.publish` and for repositories still publishing through the scoped workflow. Record the results in this milestone. | No | |
|
||||
| 6 | Remove the scoped workflow | Delete `.gitea/scoped_workflows/publish-wiki.yml`, the marker path of `tools/publish_wiki.py` (the `WIKI_PRUNE` input becomes required), the tests that cover it and the marker text in the guides, the README and the three wiki languages. Keep the drift test for the remaining scoped workflow. | No | |
|
||||
| 7 | Supersede ADR-0004 | Mark ADR-0004 `Superseded by ADR-0009` for the delivery and marker parts (new version row, review record), and make ADR-0009 link back. | No | |
|
||||
| 8 | Release 2.0.0 | Breaking entry (a removed workflow and marker); upgrade guide for callers; release through the release workflow; `v2` is created and `v1` stays at 1.2.2. Move the examples in the guides to `@v2` where the guide describes the new major. | No | |
|
||||
|
||||
---
|
||||
|
||||
---
|
||||
|
||||
[BC-001]: ../business-case.md
|
||||
[MIL-008]: ./mil-008-wiki-reusable-workflow.md
|
||||
[ADR-0004]: ../adr/adr-0004-shared-wiki-publishing-opt-in.md
|
||||
[ADR-0009]: ../adr/adr-0009-wiki-publishing-reusable-workflow.md
|
||||
[ADR-0006]: ../adr/adr-0006-release-process-and-version-pinning.md
|
||||
[2b53ee6]: https://git.tirsystem.com/TirSystem/github-action/commit/2b53ee6d21babdefc30556b92c3300c6cd956898
|
||||
[2f267df]: https://git.tirsystem.com/TirSystem/github-action/commit/2f267df2a270087cb7dc482af4ce4f4341e97b03
|
||||
+21
-7
@@ -4,25 +4,25 @@
|
||||
| Key | Value |
|
||||
| --- | --- |
|
||||
| ID | PP-001 |
|
||||
| CrossReference | [BC-001], [SA-001], [ADR-0002], [US-001], [MIL-001], [MIL-002], [MIL-003], [MIL-004], [MIL-005], [MIL-006], [MIL-007] |
|
||||
| CrossReference | [BC-001], [SA-001], [ADR-0002], [US-001], [MIL-001], [MIL-002], [MIL-003], [MIL-004], [MIL-005], [MIL-006], [MIL-007], [MIL-008], [MIL-009] |
|
||||
|
||||
## Version History
|
||||
| Date | Status | Author | Reviewer | Change | Commit |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
| 2026-10-10 | Deprecated | Jens Tirsvad Nielsen | S01 | Dates confirmed by S01 (stand-in for S05); the confirmation item is removed from Open Issues | [ea06eaa] |
|
||||
| 2026-10-11 | Accepted | Jens Tirsvad Nielsen | S01 | Added MIL-007 (quality checks for C++ and C#); reviewed (RC-053) | [e3ad1fa] |
|
||||
| 2026-10-13 | Deprecated | Jens Tirsvad Nielsen | S01 | Added MIL-009 (migrate the wiki callers, remove the scoped workflow); review RC-064 awaits S01 | [86e69ce] |
|
||||
| 2026-10-14 | Accepted | Jens Tirsvad Nielsen | AI as stand-in for S01 | MIL-009 plan accepted in chat with the defaults; target date 2026-11-30 confirmed (RC-064) | [2f267df] |
|
||||
|
||||
---
|
||||
|
||||
## Purpose
|
||||
|
||||
This plan schedules seven milestones that move the repository from one
|
||||
This plan schedules nine milestones that move the repository from one
|
||||
workflow with known defects to a documented, versioned collection of shared
|
||||
workflows. The Business Case sets no deadline, so the dates are the plan's own; they were confirmed on 2026-10-10 by S01, standing in for S05 (ADR-0002).
|
||||
|
||||
## Planning Assumptions
|
||||
|
||||
- Week 1 starts 2026-10-05; phases are two weeks long; the last decision is 2026-12-26; MIL-007 follows in January 2027 (2027-01-04 to 2027-01-16, confirmed on 2026-10-11 by S01).
|
||||
- Week 1 starts 2026-10-05; phases are two weeks long; the last decision is 2026-12-26; MIL-007 follows in January 2027 (2027-01-04 to 2027-01-16, confirmed on 2026-10-11 by S01). MIL-008 amends the shared wiki publishing of MIL-006 and runs in parallel with the October and November windows: its work started on 2026-10-13 and its decision date is its own Target Date, 2026-11-15. MIL-009 follows MIL-008 and runs from 2026-11-16 to its proposed Target Date, 2026-11-30, confirmed by S01 in chat on 2026-10-14.
|
||||
- Work on a milestone starts only after its `MIL-*` document is `Accepted`.
|
||||
- Dates were confirmed on 2026-10-10 by S01, standing in for S05 (ADR-0002).
|
||||
|
||||
@@ -37,6 +37,8 @@ workflows. The Business Case sets no deadline, so the dates are the plan's own;
|
||||
| Wiki and translations | [MIL-005] | 2026-11-30 to 2026-12-12 | 2026-12-12 | S05 | None yet | Wiki pages in English, Danish and Bahasa Malaysia, kept current by every pull request | [Milestone MIL-005] |
|
||||
| Shared wiki publishing | [MIL-006] | 2026-12-14 to 2026-12-26 | 2026-12-26 | S05 | None yet | Scoped publish-wiki workflow with opt-in, piloted in one other repository | [Milestone MIL-006] |
|
||||
| Quality checks for C++ and C# | [MIL-007] | 2027-01-04 to 2027-01-16 | 2027-01-16 | S05 | US-001.09, US-001.10 (to extend) | Reusable quality-check workflows for C++ and C#, released | [Milestone MIL-007] |
|
||||
| Wiki publishing as a reusable workflow | [MIL-008] | 2026-10-13 to 2026-11-15 | 2026-11-15 | S05 | None yet | Reusable publish-wiki-pages workflow, wiki in docs/wiki, scoped workflow deprecated, released as 1.2.2 | [Milestone MIL-008] |
|
||||
| Migrate the wiki callers and remove the scoped workflow | [MIL-009] | 2026-11-16 to 2026-11-30 | 2026-11-30 | S05 | None yet | Seven repositories publish through a caller, scoped workflow removed, ADR-0004 superseded, released as 2.0.0 | Not created yet (the sync creates it when MIL-009 is Accepted) |
|
||||
|
||||
```plantuml
|
||||
@startgantt
|
||||
@@ -55,6 +57,10 @@ Project starts 2026-10-05
|
||||
[MIL-006 Go/No-Go] happens 2026-12-26
|
||||
[MIL-007 C++ and C#] starts 2027-01-04 and ends 2027-01-16
|
||||
[MIL-007 Go/No-Go] happens 2027-01-16
|
||||
[MIL-008 Reusable wiki workflow] starts 2026-10-13 and ends 2026-11-15
|
||||
[MIL-008 Go/No-Go] happens 2026-11-15
|
||||
[MIL-009 Migrate and remove] starts 2026-11-16 and ends 2026-11-30
|
||||
[MIL-009 Go/No-Go] happens 2026-11-30
|
||||
@endgantt
|
||||
```
|
||||
|
||||
@@ -69,6 +75,8 @@ Project starts 2026-10-05
|
||||
| Wiki pages in English, Danish and Bahasa Malaysia | [MIL-005] |
|
||||
| The wiki publisher shared with other repositories through scoped delivery | [MIL-006] |
|
||||
| Gitea Actions workflows for software engineers (quality checks for C++ and C#) | [MIL-007] |
|
||||
| The wiki publisher as a workflow that repositories call, from docs/wiki | [MIL-008] |
|
||||
| Moving every publishing repository to the called workflow and removing the scoped one | [MIL-009] |
|
||||
|
||||
## Dependencies
|
||||
|
||||
@@ -76,6 +84,7 @@ Project starts 2026-10-05
|
||||
MIL-001 → MIL-002 → MIL-003 → MIL-004
|
||||
MIL-002 → MIL-005 → MIL-006
|
||||
MIL-003 + MIL-004 → MIL-007
|
||||
MIL-006 → MIL-008 → MIL-009
|
||||
```
|
||||
|
||||
A No-Go moves every later window by the rework time of the failed milestone.
|
||||
@@ -86,6 +95,8 @@ A No-Go moves every later window by the rework time of the failed milestone.
|
||||
| --- | --- | --- |
|
||||
| The runner cannot provide the C++ or C# tools (MIL-007) | The workflows need a custom runner image or a longer install | MIL-007 task 2 verifies it first; the ADR of task 3 says what a build-dependent check needs from the caller. |
|
||||
| Reusable workflow support is missing on the instance | MIL-003 and MIL-004 change shape | Verify first in each milestone (MIL-002 task 2, MIL-003 task 1); fall back to copied templates. |
|
||||
| Eight repositories still publish through the scoped workflow that MIL-008 deprecates (MIL-008 task 5) | Removing it would stop their wikis | It is deprecated and kept; a follow-up milestone migrates them and removes it in a major release (RC-061). |
|
||||
| An organisation has no `TOKEN_FOR_GITEA_WIKI` secret, or a repository fails its first run (MIL-009 tasks 3 and 4) | The wiki of that repository stops updating | MIL-009 task 5 reads each wiki back after the first run; the scoped workflow is removed only after every repository passes. |
|
||||
| Security review by S05 is a bottleneck | Milestone decisions slip | Keep milestones small and plan review time before each decision date. |
|
||||
|
||||
## Open Issues
|
||||
@@ -258,6 +269,8 @@ no tests, no release process.
|
||||
[MIL-005]: ./milestones/mil-005-wiki-and-translations.md
|
||||
[MIL-006]: ./milestones/mil-006-shared-wiki-publishing.md
|
||||
[MIL-007]: ./milestones/mil-007-cpp-csharp-quality-checks.md
|
||||
[MIL-008]: ./milestones/mil-008-wiki-reusable-workflow.md
|
||||
[MIL-009]: ./milestones/mil-009-migrate-wiki-callers-and-remove-scoped-workflow.md
|
||||
[Milestone MIL-001]: https://git.tirsystem.com/TirSystem/github-action/milestone/18
|
||||
[Milestone MIL-002]: https://git.tirsystem.com/TirSystem/github-action/milestone/19
|
||||
[Milestone MIL-003]: https://git.tirsystem.com/TirSystem/github-action/milestone/20
|
||||
@@ -265,6 +278,7 @@ no tests, no release process.
|
||||
[Milestone MIL-005]: https://git.tirsystem.com/TirSystem/github-action/milestone/93
|
||||
[Milestone MIL-006]: https://git.tirsystem.com/TirSystem/github-action/milestone/94
|
||||
[Milestone MIL-007]: https://git.tirsystem.com/TirSystem/github-action/milestone/95
|
||||
[ea06eaa]: https://git.tirsystem.com/TirSystem/github-action/commit/ea06eaaa698247d20e4a8e2694d7acbb1de58b63
|
||||
[Milestone MIL-008]: https://git.tirsystem.com/TirSystem/github-action/milestone/152
|
||||
[b74ee0e]: https://git.tirsystem.com/TirSystem/github-action/commit/b74ee0e5cfd04f25ba5f2c1addc80699147c479a
|
||||
[e3ad1fa]: https://git.tirsystem.com/TirSystem/github-action/commit/e3ad1fa7e7eef57a6793a479edb41ac6fd2db688
|
||||
[86e69ce]: https://git.tirsystem.com/TirSystem/github-action/commit/86e69ce85df72ea3caed40253e08231c73187fde
|
||||
[2f267df]: https://git.tirsystem.com/TirSystem/github-action/commit/2f267df2a270087cb7dc482af4ce4f4341e97b03
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
# Review Record: PP-001 Project Plan (MIL-008)
|
||||
|
||||
## Metadata
|
||||
| Key | Value |
|
||||
| --- | --- |
|
||||
| ID | RC-062 |
|
||||
| CrossReference | [PP-001], [BC-001], [MIL-008] |
|
||||
|
||||
## Version History
|
||||
| Date | Status | Author | Reviewer | Change | Commit |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
| 2026-10-13 | Accepted | Jens Tirsvad Nielsen | S01 | Initial version | [9aeb74e] |
|
||||
|
||||
---
|
||||
|
||||
## Artifact Under Review
|
||||
|
||||
- Instance reviewed: [PP-001]
|
||||
- Checklist used: none: the Project Plan has no QC checklist. Validated against the Business Case [BC-001] and the Go / No-Go criteria of each listed milestone, as `PP.md` prescribes.
|
||||
- Scope: delta re-review for the added MIL-008 row, Gantt entries, Scope Coverage, Dependencies, one Plan Risk and the counts; the earlier record is RC-053
|
||||
- Language and domain: n/a (technical type)
|
||||
- Mode: supervised (the AI prepared the record; S01, the user, gave the Go in chat on 2026-10-13)
|
||||
|
||||
## Checklist Results
|
||||
|
||||
| # | Criterion | Status | Evidence/Notes |
|
||||
| --- | --- | --- | --- |
|
||||
| 1 | Every milestone in the plan has a `MIL-*` document and the plan's dates equal that document's target date | Pass | MIL-001 to MIL-008 exist; the MIL-008 decision date 2026-11-15 equals its Target Date. |
|
||||
| 2 | Every Business Case scope item is covered by a gateway | Pass | The wiki publisher shared with other repositories is covered by MIL-006 and MIL-008 (O2, O3). |
|
||||
| 3 | The schedule respects the Business Case constraints | Pass | The Business Case sets no deadline; the MIL-008 window overlaps the October and November windows and says so under Planning Assumptions. |
|
||||
| 4 | Dependencies between milestones are stated | Pass | MIL-006 to MIL-008 is in the Dependencies diagram and in MIL-008's own document. |
|
||||
| 5 | Every gateway has an owner who is a stakeholder ID | Pass | MIL-008 is owned by S05. |
|
||||
| 6 | Plan content is internally consistent | Pass | "Eight milestones", the Planning Assumptions, the Gantt entries, the Gateway Schedule and the Scope Coverage agree. |
|
||||
| 7 | Open Issues are current | Pass | Unchanged items remain open; a plan risk was added for the repositories that still use the scoped workflow. |
|
||||
|
||||
## Overall Verdict
|
||||
|
||||
Go - all seven criteria pass; no findings. S01 gave the Go in chat on 2026-10-13, after the change was merged as pull request 137 with the plan row `Proposed`; this record and the plan row are set to `Accepted` in the follow-up.
|
||||
|
||||
## Action Items
|
||||
|
||||
| Action | Owner | Due |
|
||||
| --- | --- | --- |
|
||||
| Set PP-001 and this record to `Accepted` (done in the follow-up that follows pull request 137) | S05 | 2026-10-13 |
|
||||
| Review ADR-0009 (still without a review record) | S01 | after the plan |
|
||||
|
||||
---
|
||||
|
||||
---
|
||||
|
||||
[PP-001]: ../../project-plan.md
|
||||
[BC-001]: ../../business-case.md
|
||||
[MIL-008]: ../../milestones/mil-008-wiki-reusable-workflow.md
|
||||
[9aeb74e]: https://git.tirsystem.com/TirSystem/github-action/commit/9aeb74e8b09bb7882847e9bd5d569dbc9856fc03
|
||||
@@ -0,0 +1,56 @@
|
||||
# Review Record: ADR-0009 Wiki publishing as a reusable workflow
|
||||
|
||||
## Metadata
|
||||
| Key | Value |
|
||||
| --- | --- |
|
||||
| ID | RC-063 |
|
||||
| CrossReference | [ADR-0009], [QC-ADR-001] |
|
||||
|
||||
## Version History
|
||||
| Date | Status | Author | Reviewer | Change | Commit |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
| 2026-10-13 | Accepted | Jens Tirsvad Nielsen | S01 | Initial version | [8c2c52e] |
|
||||
|
||||
---
|
||||
|
||||
## Artifact Under Review
|
||||
|
||||
- Instance reviewed: [ADR-0009]
|
||||
- Checklist used: [QC-ADR-001]
|
||||
- Scope: full review
|
||||
- Language and domain: n/a (technical type)
|
||||
- Mode: supervised (the AI prepared the record; S01, the user, gave the Go in chat on 2026-10-13)
|
||||
|
||||
## Checklist Results
|
||||
|
||||
| # | Criterion | Status | Evidence/Notes |
|
||||
| --- | --- | --- | --- |
|
||||
| 1 | The ID (`ADR-NNNN`, 4-digit) matches the filename number and is unique and sequential | Pass | ADR-0009 in `adr-0009-wiki-publishing-reusable-workflow.md`; follows ADR-0008. |
|
||||
| 2 | Context states the problem, the forces (cost, risk, constraints) and the options evaluated | Pass | Names the scoped delivery, its gate, the fixed trigger path and version, and the new folder rule. |
|
||||
| 3 | At least two options were considered, or the absence of alternatives is justified | Pass | Two options: keep the scoped workflow and read both folders, or a reusable workflow. |
|
||||
| 4 | Decision is stated in one or two unhedged sentences and matches one of the evaluated options | Pass | Two sentences; matches option 2. The rules below it add detail only. |
|
||||
| 5 | Consequences list both Positive and Negative outcomes | Pass | Finding fixed during this review: the consequence "passing a declared secret is not yet verified" was out of date, because run 316 verified it on 2026-10-13. It now says so. Four positive and four negative outcomes. |
|
||||
| 6 | Quality-attribute impacts (performance, security, portability, etc.) are named where the decision affects them | Pass | Finding fixed during this review: the security impact was implicit. A positive bullet (explicit secret, no fallback) and a negative bullet (whoever changes the caller changes the folder and `prune`) were added. |
|
||||
| 7 | Affected Artifacts are listed as links, and each is also in CrossReference | Pass | MIL-008 and ADR-0004 are linked and cited. |
|
||||
| 8 | Status changes are recorded as new Version History rows with a Change summary and Commit link; retained rows are never rewritten | Pass | The findings fix is a new row; the first row is kept unchanged. |
|
||||
| 9 | A superseded or deprecated ADR names its successor, and the successor links back | N-A | ADR-0004 is superseded only in part and stays in force until the scoped workflow is removed; see the action item. |
|
||||
| 10 | Written in business or technical language of the domain, with no unexplained abbreviations | Pass | Finding fixed during this review: "PO language" is now "the product owner's language". |
|
||||
| 11 | Status is one of `Proposed`, `Accepted`, `Rejected`, `Deprecated` or `Superseded by ADR-NNNN`, and every Version History row uses only these | Pass | `Proposed` only. |
|
||||
|
||||
## Overall Verdict
|
||||
|
||||
Go - all applicable criteria pass; the three findings (criteria 5, 6 and 10) were fixed during the review. S01 gave the Go in chat on 2026-10-13; there is no independent reader.
|
||||
|
||||
## Action Items
|
||||
|
||||
| Action | Owner | Due |
|
||||
| --- | --- | --- |
|
||||
| When the scoped workflow is removed, mark ADR-0004 superseded by ADR-0009 for the delivery and marker parts (new version row and review record) | S01 | the follow-up milestone |
|
||||
|
||||
---
|
||||
|
||||
---
|
||||
|
||||
[ADR-0009]: ../../adr/adr-0009-wiki-publishing-reusable-workflow.md
|
||||
[QC-ADR-001]: ../../../framework/qc/artifacts/qc-adr.md
|
||||
[8c2c52e]: https://git.tirsystem.com/TirSystem/github-action/commit/8c2c52ebd2a27e4d0edb4008c31c002718d280fb
|
||||
@@ -0,0 +1,63 @@
|
||||
# Review Record: MIL-009 and PP-001 (MIL-009)
|
||||
|
||||
## Metadata
|
||||
| Key | Value |
|
||||
| --- | --- |
|
||||
| ID | RC-064 |
|
||||
| CrossReference | [MIL-009], [PP-001], [BC-001], [QC-MIL-001] |
|
||||
|
||||
## Version History
|
||||
| Date | Status | Author | Reviewer | Change | Commit |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
| 2026-10-14 | Accepted | Jens Tirsvad Nielsen | AI as stand-in for S01 | Initial version; accepted | [86e69ce] |
|
||||
|
||||
---
|
||||
|
||||
## Artifact Under Review
|
||||
|
||||
- Instance reviewed: [MIL-009]; delta of [PP-001] for the added milestone
|
||||
- Checklist used: [QC-MIL-001] for the milestone; for the plan, the criteria of `PP.md` (no QC checklist exists for PP-001)
|
||||
- Scope: full review of MIL-009; delta re-review of PP-001, earlier record RC-062
|
||||
- Language and domain: n/a (technical type)
|
||||
- Mode: autonomous, not independent (the reviewer is `AI as stand-in for S01`; the user accepted the plan in chat on 2026-10-14 with the defaults)
|
||||
|
||||
## Checklist Results
|
||||
|
||||
| # | Criterion | Status | Evidence/Notes |
|
||||
| --- | --- | --- | --- |
|
||||
| 1 | A concrete deliverable is defined for every gate | Pass | MIL-009 lists the released framework, seven callers, the removals, the superseded ADR and 2.0.0. |
|
||||
| 2 | Explicit Go/No-Go criteria are stated for each gate | Pass | Seven criteria with checkable Go and No-Go (tag, callers, read-backs, scan, removal, ADR rows, tags). |
|
||||
| 3 | Dependencies on other milestones are explicitly mapped | Pass | MIL-008 and the framework release; in the plan's Dependencies diagram (`MIL-008 -> MIL-009`). |
|
||||
| 4 | Each milestone is traceable to a Business Case objective or KPI | Pass | O2, O3 of [BC-001]. |
|
||||
| 5 | Milestone owner and approving reviewer are identified | Pass | Owner S05, approving reviewer S01. |
|
||||
| 6 | Milestone has a defined target date consistent with project constraints | Pass | 2026-11-30 is proposed and equals the plan's decision date; the Business Case sets no deadline. S01 has not confirmed it, as MIL-009 and the plan say; this is an action item. |
|
||||
|
||||
## Plan delta (PP-001)
|
||||
|
||||
| # | Criterion | Status | Evidence/Notes |
|
||||
| --- | --- | --- | --- |
|
||||
| 1 | Every milestone has a `MIL-*` document and the plan's dates equal that document's target date | Pass | MIL-001 to MIL-009 exist; the MIL-009 decision date equals its Target Date. |
|
||||
| 2 | Every Business Case scope item is covered by a gateway | Pass | Scope Coverage names MIL-009 for the removal of the scoped publisher. |
|
||||
| 3 | The schedule respects the Business Case constraints | Pass | No deadline in the Business Case; the window follows MIL-008. |
|
||||
| 4 | Dependencies between milestones are stated | Pass | `MIL-006 -> MIL-008 -> MIL-009`. |
|
||||
| 5 | Every gateway has an owner who is a stakeholder ID | Pass | S05. |
|
||||
| 6 | Plan content is internally consistent | Pass | "Nine milestones", the assumptions, the Gantt, the schedule and the coverage agree. |
|
||||
| 7 | Open Issues are current | Pass | A plan risk was added for missing organisation secrets and failed first runs. |
|
||||
|
||||
## Overall Verdict
|
||||
|
||||
Go - all criteria pass. The user switched to autonomous mode and accepted the plan in chat on 2026-10-14 with the defaults (target date 2026-11-30, no publishing for `027-sandbox` and `028-pomodoro`, framework release 0.7.0); the AI records the acceptance as stand-in for S01. There is no independent reader and the decision stays open to challenge in the run summary.
|
||||
|
||||
## Action Items
|
||||
|
||||
| Action | Owner | Due |
|
||||
| --- | --- | --- |
|
||||
| Check that `TirSystem-BashScript` has its own `TOKEN_FOR_GITEA_WIKI` (S03); stop and report if it does not | S03 | MIL-009 task 3 |
|
||||
|
||||
---
|
||||
|
||||
[MIL-009]: ../../milestones/mil-009-migrate-wiki-callers-and-remove-scoped-workflow.md
|
||||
[PP-001]: ../../project-plan.md
|
||||
[BC-001]: ../../business-case.md
|
||||
[QC-MIL-001]: ../../../framework/qc/artifacts/qc-milestones-gateways.md
|
||||
[86e69ce]: https://git.tirsystem.com/TirSystem/github-action/commit/86e69ce85df72ea3caed40253e08231c73187fde
|
||||
@@ -4,13 +4,13 @@
|
||||
| Key | Value |
|
||||
| --- | --- |
|
||||
| ID | TM-001 |
|
||||
| CrossReference | [BC-001], [SA-001], [PP-001], [MIL-001], [MIL-002], [MIL-003], [MIL-004], [MIL-005], [MIL-006], [MIL-007], [MIL-008], [RC-001], [RC-002], [RC-003], [RC-004], [RC-005], [RC-006], [RC-007], [RC-008], [RC-009], [RC-010], [RC-011], [RC-012], [RC-013], [RC-014], [RC-015], [RC-016], [RC-017], [RC-018], [RC-019], [RC-020], [RC-021], [RC-022], [RC-023], [RC-024], [RC-025], [RC-026], [RC-027], [RC-028], [RC-029], [RC-030], [RC-031], [RC-032], [RC-033], [RC-034], [RC-035], [RC-036], [RC-037], [RC-038], [RC-039], [RC-040], [RC-041], [RC-042], [RC-043], [RC-044], [RC-045], [RC-046], [RC-047], [RC-048], [RC-049], [RC-050], [RC-051], [RC-052], [RC-053], [RC-054], [RC-055], [RC-056], [RC-057], [RC-058], [RC-059], [RC-060], [ADR-0007], [ADR-0008], [UC-007], [UC-006], [ADR-0006], [UC-005], [ADR-0005], [UCD-001], [US-001], [UC-001], [UC-002], [UC-003], [UC-004], [ADR-0001], [ADR-0002], [ADR-0003], [ADR-0004] |
|
||||
| CrossReference | [BC-001], [SA-001], [PP-001], [MIL-001], [MIL-002], [MIL-003], [MIL-004], [MIL-005], [MIL-006], [MIL-007], [MIL-008], [MIL-009], [RC-001], [RC-002], [RC-003], [RC-004], [RC-005], [RC-006], [RC-007], [RC-008], [RC-009], [RC-010], [RC-011], [RC-012], [RC-013], [RC-014], [RC-015], [RC-016], [RC-017], [RC-018], [RC-019], [RC-020], [RC-021], [RC-022], [RC-023], [RC-024], [RC-025], [RC-026], [RC-027], [RC-028], [RC-029], [RC-030], [RC-031], [RC-032], [RC-033], [RC-034], [RC-035], [RC-036], [RC-037], [RC-038], [RC-039], [RC-040], [RC-041], [RC-042], [RC-043], [RC-044], [RC-045], [RC-046], [RC-047], [RC-048], [RC-049], [RC-050], [RC-051], [RC-052], [RC-053], [RC-054], [RC-055], [RC-056], [RC-057], [RC-058], [RC-059], [RC-060], [RC-061], [RC-062], [RC-063], [RC-064], [ADR-0007], [ADR-0008], [ADR-0009], [UC-007], [UC-006], [ADR-0006], [UC-005], [ADR-0005], [UCD-001], [US-001], [UC-001], [UC-002], [UC-003], [UC-004], [ADR-0001], [ADR-0002], [ADR-0003], [ADR-0004] |
|
||||
|
||||
## Version History
|
||||
| Date | Status | Author | Reviewer | Change | Commit |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
| 2026-10-13 | Proposed | Jens Tirsvad Nielsen | S01 | Added RC-059 (MIL-007 task 7 results) | [2481c26] |
|
||||
| 2026-10-13 | Proposed | Jens Tirsvad Nielsen | S01 | Added MIL-008, RC-060 and RC-061 | [01b9c29] |
|
||||
| 2026-10-13 | Proposed | Jens Tirsvad Nielsen | S01 | Added MIL-009 and RC-064 (the MIL-009 plan row) | [86e69ce] |
|
||||
| 2026-10-14 | Proposed | Jens Tirsvad Nielsen | S01 | MIL-009, PP-001 and RC-064 accepted | [2f267df] |
|
||||
|
||||
---
|
||||
|
||||
@@ -26,7 +26,7 @@ updated whenever an artifact instance is created or reviewed.
|
||||
| --- | --- | --- | --- | --- |
|
||||
| [SA-001] | SA | - | [BC-001], [UCD-001] | [RC-004] |
|
||||
| [BC-001] | BC | [SA-001] | [PP-001], [MIL-001], [MIL-002], [MIL-003], [MIL-004], [MIL-005], [MIL-006] | [RC-001], [RC-008] |
|
||||
| [PP-001] | PP | [BC-001], [SA-001] | [MIL-001], [MIL-002], [MIL-003], [MIL-004], [MIL-005], [MIL-006], [MIL-007], [US-001] | [RC-002], [RC-009], [RC-015], [RC-017], [RC-025], [RC-032], [RC-053] |
|
||||
| [PP-001] | PP | [BC-001], [SA-001] | [MIL-001], [MIL-002], [MIL-003], [MIL-004], [MIL-005], [MIL-006], [MIL-007], [MIL-008], [MIL-009], [US-001] | [RC-002], [RC-009], [RC-015], [RC-017], [RC-025], [RC-032], [RC-053], [RC-062], [RC-064] |
|
||||
| [MIL-001] | MIL | [BC-001], [PP-001] | [MIL-002] | [RC-003], [RC-026] |
|
||||
| [MIL-002] | MIL | [BC-001], [PP-001], [MIL-001] | [MIL-003], [MIL-005] | [RC-005], [RC-027] |
|
||||
| [MIL-003] | MIL | [BC-001], [PP-001], [MIL-002] | [MIL-004] | [RC-006], [RC-028], [RC-033], [RC-039] |
|
||||
@@ -40,7 +40,8 @@ updated whenever an artifact instance is created or reviewed.
|
||||
| [MIL-005] | MIL | [BC-001], [PP-001], [MIL-002] | [MIL-006] | [RC-010], [RC-011], [RC-030], [RC-050] |
|
||||
| [MIL-006] | MIL | [BC-001], [PP-001], [MIL-002], [MIL-005] | - | [RC-016], [RC-031], [RC-049], [RC-058] |
|
||||
| [MIL-007] | MIL | [BC-001], [PP-001], [MIL-003], [MIL-004], [ADR-0008] | - | [RC-052], [RC-055], [RC-059] |
|
||||
| [MIL-008] | MIL | [BC-001], [MIL-006], [ADR-0004] | - | [RC-060], [RC-061] |
|
||||
| [MIL-008] | MIL | [BC-001], [PP-001], [MIL-006], [ADR-0004] | [MIL-009] | [RC-060], [RC-061] |
|
||||
| [MIL-009] | MIL | [BC-001], [PP-001], [MIL-008], [ADR-0004], [ADR-0006], [ADR-0009] | - | [RC-064] |
|
||||
| [RC-007] | RC | [MIL-004] | - | - |
|
||||
| [RC-008] | RC | [BC-001] | - | - |
|
||||
| [RC-009] | RC | [PP-001] | - | - |
|
||||
@@ -69,6 +70,7 @@ updated whenever an artifact instance is created or reviewed.
|
||||
| [ADR-0006] | ADR | [MIL-004], [UC-006], [US-001], [ADR-0004], [ADR-0005] | - | [RC-043] |
|
||||
| [ADR-0007] | ADR | [MIL-004], [UC-006], [ADR-0006] | - | [RC-047] |
|
||||
| [ADR-0008] | ADR | [MIL-007], [UC-005], [US-001], [ADR-0005], [ADR-0006] | - | [RC-054] |
|
||||
| [ADR-0009] | ADR | [MIL-008], [ADR-0003], [ADR-0004], [ADR-0005], [ADR-0006] | - | [RC-063] |
|
||||
| [UC-007] | UC | [UCD-001], [US-001], [SA-001] | - | [RC-044] |
|
||||
| [RC-019] | RC | [UCD-001] | - | - |
|
||||
| [RC-020] | RC | [US-001] | - | - |
|
||||
@@ -113,6 +115,9 @@ updated whenever an artifact instance is created or reviewed.
|
||||
| [RC-059] | RC | [MIL-007] | - | - |
|
||||
| [RC-060] | RC | [MIL-008] | - | - |
|
||||
| [RC-061] | RC | [MIL-008] | - | - |
|
||||
| [RC-062] | RC | [PP-001] | - | - |
|
||||
| [RC-063] | RC | [ADR-0009] | - | - |
|
||||
| [RC-064] | RC | [MIL-009], [PP-001] | - | - |
|
||||
|
||||
## Coverage Notes
|
||||
|
||||
@@ -134,6 +139,7 @@ updated whenever an artifact instance is created or reviewed.
|
||||
[MIL-006]: ../milestones/mil-006-shared-wiki-publishing.md
|
||||
[MIL-007]: ../milestones/mil-007-cpp-csharp-quality-checks.md
|
||||
[MIL-008]: ../milestones/mil-008-wiki-reusable-workflow.md
|
||||
[MIL-009]: ../milestones/mil-009-migrate-wiki-callers-and-remove-scoped-workflow.md
|
||||
[RC-001]: ./reviews/rc-001-business-case.md
|
||||
[RC-002]: ./reviews/rc-002-project-plan.md
|
||||
[RC-003]: ./reviews/rc-003-mil-001.md
|
||||
@@ -205,7 +211,11 @@ updated whenever an artifact instance is created or reviewed.
|
||||
[RC-059]: ./reviews/rc-059-mil-007-adoption.md
|
||||
[RC-060]: ./reviews/rc-060-mil-008-plan.md
|
||||
[RC-061]: ./reviews/rc-061-mil-008-task-5-deferred.md
|
||||
[RC-062]: ./reviews/rc-062-pp-001-mil-008.md
|
||||
[RC-063]: ./reviews/rc-063-adr-0009.md
|
||||
[RC-064]: ./reviews/rc-064-mil-009-plan.md
|
||||
[ADR-0008]: ../adr/adr-0008-cpp-csharp-quality-check-contract.md
|
||||
[ADR-0009]: ../adr/adr-0009-wiki-publishing-reusable-workflow.md
|
||||
[ADR-0007]: ../adr/adr-0007-release-publish-destination.md
|
||||
[UC-007]: ../uc-007/uc.md
|
||||
[UC-006]: ../uc-006/uc.md
|
||||
@@ -214,5 +224,5 @@ updated whenever an artifact instance is created or reviewed.
|
||||
[ADR-0005]: ../adr/adr-0005-quality-check-contract.md
|
||||
[faf13b2]: https://git.tirsystem.com/TirSystem/github-action/commit/faf13b2c2a4901c0171977de1ffc2841023f537a
|
||||
[1bc56f8]: https://git.tirsystem.com/TirSystem/github-action/commit/1bc56f8b771531f221f218fc00b147ecc73c051e
|
||||
[2481c26]: https://git.tirsystem.com/TirSystem/github-action/commit/2481c26d802464decd51d75539157093b60e08e8
|
||||
[01b9c29]: https://git.tirsystem.com/TirSystem/github-action/commit/01b9c2972b4317bcc590540010aea0eaf7f30014
|
||||
[86e69ce]: https://git.tirsystem.com/TirSystem/github-action/commit/86e69ce85df72ea3caed40253e08231c73187fde
|
||||
[2f267df]: https://git.tirsystem.com/TirSystem/github-action/commit/2f267df2a270087cb7dc482af4ce4f4341e97b03
|
||||
|
||||
Reference in New Issue
Block a user