Skip to main content

Task Breakdown: aws-sandbox npm Package Release v0.3.18

Status: ACTIVE Created: 2026-02-02 Updated: 2026-02-02 (RQ5 Upgrade: Claude Code Component Matrix) Spec Reference: specs/aws-sandbox/spec.md Plan Reference: specs/aws-sandbox/plan.md ADLC Phase: 1.6 (Task Breakdown & Estimation)


Claude Code Component Matrix (RQ5 Upgrade)​

Task-to-Component Mapping with WHY/WHAT-IF/VALUE/PURPOSE​

TaskAgentCommandSkillMCPHookWHYWHAT-IF Not UsedVALUEPURPOSE
T1.1product-owner/speckit.specify--SubagentStopCHK049Requirements drift80% scope creep preventionDefine WHAT to build
T1.2cloud-architect/speckit.planoperational-excellence-SubagentStopCHK050Architecture debt90% issues caught pre-codingDefine HOW to build
T1.3product-owner/speckit.tasks--SubagentStopDependenciesWrong execution order60% coordination reductionEnable parallel execution
T1.4HITL + product-owner---validate-hitlGateUnauthorized deploys100% controlHITL approval gate
T2.1infrastructure-engineer/cdk:synthbuilding-cdk-stacksawslabs.cdk-toolkitvalidate-bashCHK051Build errorsAutomationCompile TypeScript
T2.2infrastructure-engineer/cdk:packreleasing-npm-package-validate-bashConsumer modev0.3.8 incident repeatPackage integrityBundle app.cjs
T2.3qa-engineer-testing-cdk-infrastructure--VerificationUndetected build failuresQuality gateVerify build outputs
T3.1qa-engineer/cdk:test-functionaltesting/tier1--CHK053Untested code70-80% coverageTier 1 snapshot tests
T3.2qa-engineer/cdk:test-integrationtesting/tier2localstack-CHK053Integration gaps+15-20% coverageTier 2 LocalStack tests
T3.3qa-engineer/cdk:release (Phase 3.5)releasing-npm-packagelocalstackvalidate-bashCHK053Broken npm publish100% preventionConsumer E2E validation
T3.4qa-engineer-operational-excellence-detect-natoEvidenceNATO violationAudit trailCapture evidence
T3.5qa-engineer----VersionWrong version publishedIntegrityVerify version
T3.6HITL + cloud-architect---validate-hitlGateUnauthorized publish100% controlnpm publish approval
T3.7infrastructure-engineer/cdk:releasereleasing-npm-package-validate-bashReleaseManual errorsAutomationnpm publish

Component Utilization Summary​

CategoryAvailableUsedUtilization
Agents94 (product-owner, cloud-architect, infrastructure-engineer, qa-engineer)44%
Commands13 CDK6 (/speckit., /cdk:synth, /cdk:test-, /cdk:release)46%
Skills124 (testing-cdk-infrastructure, releasing-npm-package, building-cdk-stacks, operational-excellence)33%
MCPs52 (localstack, awslabs.cdk-toolkit)40%
Hooks33 (validate-bash, validate-hitl, detect-nato)100%

Missing Components (P0 Priority)​

ComponentTypePurposeImpact if Missing
/cdk:consumer-e2eCommandOrchestrate 5-layer Phase 3.5Manual execution, error-prone
validate-hitl-approval.shHookGate npm publish on HITL approvalUnauthorized publishes
pre-execution-coordination-check.shHookEnforce product-owner + cloud-architect FIRSTSTANDALONE_EXECUTION

Task Dependency Graph​

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ PHASE 1: PLAN β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ T1.1 spec.md βœ… ──┬──▢ T1.4 HITL Approval β”‚
β”‚ T1.2 plan.md βœ… ─── β”‚ β”‚
β”‚ T1.3 tasks.md βœ… β”€β”˜ β”‚ β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ PHASE 2: BUILD β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ T2.1 Build TypeScript ──▢ T2.2 Build app.cjs ──▢ T2.3 Verify β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ PHASE 3: TEST β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ T3.1 Tier 1 βœ… ──┬──▢ T3.3 Phase 3.5 Consumer E2E (CRITICAL) β”‚
β”‚ T3.2 Tier 2 βœ… β”€β”€β”˜ β”‚ β”‚
β”‚ β–Ό β”‚
β”‚ T3.4 Evidence Capture β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ PHASE 3.6: RELEASE β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ T3.5 Version Check ──▢ T3.6 HITL Approval ──▢ T3.7 npm publishβ”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Task List​

Phase 1: PLAN​

T1.1: Create spec.md​

FieldValue
IDT1.1
Statusβœ… COMPLETE
PriorityP0
Effort30min
DependenciesNone
Outputspecs/aws-sandbox/spec.md

Acceptance Criteria:

  • Business requirements documented
  • INVEST user stories defined
  • Acceptance criteria specified
  • Risk assessment included

T1.2: Create plan.md​

FieldValue
IDT1.2
Statusβœ… COMPLETE
PriorityP0
Effort30min
DependenciesT1.1
Outputspecs/aws-sandbox/plan.md

Acceptance Criteria:

  • Technical design documented
  • Implementation phases defined
  • Testing strategy specified
  • Risk mitigation planned

T1.3: Create tasks.md​

FieldValue
IDT1.3
Statusβœ… COMPLETE
PriorityP0
Effort30min
DependenciesT1.2
Outputspecs/aws-sandbox/tasks.md

Acceptance Criteria:

  • Task dependency graph created
  • Effort estimates provided
  • Acceptance criteria defined
  • Status tracking enabled

T1.4: Obtain HITL Approval​

FieldValue
IDT1.4
Status⏳ PENDING
PriorityP0 (BLOCKING)
Effort15min
DependenciesT1.1, T1.2, T1.3
Outputtmp/cdk/approvals/hitl-approval-2026-02-02.md

Acceptance Criteria:

  • Manager reviews spec.md
  • Manager reviews plan.md
  • Manager reviews tasks.md
  • Manager signs approval template

Action Required:

# Manager creates approval file:
cat > tmp/cdk/approvals/hitl-approval-2026-02-02.md << 'EOF'
# HITL Approval - aws-sandbox v0.3.18

**Date**: 2026-02-02
**Manager**: @nnthanh101
**Decision**: APPROVED

## Reviewed Artifacts
- [x] specs/aws-sandbox/spec.md
- [x] specs/aws-sandbox/plan.md
- [x] specs/aws-sandbox/tasks.md

## Approval
I approve Phase 1 deliverables for aws-sandbox v0.3.18 release.

**Signature**: ____________________
**Date**: 2026-02-02
EOF

Phase 2: BUILD​

T2.1: Build TypeScript​

FieldValue
IDT2.1
Status⏳ PENDING
PriorityP0
Effort5min
DependenciesT1.4
Outputlib/*.js, source/lambdas-bundled/

Command:

cd /Volumes/Working/projects/sandbox/cdk
npm run build

Acceptance Criteria:

  • TypeScript compiles without errors
  • lib/ directory populated
  • Lambda bundles created

T2.2: Build Consumer App (app.cjs)​

FieldValue
IDT2.2
Status⏳ PENDING
PriorityP0 (CRITICAL)
Effort15min
DependenciesT2.1
Outputsource/infrastructure/dist/infrastructure/bin/app.cjs

Command:

cd /Volumes/Working/projects/sandbox/cdk
npm run build:consumer-app

Acceptance Criteria:

  • app.cjs generated
  • File size ~58MB (bundled ESM to CJS)
  • No build errors

T2.3: Verify Build Outputs​

FieldValue
IDT2.3
Status⏳ PENDING
PriorityP0
Effort5min
DependenciesT2.2
OutputBuild verification log

Commands:

# Verify app.cjs exists and has expected size
ls -la source/infrastructure/dist/infrastructure/bin/app.cjs

# Verify package contents
npm pack --dry-run | head -50

# Expected files in package:
# bin/cli.js
# lib/index.js
# source/infrastructure/dist/infrastructure/bin/app.cjs

Acceptance Criteria:

  • app.cjs exists
  • app.cjs > 50MB
  • npm pack --dry-run shows all required files

Phase 3: TEST​

T3.1: Run Tier 1 Snapshot Tests​

FieldValue
IDT3.1
Statusβœ… COMPLETE
PriorityP0
Effort1min
DependenciesT2.3
Outputtmp/cdk/test-results/tier1-*.log

Evidence: tmp/cdk/test-results/tier1-2026-02-01-081221.log

  • 29/29 PASS (5.38s)

T3.2: Run Tier 2 LocalStack Tests​

FieldValue
IDT3.2
Statusβœ… COMPLETE
PriorityP0
Effort2min
DependenciesT3.1
Outputtmp/cdk/test-results/tier2-*.log

Evidence: tmp/cdk/test-results/tier2-2026-02-01-081151.log

  • 11/11 PASS (1.28s), 25 skipped per ADR-003

T3.3: Execute Phase 3.5 Consumer E2E Deploy​

FieldValue
IDT3.3
Status⏳ PENDING (CRITICAL BLOCKER)
PriorityP0 (BLOCKING)
Effort1-2h
DependenciesT2.3, T3.1, T3.2
Outputtmp/cdk/release-logs/phase3.5-consumer-*.log

Layer 1: Package Installation

cd /Volumes/Working/projects/sandbox/cdk
npm pack

mkdir -p tmp/cdk/consumer-test
cd tmp/cdk/consumer-test
npm init -y
npm install ../../../aws-sandbox-0.3.18.tgz

Layer 2: CLI Availability

npx aws-sandbox --version
# Expected: 0.3.18

Layer 3: Consumer Mode Detection

npx aws-sandbox synth --all 2>&1 | head -20
# Should show consumer mode active

Layer 4: LocalStack Deployment

# Ensure LocalStack running
docker compose -f ../../../docker-compose.yml up -d localstack
sleep 10

# Deploy
AWS_ENDPOINT_URL=http://localhost:4566 npx aws-sandbox deploy --localstack --require-approval never

Layer 5: Validate Stacks

aws --endpoint-url=http://localhost:4566 cloudformation list-stacks --stack-status-filter CREATE_COMPLETE

Acceptance Criteria:

  • Layer 1: Package installs without errors
  • Layer 2: CLI returns version 0.3.18
  • Layer 3: Consumer mode detected
  • Layer 4: Deploy completes without errors
  • Layer 5: Stacks show CREATE_COMPLETE

T3.4: Capture Phase 3.5 Evidence​

FieldValue
IDT3.4
Status⏳ PENDING
PriorityP0
Effort10min
DependenciesT3.3
Outputtmp/cdk/release-logs/phase3.5-consumer-*.log

Command:

TIMESTAMP=$(date +%Y%m%d-%H%M%S)
mkdir -p /Volumes/Working/projects/sandbox/tmp/cdk/release-logs

# Capture all Phase 3.5 output to evidence file
# tmp/cdk/release-logs/phase3.5-consumer-${TIMESTAMP}.log

Acceptance Criteria:

  • Evidence file created
  • All 5 layers documented
  • PASS/FAIL status clear
  • 0 errors in evidence

Phase 3.6: RELEASE​

T3.5: Version Verification​

FieldValue
IDT3.5
Status⏳ PENDING
PriorityP0
Effort5min
DependenciesT3.4
OutputVersion confirmation

Commands:

cd /Volumes/Working/projects/sandbox/cdk
cat package.json | jq '.version'
# Expected: "0.3.18"

# Check npm registry for existing versions
npm view aws-sandbox versions --json | tail -5

Acceptance Criteria:

  • package.json version is 0.3.18
  • Version not already published

T3.6: Obtain npm Publish HITL Approval​

FieldValue
IDT3.6
Status⏳ PENDING
PriorityP0 (BLOCKING)
Effort15min
DependenciesT3.5
Outputtmp/cdk/approvals/npm-publish-approval-2026-02-02.md

Action Required:

# Manager reviews Phase 3.5 evidence
cat tmp/cdk/release-logs/phase3.5-consumer-*.log

# Manager creates publish approval
cat > tmp/cdk/approvals/npm-publish-approval-2026-02-02.md << 'EOF'
# npm Publish Approval - aws-sandbox v0.3.18

**Date**: 2026-02-02
**Manager**: @nnthanh101
**Decision**: APPROVED

## Reviewed Evidence
- [x] Phase 3.5 Consumer E2E: PASS
- [x] Version: 0.3.18
- [x] 0 deploy errors

## Approval
I approve npm publish for aws-sandbox v0.3.18.

**Signature**: ____________________
**Date**: 2026-02-02
EOF

T3.7: Execute npm Publish​

FieldValue
IDT3.7
Status⏳ PENDING
PriorityP0
Effort5min
DependenciesT3.6
Outputnpm registry entry

Commands:

cd /Volumes/Working/projects/sandbox/cdk

# Verify logged into npm
npm whoami

# Publish
npm publish --access public

# Verify published
npm view [email protected]

Acceptance Criteria:

  • npm publish succeeds
  • Package visible on npmjs.com
  • Version 0.3.18 available

Summary Status​

PhaseTasksCompletePendingBlocked
Phase 1431-
Phase 2303-
Phase 3422T3.3
Phase 3.6303T3.6, T3.7
Total14593

Critical Path​

T1.4 (HITL) β†’ T2.2 (app.cjs) β†’ T3.3 (Phase 3.5) β†’ T3.6 (HITL) β†’ T3.7 (publish)

Estimated Total Time: 3-4 hours (including HITL wait times)


T3.3 Phase 3.5 Flow of Events (RQ5 Story-Telling)​

Story: Consumer installs [email protected] and deploys to LocalStack​

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ INPUTS β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ β€’ aws-sandbox-0.3.18.tgz (npm tarball, 28.7MB) β”‚
β”‚ β€’ LocalStack running on :4566 (container: localstack) β”‚
β”‚ β€’ Fresh consumer environment (no source code, npm-only) β”‚
β”‚ β€’ Docker available (for LocalStack) β”‚
β”‚ β€’ ADLC Container running (adlc-cdk) β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚
β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ LAYER 1: Package Installation β”‚
β”‚ Agent: infrastructure-engineer | Command: npm pack + npm install β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ 1. npm pack β†’ aws-sandbox-0.3.18.tgz β”‚
β”‚ 2. mkdir /tmp/consumer-test && cd /tmp/consumer-test β”‚
β”‚ 3. npm init -y β”‚
β”‚ 4. npm install /workspace/cdk/aws-sandbox-0.3.18.tgz β”‚
β”‚ β”‚
β”‚ EXPECTED: "added 4 packages, and audited 5 packages" β”‚
β”‚ WHAT-IF FAILS: Missing files in package.json β†’ REJECT β”‚
β”‚ EVIDENCE: Installation log in release-logs/ β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚
β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ LAYER 2: CLI Availability β”‚
β”‚ Agent: qa-engineer | Command: npx aws-sandbox --version β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ 1. npx aws-sandbox --version β”‚
β”‚ β”‚
β”‚ EXPECTED: "aws-sandbox v0.3.18" β”‚
β”‚ WHAT-IF FAILS: bin/cli.js missing or broken shebang β†’ REJECT β”‚
β”‚ EVIDENCE: Version string captured β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚
β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ LAYER 3: Consumer Mode Detection β”‚
β”‚ Agent: qa-engineer | Command: npx aws-sandbox synth --all β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ 1. npx aws-sandbox synth --all (or with --app flag to app.cjs) β”‚
β”‚ 2. Verify consumer mode uses app.cjs, not app.ts β”‚
β”‚ β”‚
β”‚ EXPECTED: "Successfully synthesized to cdk.out" β”‚
β”‚ WHAT-IF FAILS: app.cjs missing β†’ v0.3.8 incident repeat β†’ REJECT β”‚
β”‚ EVIDENCE: CloudFormation templates in cdk.out/ β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚
β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ LAYER 4: LocalStack Deployment β”‚
β”‚ Agent: infrastructure-engineer | MCP: localstack β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ 1. AWS_ENDPOINT_URL=http://localstack:4566 β”‚
β”‚ 2. npx cdk deploy --all --require-approval never β”‚
β”‚ OR: cdklocal deploy --all β”‚
β”‚ β”‚
β”‚ EXPECTED: All stacks CREATE_COMPLETE β”‚
β”‚ WHAT-IF FAILS: Lambda bundles missing β†’ v0.3.9 incident repeat β†’ REJECT β”‚
β”‚ EVIDENCE: CloudFormation stack status β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚
β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ LAYER 5: Stack Validation & Evidence Capture β”‚
β”‚ Agent: qa-engineer | Hook: detect-nato-violation.sh β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ 1. aws --endpoint-url=http://localstack:4566 cloudformation list-stacks β”‚
β”‚ 2. Verify: InnovationSandbox-Data = CREATE_COMPLETE β”‚
β”‚ 3. Verify: InnovationSandbox-Compute = CREATE_COMPLETE β”‚
β”‚ 4. TIMESTAMP=$(date +%Y%m%d-%H%M%S) β”‚
β”‚ 5. Save to: tmp/cdk/release-logs/phase3.5-consumer-${TIMESTAMP}.log β”‚
β”‚ β”‚
β”‚ EXPECTED: 2 stacks CREATE_COMPLETE, 0 errors β”‚
β”‚ WHAT-IF FAILS: Any stack FAILED β†’ NO_GO for npm publish β”‚
β”‚ EVIDENCE: phase3.5-consumer-*.log with all 5 layers documented β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚
β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ OUTPUTS β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ β€’ tmp/cdk/release-logs/phase3.5-consumer-YYYYMMDD-HHMMSS.log β”‚
β”‚ β€’ Stacks: InnovationSandbox-Data, InnovationSandbox-Compute β”‚
β”‚ β€’ Tables: LeaseTable, SandboxAccountTable (DynamoDB) β”‚
β”‚ β€’ DECISION: GO/NO_GO for npm publish β”‚
β”‚ β€’ ROI: 15 min investment β†’ 32.5+ hours saved (130x) β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Success Metrics (Phase 3.5)​

Metricv0.3.x (WITHOUT Phase 3.5)v0.3.18 (WITH Phase 3.5)Improvement
Broken versions published7 (87.5%)0 (0%)-87.5%
Consumer install success12.5%100%+87.5%
Support tickets~500-100%
npm unpublish required7 versions0PREVENTED
ROI-130x15 min β†’ 32.5+ hours saved

Tasks Version: 1.1.0 ADLC Phase: 1.6 (Task Breakdown & Estimation) Updated: 2026-02-02 (RQ5 Upgrade: Component Matrix + Flow of Events) Next Action: Execute T3.3 (Phase 3.5 Consumer E2E Deploy)