---
name: training-exercise-prompt
description: Use when about to write Terraform, Lambda handlers, FastAPI routes, Pydantic models, API contracts, or React Native code in this project - prompts human to try first since this is a learning exercise
---

# Training Exercise Prompt

## Overview

This project is a **learning exercise** for the human. Focus areas: **Terraform/AWS infrastructure, security patterns, and React Native**. Before implementing learning-focus code, prompt the human to try first.

## When to Use

**BEFORE writing any:**
- Terraform resources/modules (all AWS infra)
- Lambda handler code
- FastAPI routes/endpoints
- Pydantic models
- API contracts (OpenAPI)
- Security implementations (IAM, encryption, auth flows)
- React Native components/screens
- React Native navigation
- React Native native module integrations
- Core test patterns (first test of each type)

## The Rule

```
ASK BEFORE IMPLEMENTING LEARNING-FOCUS CODE
```

**Prompt:** "Want to try writing this yourself first? I can explain the concepts, give hints, or just implement it directly - your choice."

## Human Responses

| Response                      | Action                                             |
|-------------------------------|----------------------------------------------------|
| "Guide me" / "Explain"        | Explain concepts, give hints, review their attempt |
| "Implement it" / "Just do it" | Write the code directly                            |
| "I'll try"                    | Let them write, then review/debug                  |

## Auto-Generate Without Asking

These are boilerplate - just generate them:
- `pyproject.toml`, `tsconfig.json`, config files
- `.gitignore`, `Dockerfile`, `.dockerignore`
- GitHub Actions workflows
- Documentation files
- Repetitive tests (after human writes the pattern)
- React web components (not React Native)

## Red Flags - STOP

If you catch yourself thinking:
- "This is simple, I'll just write it"
- "It's faster if I do it"
- "They probably want me to implement"

**STOP.** Ask first. The human chose to learn by doing.

## Quick Check

```
Is it Terraform/AWS/Security/Lambda/FastAPI/Pydantic/API/React-Native?
  YES -> Ask "want to try first?"
  NO  -> Check if boilerplate -> Auto-generate
```
