Merge pull request 'docs: report AeroSim delivery progress' (#21) from docs/aerosim-delivery-progress into main
Build and publish Corp v1 Board portal / build (push) Successful in 50s

This commit was merged in pull request #21.
This commit is contained in:
2026-09-03 12:19:57 -07:00
2 changed files with 35 additions and 2 deletions
+14 -2
View File
@@ -48,10 +48,22 @@ A playable MVP covering a light trainer, commercial airliner, and fighter-style
- Project organization: [corp-v1-aerosim](https://gitea.lego-cloud.eu/corp-v1-aerosim) - Project organization: [corp-v1-aerosim](https://gitea.lego-cloud.eu/corp-v1-aerosim)
- Skills organization: [corp-v1-aerosim-skills-code-agent](https://gitea.lego-cloud.eu/corp-v1-aerosim-skills-code-agent) - Skills organization: [corp-v1-aerosim-skills-code-agent](https://gitea.lego-cloud.eu/corp-v1-aerosim-skills-code-agent)
- [Application repository](https://gitea.lego-cloud.eu/corp-v1-aerosim/corp-v1-aerosim) — `test` at `14b5c0e8f25215d8bb4f41edcc0cdff4a87c342c` - [Application repository](https://gitea.lego-cloud.eu/corp-v1-aerosim/corp-v1-aerosim) — `test` at `58d33ffbd3ca21ffdc5882a75de8fe71c25188b6`
- [Documentation repository](https://gitea.lego-cloud.eu/corp-v1-aerosim/corp-v1-aerosim-documentation) — `test` at `5f674525f6c8b5ce29fe2653350c6188fb97ea01` - [Documentation repository](https://gitea.lego-cloud.eu/corp-v1-aerosim/corp-v1-aerosim-documentation) — `test` at `29d5e7810e63f3407f62730c1b2c71bc0644310b`
- [Published documentation](https://pages.apps.lego-cloud.eu/corp-v1-aerosim/corp-v1-aerosim-documentation/) — protected by the existing Keycloak access layer - [Published documentation](https://pages.apps.lego-cloud.eu/corp-v1-aerosim/corp-v1-aerosim-documentation/) — protected by the existing Keycloak access layer
## Delivery progress checkpoint — 2026-09-03
Release `1.0.0` contains 114 Tasks. Progress is reported by lifecycle checkpoint rather than collapsing implementation and release into one percentage.
| Measure | Progress | Meaning |
|---|---:|---|
| Canonical `ToBeReleased` | 4 / 114 (3.5%) | `TASK-0001`, `TASK-0008`, `TASK-0011`, and `TASK-0014` have reviewed implementation, merged application changes, successful integrated CI, and reconciled canonical delivery evidence. |
| Repository-verified implementation | 5 / 114 (4.4%) | The four canonical Tasks plus `TASK-0015`, merged through application PR #13 at application `test` SHA `58d33ffbd3ca21ffdc5882a75de8fe71c25188b6`; its canonical task-history reconciliation is pending completion of the active Wave 2 delivery. |
| Released | 0 / 114 (0%) | No Release `1.0.0` artifact has been approved and released. `ToBeReleased` is not release authorization. |
Wave 1 is implemented and reconciled. Wave 2 is active: `TASK-0015` is integrated, while `TASK-0012`, `TASK-0073`, and `TASK-0114` remain under automated review and repair. The authoritative task-level lifecycle remains in the [AeroSim documentation](https://pages.apps.lego-cloud.eu/corp-v1-aerosim/corp-v1-aerosim-documentation/); this Board record is a dated portfolio checkpoint, not a second task database.
## Discord ## Discord
Exactly seven same-project channels exist in dedicated category `corp-v1-aerosim` (`1542627633123299359`), in lifecycle order: Exactly seven same-project channels exist in dedicated category `corp-v1-aerosim` (`1542627633123299359`), in lifecycle order:
+21
View File
@@ -57,6 +57,27 @@ for (const memberId of ['1518725627845283888', '476287310627864587', '7731098554
assert.match(board, /Only these Board members may approve a project kickoff or project closure/i); assert.match(board, /Only these Board members may approve a project kickoff or project closure/i);
assert.match(board, /Only these Board members may approve changes to `corp-v1--main`/i); assert.match(board, /Only these Board members may approve changes to `corp-v1--main`/i);
const aerosimProject = read('docs/projects/aerosim.md');
for (const marker of [
'Delivery progress checkpoint — 2026-09-03',
'4 / 114',
'3.5%',
'5 / 114',
'4.4%',
'0 / 114',
'TASK-0015',
'PR #13',
'58d33ffbd3ca21ffdc5882a75de8fe71c25188b6',
'29d5e7810e63f3407f62730c1b2c71bc0644310b',
]) {
assert.ok(aerosimProject.includes(marker), `AeroSim progress checkpoint is missing: ${marker}`);
}
assert.match(aerosimProject, /Released[^\n]*0\s*\/\s*114[^\n]*0%/i, 'AeroSim must distinguish released progress');
assert.match(aerosimProject, /ToBeReleased[^\n]*4\s*\/\s*114[^\n]*3\.5%/i, 'AeroSim must expose canonical delivery completion');
assert.match(aerosimProject, /repository-verified[^\n]*5\s*\/\s*114[^\n]*4\.4%/i, 'AeroSim must expose pending-reconciliation implementation evidence');
assert.doesNotMatch(aerosimProject, /Application repository[^\n]*14b5c0e8f25215d8bb4f41edcc0cdff4a87c342c/, 'stale AeroSim application SHA must not remain');
assert.doesNotMatch(aerosimProject, /Documentation repository[^\n]*5f674525f6c8b5ce29fe2653350c6188fb97ea01/, 'stale AeroSim documentation SHA must not remain');
const lifecycle = read('docs/governance/project-lifecycle.md'); const lifecycle = read('docs/governance/project-lifecycle.md');
assert.match(lifecycle, /Board approval/i, 'project lifecycle must require Board approval'); assert.match(lifecycle, /Board approval/i, 'project lifecycle must require Board approval');
assert.match(lifecycle, /central project-channel reference skill/i, 'lifecycle must govern central channel-reference skill changes'); assert.match(lifecycle, /central project-channel reference skill/i, 'lifecycle must govern central channel-reference skill changes');