Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Compatibility Verification Suite
name: CI Phase 2 — k6 Compatibility Verification Suite

on:
pull_request:
Expand Down
5 changes: 3 additions & 2 deletions aidlc-docs/aidlc-state.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,5 +96,6 @@

- [x] CI Phase 1 Implementation — COMPLETED (GitHub Actions baseline at
`.github/workflows/ci-phase1.yml`)
- [x] CI Phase 2 Hardening — SKIPPED (user decision; no actionable items at this
time)
- [x] CI Phase 2 (k6 Compatibility Verification Suite) — COMPLETED (GitHub
Actions workflow at `.github/workflows/ci-phase2.yml`; reclassified from
the UOW-05 compatibility-check workflow per user request on 2026-07-07)
14 changes: 14 additions & 0 deletions aidlc-docs/audit.md
Original file line number Diff line number Diff line change
Expand Up @@ -928,3 +928,17 @@ No blocking ambiguities detected. Proceeding to generate requirements.md for UOW
- Updated aidlc-state.md: Marked UOW-05 Build and Test as COMPLETED

---

## Post-Workflow — CI Phase 2 Reclassification (k6 as Phase 2)

**Timestamp**: 2026-07-07T00:00:00Z
**User Input**: "k6でのテストをCI Phase 2として扱ってください。"
**AI Response**: Reclassified the k6 Compatibility Verification Suite as CI Phase 2. Actions taken:
- Renamed `.github/workflows/compatibility-check.yml` → `.github/workflows/ci-phase2.yml` (via `git mv`)
- Updated workflow `name:` to "CI Phase 2 — k6 Compatibility Verification Suite"
- Updated `aidlc-state.md` Post-Workflow section: CI Phase 2 Hardening (SKIPPED) replaced with CI Phase 2 (k6 Compatibility Verification Suite) — COMPLETED
- Updated `build-and-test-summary.md` CI Automation Status: added Phase 2 workflow entry and required k6 checks
- Updated `build-instructions.md` CI Execution Mapping: added Phase 2 section (trigger policy, blocking k6 checks, prerequisites)
**Context**: User requested k6 tests be treated as CI Phase 2. Previously CI Phase 2 Hardening was marked SKIPPED (user decision on 2026-06-11); the k6 compatibility workflow now fulfills the Phase 2 slot.

---
11 changes: 8 additions & 3 deletions aidlc-docs/construction/build-and-test/build-and-test-summary.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,9 +77,14 @@
## CI Automation Status

- Phase 1 CI workflow implemented: `.github/workflows/ci-phase1.yml`
- Compatibility CI workflow: `.github/workflows/compatibility-check.yml`
- Required CI checks: format, clippy, debug/release build, test
- Advisory CI check: cargo-audit (warning-only)
- Phase 2 CI workflow implemented: `.github/workflows/ci-phase2.yml` (k6
Compatibility Verification Suite — reclassified from the former
`compatibility-check.yml` per user request on 2026-07-07)
- Phase 1 required CI checks: format, clippy, debug/release build, test
- Phase 1 advisory CI check: cargo-audit (warning-only)
- Phase 2 required CI checks: k6 auth/accounts/transactions compatibility
scenarios against a running stack (Docker Compose + seed data), Firefly-III
envelope validation, artifact upload of k6 results
- Deployment automation: not included in current phase
- Compatibility workflow: automated on PR to main (k6 suite + artifact upload)

Expand Down
23 changes: 23 additions & 0 deletions aidlc-docs/construction/build-and-test/build-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,29 @@ Advisory-only checks in Phase 1:
Branch protection expected required check:
- `quality-build-test`

## CI Execution Mapping (Phase 2 — k6 Compatibility Verification Suite)

Implemented workflow:
- `.github/workflows/ci-phase2.yml` (reclassified from the former
`compatibility-check.yml` per user request on 2026-07-07)

Trigger policy:
- pull_request: main
- push: main

Blocking checks in Phase 2:
- k6 auth tests (6 scenarios)
- k6 accounts tests (7 scenarios)
- k6 transactions tests (8 scenarios)
- Firefly-III envelope validation (list/single/error envelope, 204 No Content,
401 Unauthorized, pagination consistency)
- k6 result artifact upload (retention 30 days)

Prerequisites for Phase 2:
- Docker Compose stack (utopia-api, postgres, caddy) started in CI
- Seed data loaded via `scripts/seed/index.ts` before each test group
- `BOOTSTRAP_KEY` provided via GitHub secret (fallback CI test key)

## Troubleshooting

### Dependency Resolution Failures
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ Shell script that orchestrates:
| File | Change |
|------|--------|
| `docker/docker-compose.yml` | Added `k6` service (grafana/k6:latest) with testing profile, volume mounts for k6/ and scripts/seed/, k6_results volume |
| `.github/workflows/compatibility-check.yml` | CI workflow: start stack, health check, seed data, run k6 suite, upload artifacts |
| `.github/workflows/ci-phase2.yml` | CI Phase 2 workflow (k6 Compatibility Verification Suite): start stack, health check, seed data, run k6 suite, upload artifacts |
| `.env.example` | Added `APP_BASE_URL` and `K6_OUTPUT_DIR` variables |

## How to Run
Expand Down Expand Up @@ -93,7 +93,7 @@ docker compose run --rm k6 run /scripts/k6/transactions.ts
```

### CI (GitHub Actions)
The compatibility-check.yml workflow runs automatically on every PR to main. Results are uploaded as artifacts.
The ci-phase2.yml workflow (CI Phase 2 — k6 Compatibility Verification Suite) runs automatically on every PR to main. Results are uploaded as artifacts.

## Architecture

Expand Down
Loading