Run 3: Validation
Entry Criteria
Section titled “Entry Criteria”| # | Criterion | Verification Command | Expected Output |
|---|---|---|---|
| 1 | All three workflow files exist on demo branch | gh api repos/Arda-cards/arda-frontend-app/contents/.github/workflows/deploy.yaml?ref=demo --jq .name | deploy.yaml |
| 2 | deploy.yaml has succeeded at least once | gh run list -R Arda-cards/arda-frontend-app -w "Deploy Frontend" --branch demo --status success -L 1 --json conclusion -q '.[0].conclusion' | success |
| 3 | Demo site accessible | curl -s -o /dev/null -w "%{http_code}" https://demo.alpha001.app.arda.cards | 200 |
| 4 | GitHub environments configured | gh api repos/Arda-cards/arda-frontend-app/environments --jq '.environments[].name' | Includes dev, stage, demo, prod |
| 5 | At least two distinct commits on demo branch | gh api repos/Arda-cards/arda-frontend-app/commits?sha=demo&per_page=2 --jq 'length' | 2 |
Artifact Specifications
Section titled “Artifact Specifications”| Artifact | Path | Format | Description |
|---|---|---|---|
| GO/NO-GO decision | run-3-validation/go-no-go.md | Markdown | Documents validation results and cutover decision |
Task List
Section titled “Task List”| # | Task | Persona | Depends On | Status | Acceptance Criteria |
|---|---|---|---|---|---|
| 3.1 | Deploy via deploy.yaml and verify demo site | Operator | — | Pending | Workflow succeeds; demo.alpha001.app.arda.cards loads; no console errors |
| 3.2 | Functional verification of demo site | Operator | 3.1 | Pending | User signs in; navigation works; no NEXT_PUBLIC_* configuration errors |
| 3.3 | Redeploy a specific older commit SHA | Operator | 3.1 | Pending | redeploy.yaml succeeds; Amplify Console shows the specified commit; site reflects older version |
| 3.4 | Restore latest version after redeploy test | Operator | 3.3 | Pending | redeploy.yaml with latest SHA; site restored |
| 3.5 | Document GO/NO-GO decision | Operator | 3.1–3.4 | Pending | go-no-go.md written with pass/fail for each criterion |
Task Details
Section titled “Task Details”Task 3.1: Deploy and Verify
Section titled “Task 3.1: Deploy and Verify”Who: Operator
- Trigger
deploy.yamlon thedemobranch via GitHub Actions UI:- Go to:
https://github.com/Arda-cards/arda-frontend-app/actions/workflows/deploy.yaml - Click “Run workflow” → select
demobranch → “Run workflow”
- Go to:
- Monitor the workflow run. Confirm in the logs:
- Purpose-configuration fetch succeeded
- OIDC role assumption succeeded
StartJobreturned ajobIdGetJobpolling reachedSUCCEED
- Visit
demo.alpha001.app.arda.cards:- Page loads without errors
- Open browser DevTools Console — no JavaScript errors related to
NEXT_PUBLIC_*variables
- Confirm dev/stage/prod sites are unchanged: check the Amplify Console for each app — no new builds should have been triggered.
Task 3.2: Functional Verification
Section titled “Task 3.2: Functional Verification”Who: Operator (manual sign-in required)
- Navigate to
demo.alpha001.app.arda.cards - Sign in with test credentials (available to the user — not documented here for security)
- Verify navigation:
- Items page loads
- Order Queue page loads
- Other key pages load without errors
- Check browser console for errors — none expected
- Document results (pass/fail per page)
Task 3.3: Redeploy Specific SHA
Section titled “Task 3.3: Redeploy Specific SHA”Who: Operator
-
Identify an older commit SHA from the
demobranch:Terminal window gh api repos/Arda-cards/arda-frontend-app/commits?sha=demo&per_page=3 \--jq '.[].sha'Pick the second or third commit (not HEAD).
-
Trigger
redeploy.yamlon thedemobranch:- Go to:
https://github.com/Arda-cards/arda-frontend-app/actions/workflows/redeploy.yaml - Click “Run workflow” → select
demobranch - Partition:
demo - Commit SHA: the older SHA from step 1
- “Run workflow”
- Go to:
-
Monitor the workflow run. Confirm:
- The
StartJobcall includes--commit-id {sha} GetJobreachesSUCCEED
- The
-
Verify in the Amplify Console:
- Open the demo app → build history
- The most recent build shows the specified commit SHA (not HEAD)
-
Visit
demo.alpha001.app.arda.cards— the site should reflect the older version. If the versions are visually identical, verify via the Amplify Console build log that the correct commit was built.
Task 3.4: Restore Latest Version
Section titled “Task 3.4: Restore Latest Version”Who: Operator
-
Get the latest commit SHA on
demo:Terminal window gh api repos/Arda-cards/arda-frontend-app/commits?sha=demo&per_page=1 \--jq '.[0].sha' -
Trigger
redeploy.yamlwith this SHA for partitiondemo. -
Verify the site is restored to the latest version.
Task 3.5: Document GO/NO-GO Decision
Section titled “Task 3.5: Document GO/NO-GO Decision”Who: Operator
Create run-3-validation/go-no-go.md with the following structure:
# GO/NO-GO Decision: Frontend Pipeline Cutover
**Date**: YYYY-MM-DD**Decision**: GO / NO-GO
## Validation Results
| # | Test | Result | Notes ||---|------|--------|-------|| 1 | deploy.yaml triggers Amplify build | PASS/FAIL | || 2 | Demo site loads after deployment | PASS/FAIL | || 3 | User can sign in | PASS/FAIL | || 4 | Page navigation works (Items, Order Queue) | PASS/FAIL | || 5 | No NEXT_PUBLIC_* configuration errors | PASS/FAIL | || 6 | redeploy.yaml deploys specific SHA | PASS/FAIL | || 7 | Amplify Console shows correct commit | PASS/FAIL | || 8 | Latest version restored after redeploy test | PASS/FAIL | || 9 | Existing partitions unaffected | PASS/FAIL | |
## Conditions for GO
All tests must pass. Any FAIL requires investigation before proceeding.
## Open Issues
(List any issues found during validation that should be resolved before cutover)
## Approver
(Name and date)This is the GO/NO-GO checkpoint. Run 4 does not begin until this document exists, all tests show PASS, and the decision is explicitly GO.
Internal Dependency Graph
Section titled “Internal Dependency Graph”3.1 (Deploy + verify) ──→ 3.2 (Functional verification) ──→ 3.3 (Redeploy older SHA) ──→ 3.4 (Restore latest)All above ──→ 3.5 (GO/NO-GO document)Tasks 3.2 and 3.3 can be done in parallel after 3.1.
Exit Criteria
Section titled “Exit Criteria”| # | Criterion | Verification Command | Expected Output |
|---|---|---|---|
| 1 | deploy.yaml succeeded during validation | Check workflow run history | At least one successful run during this validation session |
| 2 | redeploy.yaml succeeded with specific SHA | Check workflow run history | At least one successful run with a non-HEAD commit SHA |
| 3 | Demo site functional after deployment | Manual verification documented | Sign-in and navigation confirmed |
| 4 | Existing partitions unaffected | Check Amplify Console for dev/stage/prod | No new builds triggered |
| 5 | GO/NO-GO document exists | test -f run-3-validation/go-no-go.md | File exists |
| 6 | Decision is GO | grep -q "Decision: GO" run-3-validation/go-no-go.md | Match found |
Handoff
Section titled “Handoff”Artifacts Consumed (from previous runs)
Section titled “Artifacts Consumed (from previous runs)”| Artifact | Source Run | Path/Location |
|---|---|---|
deploy.yaml | Run 2 | arda-frontend-app/.github/workflows/deploy.yaml |
redeploy.yaml | Run 2 | arda-frontend-app/.github/workflows/redeploy.yaml |
reusable_deployment.yaml | Run 2 | arda-frontend-app/.github/workflows/reusable_deployment.yaml |
| GitHub environments | Run 2 | arda-frontend-app GitHub settings |
| Demo Amplify app | Run 1 | AWS (Alpha001) |
Artifacts Produced (for subsequent runs)
Section titled “Artifacts Produced (for subsequent runs)”| Artifact | Consumer Run | Path/Location |
|---|---|---|
| GO/NO-GO decision | Run 4 (gate) | run-3-validation/go-no-go.md |
Copyright: © Arda Systems 2025-2026, All rights reserved