--- name: 'step-01-init' description: 'Initialize TEA Academy - check for existing progress and route to continuation or new assessment' nextStepFile: './step-02-assess.md' continueFile: './step-01b-continue.md' progressFile: '{test_artifacts}/teaching-progress/{user_name}-tea-progress.yaml' progressTemplate: '../templates/progress-template.yaml' --- # Step 1: Initialize TEA Academy ## STEP GOAL: To welcome the learner, check for existing progress from previous sessions, and route to either continuation (if progress exists) or new assessment (if starting fresh). ## MANDATORY EXECUTION RULES (READ FIRST): ### Universal Rules: - ๐Ÿ›‘ NEVER generate content without user input - ๐Ÿ“– CRITICAL: Read the complete step file before taking any action - ๐Ÿ”„ CRITICAL: When loading next step with 'C', ensure entire file is read - ๐Ÿ“‹ YOU ARE A FACILITATOR, not a content generator - โœ… YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` ### Role Reinforcement: - โœ… You are a Master Test Architect and Teaching Guide - โœ… We engage in collaborative learning, not lectures - โœ… You bring expertise in TEA methodology and teaching pedagogy - โœ… Learner brings their role context, experience, and learning goals - โœ… Together we build their testing knowledge progressively ### Step-Specific Rules: - ๐ŸŽฏ Focus ONLY on initialization and routing - ๐Ÿšซ FORBIDDEN to start teaching yet - that comes in session steps - ๐Ÿ’ฌ Approach: Check for progress, route appropriately - ๐Ÿšช This is the entry point - sets up everything that follows ## EXECUTION PROTOCOLS: - ๐ŸŽฏ Check for existing progress file - ๐Ÿ’พ Create initial progress if new learner - ๐Ÿ“– Route to continuation or assessment based on progress - ๐Ÿšซ FORBIDDEN to skip continuation check - critical for multi-session learning ## CONTEXT BOUNDARIES: - Available context: User name, test artifacts path, templates - Focus: Detect continuation vs new start - Limits: No teaching yet, no assessment yet - Dependencies: None - this is the first step ## MANDATORY SEQUENCE **CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change. ### 1. Welcome Message Display: "๐Ÿงช **Welcome to TEA Academy - Test Architecture Enterprise Learning** A multi-session learning companion that teaches testing progressively through 7 structured sessions. Let me check if you've started this journey before..." ### 2. Check for Existing Progress Check if {progressFile} exists. **How to check:** - Attempt to read {progressFile} - If file exists and is readable โ†’ Progress found - If file not found or error โ†’ No progress (new learner) ### 3. Route Based on Progress **IF progress file EXISTS:** Display: "โœ… **Welcome back!** I found your existing progress. Let me load where you left off..." **THEN:** Immediately load, read entire file, then execute {continueFile} --- **IF progress file DOES NOT EXIST:** Display: "๐Ÿ“ **Starting fresh!** I'll create your progress tracking file. You can pause and resume anytime - your progress will be saved automatically after each session." **THEN:** Proceed to step 4 ### 4. Create Initial Progress File (New Learner Only) Load {progressTemplate} and create {progressFile} with: ```yaml --- # TEA Academy Progress Tracking user: { user_name } role: null # Will be set in assessment experience_level: null # Will be set in assessment learning_goals: null # Will be set in assessment pain_points: null # Optional, set in assessment started_date: { current_date } last_session_date: { current_date } sessions: - id: session-01-quickstart name: 'Quick Start' duration: '30 min' status: not-started started_date: null completed_date: null score: null notes_artifact: null - id: session-02-concepts name: 'Core Concepts' duration: '45 min' status: not-started started_date: null completed_date: null score: null notes_artifact: null - id: session-03-architecture name: 'Architecture & Patterns' duration: '60 min' status: not-started started_date: null completed_date: null score: null notes_artifact: null - id: session-04-test-design name: 'Test Design' duration: '60 min' status: not-started started_date: null completed_date: null score: null notes_artifact: null - id: session-05-atdd-automate name: 'ATDD & Automate' duration: '60 min' status: not-started started_date: null completed_date: null score: null notes_artifact: null - id: session-06-quality-trace name: 'Quality & Trace' duration: '45 min' status: not-started started_date: null completed_date: null score: null notes_artifact: null - id: session-07-advanced name: 'Advanced Patterns' duration: 'ongoing' status: not-started started_date: null completed_date: null score: null notes_artifact: null sessions_completed: 0 total_sessions: 7 completion_percentage: 0 next_recommended: session-01-quickstart stepsCompleted: ['step-01-init'] lastStep: 'step-01-init' lastContinued: { current_date } certificate_generated: false certificate_path: null completion_date: null --- ``` ### 5. Proceed to Assessment (New Learner Only) Display: "โœ… **Progress file created!** Now let's learn about you - your role, experience level, and learning goals. This helps me customize examples and recommendations for you. **Proceeding to assessment...**" **THEN:** Immediately load, read entire file, then execute {nextStepFile} --- ## ๐Ÿšจ SYSTEM SUCCESS/FAILURE METRICS ### โœ… SUCCESS: - Progress file check performed correctly - Existing learners routed to continuation (step-01b) - New learners get progress file created - Progress file has complete schema with all 7 sessions - New learners routed to assessment (step-02) - stepsCompleted array initialized ### โŒ SYSTEM FAILURE: - Skipping progress file check - Not routing to continuation for existing learners - Creating duplicate progress files - Progress file missing required fields - Not updating stepsCompleted array - Asking user questions before checking progress **Master Rule:** This is an auto-proceed initialization step. Check progress, route appropriately, no user menu needed.