Commit Graph
313 Commits
Author SHA1 Message Date
Tirsvad b8e63d0a29 Add the comment extractor and the language detector of the English-comments check
tools/english_comments.py reads the comments and docstrings of the languages of
ADR-0010 (the scanner of count_loc.py now returns the comment text), joins the
lines of a block, removes everything that is not a word and judges the block
with langid (ADR-0012). It checks the lines a branch adds, or every tracked
file, honours an ignore marker and an allowed-words file, and prints each
finding as an annotation. The rates of the corpus are tests.

Refs #199
Refs #200
Refs #203
Task: MIL-013#3
Task: MIL-013#4
2026-10-19 12:34:00 +08:00
Tirsvad 7d8cc4522e Choose the detection method for the English-comments check (ADR-0012)
Compares a rule-based method, langdetect, langid and lingua on the corpus.
langid with a pre-filter and a 0.6 threshold flags 0 of 300 English comments,
44/45 Danish and 41/45 Malay. The comparison script is kept next to the corpus.

Refs #198
Task: MIL-013#2
2026-10-19 12:21:23 +08:00
Tirsvad 0603c61602 Add the labelled comment corpus for the English-comments check
300 English comments from this repository and 138 comments in Danish, Bahasa
Malaysia, German, Swedish, Norwegian and French, written for the purpose and
not checked by a native reader. The detection method is measured on it.

Refs #197
Task: MIL-013#1
2026-10-19 12:21:22 +08:00
Tirsvad 51af1466e0 Merge pull request 'Plan MIL-013: source code comments are in English' (#196) from mil-013-english-comments-plan into main
Publish accepted milestones / publish (push) Successful in 1m31s
Validate workflows / validate (push) Successful in 44s
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 6s
Reviewed-on: #196
2026-10-19 06:16:52 +02:00
Tirsvad ff292e2938 Resolve pending commit links for MIL-013
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Validate workflows / validate (pull_request) Successful in 39s
2026-10-19 12:15:13 +08:00
Tirsvad e35b1c5674 Plan MIL-013: source code comments are in English
Adds MIL-013 (accepted, RC-083), objective O7 to the Business Case (RC-084),
the schedule row, risk and dependency to the Project Plan, and the
traceability rows. No code is added by this commit.
2026-10-19 12:15:10 +08:00
Tirsvad 5dedb0ee9b Merge pull request 'Fix the review findings of the VPN actions, lint them in CI, record MIL-012 results' (#195) from mil-012-review-fixes-and-docs into main
Publish accepted milestones / publish (push) Successful in 59s
Validate workflows / validate (push) Successful in 38s
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 5s
Reviewed-on: #195
2026-10-19 06:08:11 +02:00
Tirsvad b75ed03d3f Resolve pending commit links for MIL-012 results
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Validate workflows / validate (pull_request) Successful in 40s
2026-10-19 12:01:24 +08:00
Tirsvad 3325bea772 Record the MIL-012 results of tasks 1 and 6, ADR-0011 and RC-082
Task 1: both forms of uses: resolve a subfolder action at main. Adds ADR-0011
(Proposed, not yet reviewed), the review record RC-082 for the milestone
results, and the traceability rows.

Refs #182
Refs #190
2026-10-19 12:01:18 +08:00
Tirsvad a91e0233c1 Lint the shell scripts of the actions in the validation run
tools/lint-action-scripts.sh runs shellcheck and shfmt on actions/**/*.sh with
pinned tools; validate-workflows.yml runs it, and .editorconfig sets the shell
format. The tests show a shellcheck problem and a badly formatted script fail.

Refs #187
Task: MIL-012#6
2026-10-19 12:01:11 +08:00
Tirsvad 7a30560a74 Fix the review findings in connect-tailscale
tailscaled is waited for before tailscale up, a tailscaled that already runs on
the runner is not taken over and down leaves a daemon it did not start, sudo is
used only when the job is not root, an exact version is required to install
(with an optional sha256 of the archive), and the guide states when the node is
ephemeral and calls @main until the release.

Refs #185
Task: MIL-012#4
2026-10-19 12:01:06 +08:00
Tirsvad 9e1cfa5fa8 Fix the review findings in connect-wireguard
The wireguard-go choice now survives sudo (it is passed through env), sudo is
used only when the job is not root, a configuration field with a line break is
refused, only the key values of a full configuration are masked, the key file
is removed when wg-quick fails, and the guide calls @main until the release.

Refs #184
Task: MIL-012#3
2026-10-19 12:01:00 +08:00
Tirsvad f0d9d79f4c Merge pull request 'Add the connect-wireguard and connect-tailscale actions (MIL-012, unverified on a runner)' (#194) from wireguard-vpn-action into main
Validate workflows / validate (push) Successful in 36s
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 5s
Reviewed-on: #194
2026-10-19 05:27:01 +02:00
Tirsvad 2689264500 Note the two VPN actions in the changelog under Unreleased
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Validate workflows / validate (pull_request) Successful in 39s
Refs #188
Task: MIL-012#7
2026-10-19 11:24:39 +08:00
Tirsvad 8eaba331ec Add the connect-tailscale composite action for Gitea (not yet verified on a runner)
actions/connect-tailscale joins a Tailscale network for a deployment job, with
a guide and offline tests. Whether tailscaled survives to the next step is
still open (MIL-012 task 4).

Refs #185
Task: MIL-012#4
2026-10-19 11:24:36 +08:00
Tirsvad fce3cf8c6b Add the connect-wireguard composite action for Gitea (not yet verified on a runner)
actions/connect-wireguard brings a WireGuard tunnel up for a deployment job and
takes it down again, with a guide and offline tests. The runs on a real runner
(MIL-012 task 3) are still to do.

Refs #184
Task: MIL-012#3
2026-10-19 11:24:33 +08:00
Tirsvad 54e83770a5 Merge pull request 'Plan MIL-012: VPN actions for deployment (WireGuard and Tailscale)' (#181) from wireguard-vpn-action into main
Publish accepted milestones / publish (push) Successful in 1m20s
Validate workflows / validate (push) Successful in 34s
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 6s
Reviewed-on: #181
2026-10-19 04:49:02 +02:00
Tirsvad 8e093821f1 Resolve pending commit links for MIL-012
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Validate workflows / validate (pull_request) Successful in 30s
2026-10-19 10:38:02 +08:00
Tirsvad c5d5941869 Plan MIL-012: VPN actions for deployment (WireGuard and Tailscale)
Adds MIL-012 (accepted, RC-080), objective O6 to the Business Case (RC-081),
the schedule row, risk and dependency to the Project Plan, and the
traceability rows. The action code on this branch is not part of this commit.
2026-10-19 10:37:56 +08:00
Tirsvad 241c26432b Merge pull request 'MIL-011 outcome: release 2.1.1, the framework page and RC-079' (#180) from mil-011-close into main
Publish accepted milestones / publish (push) Successful in 53s
Validate workflows / validate (push) Successful in 31s
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 5s
Reviewed-on: #180
2026-10-14 11:56:41 +02:00
Tirsvad 251e18dfc3 Resolve pending commit links for RC-079
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Validate workflows / validate (pull_request) Successful in 36s
2026-10-14 17:30:49 +08:00
Tirsvad 4aa3fd38f9 MIL-011 outcome: release 2.1.1 and the framework page, RC-079
The Release workflow created v2.1.1 and moved v2 (v1 unchanged); a call
at @v2 with the defaults ran after the release (run 1526). The
framework Badges page has no tools-ref workaround (framework pull
request 57). RC-079: Go, all eight criteria pass.
2026-10-14 17:30:48 +08:00
Tirsvad 302346103e Merge pull request 'Release 2.1.1: changelog entry' (#179) from release-2.1.1 into main
Validate workflows / validate (push) Successful in 37s
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 8s
Reviewed-on: #179
v2.1.1 v2
2026-10-14 11:20:15 +02:00
Tirsvad 469edab57b Release 2.1.1: changelog entry
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Validate workflows / validate (pull_request) Successful in 36s
2026-10-14 17:19:27 +08:00
Tirsvad 49af328232 Merge pull request 'MIL-011 tasks 2 to 5: the default tools-ref is the current major' (#178) from mil-011-fix into main
Publish wiki / publish-wiki (push) Successful in 23s
Publish own wiki / wiki (push) Successful in 23s
Publish accepted milestones / publish (push) Successful in 56s
Validate workflows / validate (push) Successful in 38s
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 6s
Reviewed-on: #178
2026-10-14 11:17:50 +02:00
Tirsvad 604d4c2d0c Resolve pending commit links for MIL-011
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Validate workflows / validate (pull_request) Successful in 31s
2026-10-14 17:13:23 +08:00
Tirsvad a6892c372a MIL-011 tasks 5 and 9: results of the run on the instance, RC-078
The fixed workflow at the branch, with every input at its default, ran
as run 1509: tools-ref resolved to v2, the scripts were fetched and the
badges were committed. RC-078 reviews the deliverables of tasks 2 to 5:
Go; criteria 6 to 8 stay open until the release and the framework page.
2026-10-14 17:13:20 +08:00
Tirsvad eaa0e30bea MIL-011 tasks 2 to 4: the default tools-ref is the current major
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
code-metrics.yml defaulted tools-ref to v1 and its guide said @v1, but
the workflow and its scripts exist only from v2.1.0. The default of the
five reusable workflows is now the current major, defined once in
MAJOR_TAG, and tests/test_tools_ref.py fails when a default differs from
it or names a tag without the script. Guides, README and wiki (en, da,
ms) call code-metrics.yml at @v2; ADR-0005, 0008, 0009 and 0010 carry
an amendment; RC-077 accepts the milestone's task 1 results.

Task: MIL-011#2
2026-10-14 17:09:34 +08:00
Tirsvad 76f6b56f8d Merge pull request 'MIL-011 task 1: reproduce the defect and list the defaults' (#177) from mil-011-task-1 into main
Publish accepted milestones / publish (push) Successful in 1m6s
Validate workflows / validate (push) Successful in 28s
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 5s
Reviewed-on: #177
2026-10-14 11:02:14 +02:00
Tirsvad 49d27f98db Resolve pending commit link for MIL-011
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Validate workflows / validate (pull_request) Successful in 31s
2026-10-14 16:34:18 +08:00
Tirsvad e11c43f0a4 MIL-011 task 1: reproduce the defect and list the defaults
On a throwaway branch, code-metrics.yml at @v2 with the defaults fails
in "Validate the inputs" (tools/code-metrics.sh absent at v1, run 1499),
and a call at @v1 creates no run at all. Of the five reusable workflows
only code-metrics.yml names a tag without its script.
2026-10-14 16:34:17 +08:00
Tirsvad 04f98c2e4e Merge pull request 'Review and accept MIL-011 (RC-076)' (#167) from mil-011-code-metrics-defaults into main
Publish accepted milestones / publish (push) Successful in 53s
Validate workflows / validate (push) Successful in 29s
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 6s
Reviewed-on: #167
2026-10-14 10:05:07 +02:00
Tirsvad 60da2583d1 Resolve pending commit links for RC-076
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Validate workflows / validate (pull_request) Successful in 32s
2026-10-14 16:00:05 +08:00
Tirsvad 3d7a9df3a3 Review and accept MIL-011 (RC-076)
First read found three corrections: the wording of O5 in the
traceability, "ten milestones" in the plan's purpose, and a scope row that
is not a Business Case item. Go; accepted by the author as stand-in for
S01, not independent. MIL-011 and its plan row are Accepted; the
traceability matrix has the new rows.
2026-10-14 16:00:04 +08:00
Tirsvad 0027da529c Merge pull request 'Plan MIL-011: fix the defaults of the code metrics workflow' (#166) from mil-011-code-metrics-defaults into main
Validate workflows / validate (push) Successful in 37s
Publish accepted milestones / publish (push) Successful in 48s
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 5s
Reviewed-on: #166
2026-10-14 09:58:30 +02:00
Tirsvad 60f39e3854 Resolve pending commit links for MIL-011
Validate workflows / validate (pull_request) Successful in 31s
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
2026-10-14 15:57:20 +08:00
Tirsvad 02e3794d7b Plan MIL-011: fix the defaults of the code metrics workflow
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Release 2.1.0 documents code-metrics.yml at @v1 and defaults tools-ref to
v1, but the workflow and its scripts exist only from v2.1.0. MIL-011
plans the fix (a patch release 2.1.1), the test that would have caught
it, the guide and wiki corrections, and the removal of the workaround
from the framework Badges page. Proposed; no code changes yet.
2026-10-14 15:57:16 +08:00
Tirsvad ae04bc759f Merge pull request 'MIL-010: release 2.1.0 and outcome review RC-075' (#165) from mil-010-outcome into main
Publish wiki / publish-wiki (push) Successful in 11s
Publish own wiki / wiki (push) Successful in 11s
Publish accepted milestones / publish (push) Successful in 46s
Validate workflows / validate (push) Successful in 29s
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 8s
Reviewed-on: #165
2026-10-14 09:13:28 +02:00
Tirsvad 62d280f07f Resolve pending commit links
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Validate workflows / validate (pull_request) Successful in 31s
2026-10-14 15:10:33 +08:00
Tirsvad aa20e56110 MIL-010 task 9: release 2.1.0, outcome review RC-075
Task: MIL-010#9
Refs #163
2026-10-14 15:10:32 +08:00
Tirsvad 16faffaf13 Merge pull request 'MIL-010: code metrics and coverage badges workflow' (#164) from mil-010-implementation into main
Publish accepted milestones / publish (push) Successful in 55s
Validate workflows / validate (push) Successful in 33s
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 6s
Publish wiki / publish-wiki (push) Successful in 22s
Publish own wiki / wiki (push) Successful in 22s
Reviewed-on: #164
v2.1.0
2026-10-14 08:59:20 +02:00
Tirsvad a795f3b03e Re-run the checks: the status of the previous head stayed pending
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Validate workflows / validate (pull_request) Successful in 32s
2026-10-14 14:10:45 +08:00
Tirsvad 292886531e Resolve pending commit links
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Validate workflows / validate (pull_request) Successful in 28s
2026-10-14 14:05:29 +08:00
Tirsvad 5c5a1d19d9 MIL-010 task 8: adoption in a throwaway repository, results and RC-074; release entry 2.1.0
Task: MIL-010#8
Refs #162
2026-10-14 14:05:20 +08:00
Tirsvad 95f9577a14 MIL-010 task 7: guide, README, wiki pages in three languages
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Skipped
Task: MIL-010#7
Refs #161
2026-10-14 13:56:49 +08:00
Tirsvad 0dc5132a2e MIL-010 task 6: the coverage report reaches the workflow as an artifact (ADR-0010, RC-073)
Task: MIL-010#6
Refs #160
2026-10-14 13:54:01 +08:00
Tirsvad 4fc0a8cab3 MIL-010 task 6: reusable workflow code-metrics.yml and tools/code-metrics.sh
Task: MIL-010#6
Refs #160
2026-10-14 13:50:34 +08:00
Tirsvad 5bc14d789d MIL-010 tasks 4 and 5: counter, coverage reader and badge renderer
Task: MIL-010#4
Task: MIL-010#5
Refs #158
Refs #159
2026-10-14 13:48:04 +08:00
Tirsvad 6c3544837c MIL-010 task 3: results of the delivery check
Refs #157
2026-10-14 13:44:34 +08:00
Tirsvad aa4ca0f897 MIL-010 task 2: ADR-0010, the contract of the code metrics badges (RC-072)
Refs #156
2026-10-14 13:43:15 +08:00