{"ok":true,"service":"vuln-signal-training-coach","generatedAt":"2026-07-01T13:19:50.209Z","appContract":{"purpose":"Recommend the next safe practice route for site and Android app users.","localStateKeys":["vuln-signal-coach-profile","vuln-signal-game-progress","vuln-signal-pack-progress","vuln-signal-daily-state"],"trustBoundary":"Coach recommendations are training guidance only. They do not assess real systems or certify skill."},"summary":{"games":35,"scenarios":55,"packs":8,"categories":{"Awareness":4,"Operations":7,"Evidence":5,"Threat Intel":6,"Communication":4,"Incident Response":3,"SOC":1,"Strategy":2,"GRC":1,"Mobile":2}},"gameIndex":[{"id":"phish-or-legit","title":"Phish Or Legit","category":"Awareness","difficulty":"Beginner","buildNext":true},{"id":"inbox-impostor","title":"Inbox Impostor","category":"Awareness","difficulty":"Beginner","buildNext":false},{"id":"qr-trap","title":"QR Trap","category":"Awareness","difficulty":"Beginner","buildNext":false},{"id":"mfa-fatigue-defender","title":"MFA Fatigue Defender","category":"Awareness","difficulty":"Beginner","buildNext":false},{"id":"patch-panic","title":"Patch Panic","category":"Operations","difficulty":"Analyst","buildNext":true},{"id":"mitigation-match","title":"Mitigation Match","category":"Operations","difficulty":"Analyst","buildNext":false},{"id":"sla-sprint","title":"SLA Sprint","category":"Operations","difficulty":"Analyst","buildNext":false},{"id":"no-patch-navigator","title":"No-Patch Navigator","category":"Operations","difficulty":"Analyst","buildNext":false},{"id":"cve-courtroom","title":"CVE Courtroom","category":"Evidence","difficulty":"Beginner","buildNext":true},{"id":"scanner-finding-trial","title":"Scanner Finding Trial","category":"Evidence","difficulty":"Analyst","buildNext":true},{"id":"signal-sorter-rush","title":"Signal Sorter Rush","category":"Evidence","difficulty":"Beginner","buildNext":false},{"id":"backport-detective","title":"Backport Detective","category":"Evidence","difficulty":"Advanced","buildNext":false},{"id":"kev-or-hype","title":"KEV Or Hype","category":"Threat Intel","difficulty":"Analyst","buildNext":false},{"id":"exploit-chain-builder","title":"Exploit Chain Builder","category":"Threat Intel","difficulty":"Advanced","buildNext":false},{"id":"ioc-triage-table","title":"IOC Triage Table","category":"Threat Intel","difficulty":"Analyst","buildNext":false},{"id":"vendor-advisory-escape-room","title":"Vendor Advisory Escape Room","category":"Threat Intel","difficulty":"Analyst","buildNext":false},{"id":"executive-brief-boss-fight","title":"Executive Brief Boss Fight","category":"Communication","difficulty":"Analyst","buildNext":true},{"id":"ticket-surgeon","title":"Ticket Surgeon","category":"Communication","difficulty":"Analyst","buildNext":false},{"id":"escalation-ladder-climb","title":"Escalation Ladder Climb","category":"Communication","difficulty":"Analyst","buildNext":false},{"id":"closure-stamp","title":"Closure Stamp","category":"Communication","difficulty":"Beginner","buildNext":false},{"id":"incident-timeline-builder","title":"Incident Timeline Builder","category":"Incident Response","difficulty":"Analyst","buildNext":true},{"id":"attack-chain-puzzle","title":"Attack Chain Puzzle","category":"Threat Intel","difficulty":"Advanced","buildNext":true},{"id":"risk-tetris","title":"Risk Tetris","category":"Operations","difficulty":"Analyst","buildNext":false},{"id":"soc-shift-simulator","title":"SOC Shift Simulator","category":"SOC","difficulty":"Analyst","buildNext":true},{"id":"security-budget-builder","title":"Security Budget Builder","category":"Strategy","difficulty":"Beginner","buildNext":false},{"id":"ransomware-readiness-tycoon","title":"Ransomware Readiness Tycoon","category":"Strategy","difficulty":"Analyst","buildNext":false},{"id":"vendor-risk-negotiator","title":"Vendor Risk Negotiator","category":"GRC","difficulty":"Analyst","buildNext":false},{"id":"daily-60-second-drill","title":"Daily 60-Second Drill","category":"Mobile","difficulty":"Beginner","buildNext":true},{"id":"swipe-the-signal","title":"Swipe The Signal","category":"Mobile","difficulty":"Beginner","buildNext":true},{"id":"tap-to-contain","title":"Tap To Contain","category":"Incident Response","difficulty":"Beginner","buildNext":false},{"id":"exploitability-chess","title":"Exploitability Chess","category":"Threat Intel","difficulty":"Advanced","buildNext":false},{"id":"control-match-arena","title":"Control Match Arena","category":"Operations","difficulty":"Analyst","buildNext":true},{"id":"security-court","title":"Security Court","category":"Evidence","difficulty":"Beginner","buildNext":false},{"id":"patch-train-dispatcher","title":"Patch Train Dispatcher","category":"Operations","difficulty":"Analyst","buildNext":false},{"id":"breach-escape-map","title":"Breach Escape Map","category":"Incident Response","difficulty":"Advanced","buildNext":false}],"nextActions":[{"kind":"daily","title":"Do one short round","label":"Daily","reason":"Best when you have very little time or feel overwhelmed.","gameId":"security-court","gameTitle":"Security Court","scenarioId":"security-court-001","url":"/pages/mini-game-daily.html"},{"kind":"pack","title":"5-Minute Awareness Warmup","label":"Beginner","reason":"Practice safe first reactions to phishing, QR, MFA, and rumor signals.","packId":"five-minute-awareness","time":"5 minutes","audience":"Beginners and mobile users","scenarioCount":6,"categories":{"Awareness":5,"Mobile":1},"url":"/pages/mini-game-player.html?id=phish-or-legit&scenario=phish-or-legit-001&pack=five-minute-awareness","priority":1},{"kind":"pack","title":"Patch Owner Sprint","label":"Analyst","reason":"Choose patch, control, SLA, rollback, and sequencing decisions under pressure.","packId":"patch-owner-sprint","time":"12 minutes","audience":"Patch owners and vulnerability managers","scenarioCount":6,"categories":{"Operations":6},"url":"/pages/mini-game-player.html?id=patch-panic&scenario=patch-panic-001&pack=patch-owner-sprint","priority":2},{"kind":"library","title":"Scenario Library Review","label":"Inspect","reason":"Use this when you want to check every scenario, expected answer, and content quality without playing.","url":"/pages/mini-game-scenarios.html"}],"simplePath":[{"label":"Unsure","title":"Start with Daily","detail":"One small fictional case. No setup, no real system, no long reading.","url":"/pages/mini-game-daily.html"},{"label":"Want structure","title":"Open a Practice Pack","detail":"A short role-based route when you want several cases to fit together.","url":"/pages/mini-game-packs.html"},{"label":"Need vocabulary","title":"Go to Learn Basics","detail":"Use this before playing if words like exploit, exposure, CVE, or mitigation are unclear.","url":"/pages/practice-lab.html"},{"label":"After practice","title":"Review Progress","detail":"Use Progress and Report only after you have completed a few rounds.","url":"/pages/mini-game-progress.html"}],"packs":[{"kind":"pack","title":"5-Minute Awareness Warmup","label":"Beginner","reason":"Practice safe first reactions to phishing, QR, MFA, and rumor signals.","packId":"five-minute-awareness","time":"5 minutes","audience":"Beginners and mobile users","scenarioCount":6,"categories":{"Awareness":5,"Mobile":1},"url":"/pages/mini-game-player.html?id=phish-or-legit&scenario=phish-or-legit-001&pack=five-minute-awareness","priority":1},{"kind":"pack","title":"Patch Owner Sprint","label":"Analyst","reason":"Choose patch, control, SLA, rollback, and sequencing decisions under pressure.","packId":"patch-owner-sprint","time":"12 minutes","audience":"Patch owners and vulnerability managers","scenarioCount":6,"categories":{"Operations":6},"url":"/pages/mini-game-player.html?id=patch-panic&scenario=patch-panic-001&pack=patch-owner-sprint","priority":2},{"kind":"pack","title":"Evidence Discipline","label":"Beginner","reason":"Separate proven claims from assumptions before closing or escalating work.","packId":"evidence-discipline","time":"10 minutes","audience":"Analysts, auditors, and reviewers","scenarioCount":6,"categories":{"Evidence":6},"url":"/pages/mini-game-player.html?id=cve-courtroom&scenario=cve-courtroom-001&pack=evidence-discipline","priority":3},{"kind":"pack","title":"SOC Shift Simulator Path","label":"Analyst","reason":"Prioritize alerts, preserve evidence, and choose containment without overclaiming.","packId":"soc-shift","time":"15 minutes","audience":"SOC analysts and incident responders","scenarioCount":6,"categories":{"SOC":2,"Incident Response":4},"url":"/pages/mini-game-player.html?id=soc-shift-simulator&scenario=soc-shift-simulator-001&pack=soc-shift","priority":4},{"kind":"pack","title":"Leadership Briefing Path","label":"Analyst","reason":"Turn messy risk into concise updates with owners, caveats, blockers, and review timing.","packId":"leadership-briefing","time":"10 minutes","audience":"Security leads and analysts briefing leaders","scenarioCount":6,"categories":{"Communication":6},"url":"/pages/mini-game-player.html?id=executive-brief-boss-fight&scenario=executive-brief-boss-fight-001&pack=leadership-briefing","priority":5},{"kind":"pack","title":"Small Business Resilience","label":"Beginner","reason":"Make practical security investments and recovery choices with limited resources.","packId":"small-business-resilience","time":"12 minutes","audience":"Small business owners, MSPs, and students","scenarioCount":6,"categories":{"Strategy":3,"GRC":2,"Mobile":1},"url":"/pages/mini-game-player.html?id=security-budget-builder&scenario=security-budget-builder-001&pack=small-business-resilience","priority":6},{"kind":"pack","title":"Threat Intel Chain Reading","label":"Advanced","reason":"Interpret exploitation, prerequisites, indicators, and attack-path blockers.","packId":"threat-intel-chain","time":"15 minutes","audience":"Threat intel and vulnerability analysts","scenarioCount":6,"categories":{"Threat Intel":6},"url":"/pages/mini-game-player.html?id=kev-or-hype&scenario=kev-or-hype-001&pack=threat-intel-chain","priority":7},{"kind":"pack","title":"Mitigation Control Room","label":"Analyst","reason":"Pick temporary controls and review triggers when patching is blocked or unsafe.","packId":"mitigation-control-room","time":"12 minutes","audience":"Patch, platform, and risk teams","scenarioCount":6,"categories":{"Operations":5,"Evidence":1},"url":"/pages/mini-game-player.html?id=mitigation-match&scenario=mitigation-match-001&pack=mitigation-control-room","priority":8}],"focusLanes":[{"id":"awareness","title":"Awareness","category":"Awareness","goal":"Spot suspicious prompts, impersonation, QR traps, MFA fatigue, and rumor pressure.","packId":"five-minute-awareness"},{"id":"operations","title":"Operations","category":"Operations","goal":"Choose patch, mitigation, SLA, rollback, and blocked-remediation paths.","packId":"patch-owner-sprint"},{"id":"evidence","title":"Evidence","category":"Evidence","goal":"Separate proven findings from assumptions, scanner shortcuts, and closure gaps.","packId":"evidence-discipline"},{"id":"communication","title":"Communication","category":"Communication","goal":"Write safer tickets, executive updates, escalations, and closure statements.","packId":"leadership-briefing"},{"id":"threat-intel","title":"Threat Intel","category":"Threat Intel","goal":"Read KEV, EPSS, prerequisites, IOCs, and exploit chains without overclaiming.","packId":"threat-intel-chain"},{"id":"incident-response","title":"Incident Response","category":"Incident Response","goal":"Preserve evidence, contain safely, build timelines, and communicate response state.","packId":"soc-shift"},{"id":"business-risk","title":"Business Risk","category":"Business Risk","goal":"Make practical security tradeoffs for small-business, vendor, budget, and resilience scenarios.","packId":"small-business-resilience"}],"profileOptions":{"roles":[{"id":"beginner","label":"Beginner","packId":"five-minute-awareness"},{"id":"patch-owner","label":"Patch owner","packId":"patch-owner-sprint"},{"id":"soc","label":"SOC analyst","packId":"soc-shift"},{"id":"leader","label":"Leadership","packId":"leadership-briefing"},{"id":"intel","label":"Threat intel","packId":"threat-intel-chain"},{"id":"business","label":"Small business","packId":"small-business-resilience"}],"timeboxes":["5 minutes","10 minutes","12 minutes","15 minutes"],"goals":["Build basics","Practice decisions","Brief leaders","Review evidence","Handle incidents"]},"roleTracks":[{"id":"beginner","title":"Beginner Signal Builder","audience":"New learners","focus":"Phishing, MFA, safe verification, and common signal vocabulary","packId":"five-minute-awareness","url":"/pages/mini-game-player.html?id=phish-or-legit&scenario=phish-or-legit-001&pack=five-minute-awareness"},{"id":"patch-owner","title":"Patch Owner Route","audience":"Patch and platform teams","focus":"Prioritization, mitigations, SLAs, rollback risk, and no-patch decisions","packId":"patch-owner-sprint","url":"/pages/mini-game-player.html?id=patch-panic&scenario=patch-panic-001&pack=patch-owner-sprint"},{"id":"soc","title":"SOC Shift Route","audience":"SOC analysts","focus":"Alert triage, containment, evidence order, and incident timeline discipline","packId":"soc-shift","url":"/pages/mini-game-player.html?id=soc-shift-simulator&scenario=soc-shift-simulator-001&pack=soc-shift"},{"id":"leadership","title":"Leadership Briefing Route","audience":"Leads and analysts briefing leaders","focus":"Short updates, caveats, owners, blockers, and review timing","packId":"leadership-briefing","url":"/pages/mini-game-player.html?id=executive-brief-boss-fight&scenario=executive-brief-boss-fight-001&pack=leadership-briefing"}],"milestones":[{"threshold":1,"title":"First useful run","detail":"Complete any daily or pack round."},{"threshold":3,"title":"Pattern forming","detail":"Finish three runs across at least two game families."},{"threshold":8,"title":"Working rhythm","detail":"Try a pack, a daily, an evidence game, and one communication game."},{"threshold":15,"title":"Training loop","detail":"Use Progress to export local history and pick the next weak lane."}]}