Skip to content

Latest commit

 

History

History
202 lines (192 loc) · 8.86 KB

File metadata and controls

202 lines (192 loc) · 8.86 KB

#====================================================================================================

START - Testing Protocol - DO NOT EDIT OR REMOVE THIS SECTION

#====================================================================================================

THIS SECTION CONTAINS CRITICAL TESTING INSTRUCTIONS FOR BOTH AGENTS

BOTH MAIN_AGENT AND TESTING_AGENT MUST PRESERVE THIS ENTIRE BLOCK

Communication Protocol:

If the testing_agent is available, main agent should delegate all testing tasks to it.

You have access to a file called test_result.md. This file contains the complete testing state

and history, and is the primary means of communication between main and the testing agent.

Main and testing agents must follow this exact format to maintain testing data.

The testing data must be entered in yaml format Below is the data structure:

user_problem_statement: {problem_statement}

backend:

- task: "Task name"

implemented: true

working: true # or false or "NA"

file: "file_path.py"

stuck_count: 0

priority: "high" # or "medium" or "low"

needs_retesting: false

status_history:

-working: true # or false or "NA"

-agent: "main" # or "testing" or "user"

-comment: "Detailed comment about status"

frontend:

- task: "Task name"

implemented: true

working: true # or false or "NA"

file: "file_path.js"

stuck_count: 0

priority: "high" # or "medium" or "low"

needs_retesting: false

status_history:

-working: true # or false or "NA"

-agent: "main" # or "testing" or "user"

-comment: "Detailed comment about status"

metadata:

created_by: "main_agent"

version: "1.0"

test_sequence: 0

run_ui: false

test_plan:

current_focus:

- "Task name 1"

- "Task name 2"

stuck_tasks:

- "Task name with persistent issues"

test_all: false

test_priority: "high_first" # or "sequential" or "stuck_first"

agent_communication:

-agent: "main" # or "testing" or "user"

-message: "Communication message between agents"

Protocol Guidelines for Main agent

1. Update Test Result File Before Testing:

- Main agent must always update the test_result.md file before calling the testing agent

- Add implementation details to the status_history

- Set needs_retesting to true for tasks that need testing

- Update the test_plan section to guide testing priorities

- Add a message to agent_communication explaining what you've done

2. Incorporate User Feedback:

- When a user provides feedback that something is or isn't working, add this information to the relevant task's status_history

- Update the working status based on user feedback

- If a user reports an issue with a task that was marked as working, increment the stuck_count

- Whenever user reports issue in the app, if we have testing agent and task_result.md file so find the appropriate task for that and append in status_history of that task to contain the user concern and problem as well

3. Track Stuck Tasks:

- Monitor which tasks have high stuck_count values or where you are fixing same issue again and again, analyze that when you read task_result.md

- For persistent issues, use websearch tool to find solutions

- Pay special attention to tasks in the stuck_tasks list

- When you fix an issue with a stuck task, don't reset the stuck_count until the testing agent confirms it's working

4. Provide Context to Testing Agent:

- When calling the testing agent, provide clear instructions about:

- Which tasks need testing (reference the test_plan)

- Any authentication details or configuration needed

- Specific test scenarios to focus on

- Any known issues or edge cases to verify

5. Call the testing agent with specific instructions referring to test_result.md

IMPORTANT: Main agent must ALWAYS update test_result.md BEFORE calling the testing agent, as it relies on this file to understand what to test next.

#====================================================================================================

END - Testing Protocol - DO NOT EDIT OR REMOVE THIS SECTION

#====================================================================================================

#====================================================================================================

Testing Data - Main Agent and testing sub agent both should log testing data below this section

#====================================================================================================

user_problem_statement: "Branded OSHSOME site with backend form submissions (proposals, WEM requests, contacts) and email notifications for proposals." backend:

  • task: "POST/GET /api/proposals (create + list)" implemented: true working: true file: "/app/backend/server.py" stuck_count: 0 priority: "high" needs_retesting: false status_history:
    • working: true agent: "main" comment: "Implemented Proposal models, routes, Mongo persistence, and log-only email notification stub (SendGrid optional)."
    • working: true agent: "testing" comment: "✅ TESTED: POST /api/proposals creates records successfully (201), GET /api/proposals retrieves them correctly. Email notifications logged properly in backend logs: '[EMAIL-LOG-ONLY] New Training Proposal Request'. Validation working (422 for invalid email). CORS headers present."
  • task: "POST/GET /api/wem-requests (create + list)" implemented: true working: true file: "/app/backend/server.py" stuck_count: 0 priority: "high" needs_retesting: false status_history:
    • working: true agent: "main" comment: "Implemented WEM Request models and routes with Mongo persistence."
    • working: true agent: "testing" comment: "✅ TESTED: POST /api/wem-requests creates records successfully (201), GET /api/wem-requests retrieves them correctly. All fields properly persisted and returned. CORS headers present."
  • task: "POST/GET /api/contacts (create + list)" implemented: true working: true file: "/app/backend/server.py" stuck_count: 0 priority: "medium" needs_retesting: false status_history:
    • working: true agent: "main" comment: "Implemented Contact models and routes with Mongo persistence."
    • working: true agent: "testing" comment: "✅ TESTED: POST /api/contacts creates records successfully (201), GET /api/contacts retrieves them correctly. Required 'message' field validation working (422 when missing). CORS headers present." frontend:
  • task: "Home hero form -> POST /api/proposals with localStorage fallback" implemented: true working: true file: "/app/frontend/src/pages/Home.jsx" stuck_count: 0 priority: "high" needs_retesting: true status_history:
    • working: true agent: "main" comment: "Wired axios POST to backend; if network fails, saves to localStorage and shows toast."
  • task: "WEM CTA form -> POST /api/wem-requests with localStorage fallback" implemented: true working: true file: "/app/frontend/src/pages/WEM.jsx" stuck_count: 0 priority: "high" needs_retesting: true status_history:
    • working: true agent: "main" comment: "Wired axios POST; fallback to localStorage."
  • task: "Contact form -> POST /api/contacts with localStorage fallback" implemented: true working: true file: "/app/frontend/src/pages/Contact.jsx" stuck_count: 0 priority: "medium" needs_retesting: true status_history:
    • working: true agent: "main" comment: "Validation bug fixed; wired axios POST with fallback." metadata: created_by: "main_agent" version: "1.0" test_sequence: 1 run_ui: false

test_plan: current_focus: - "Backend API happy paths for proposals, wem-requests, contacts" - "Error handling on invalid payloads" - "Email notification logs for proposals" stuck_tasks: [] test_all: false test_priority: "high_first"

agent_communication:

  • agent: "main" message: "Please run backend tests against http://localhost:8001/api (POST+GET for all three resources). Validate JSON schema and that proposals path logs an email notification in server logs when EMAIL_PROVIDER is unset (log-only)."
  • agent: "testing" message: "✅ BACKEND TESTING COMPLETE: All 12 tests passed (100% success rate). Tested: Health check (GET /api/), CRUD operations for proposals/wem-requests/contacts, validation errors (422), CORS headers, and email notification logging. Email logs confirmed in backend logs: '[EMAIL-LOG-ONLY] New Training Proposal Request'. All backend APIs working correctly at https://oshsome-training.preview.emergentagent.com/api"