Skip to content

Commit 6044e5e

Browse files
committed
crawl: ex0 bootstrap
1 parent 230d4af commit 6044e5e

4 files changed

Lines changed: 122 additions & 0 deletions

File tree

.copilot-track/crawl/README.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# Crawl Track — How This Works
2+
3+
## Chain-PRs
4+
Each exercise lives on its own branch, created off the **previous exercise's branch** (not main). This forms a chain:
5+
6+
```
7+
main
8+
└── crawl/<github-id>/ex0-bootstrap
9+
└── crawl/<github-id>/ex1-repo-orientation
10+
└── crawl/<github-id>/ex2-build-test-baseline
11+
└── ...
12+
```
13+
14+
Why chain? So each PR shows only the incremental diff for that exercise — reviewers and your future self can follow the progression clearly.
15+
16+
## Evidence in PRs
17+
Every PR must include:
18+
- **Test output** — paste the result of running your test command
19+
- **Rollback plan**`revert <SHA>` or describe what to undo
20+
- **Review focus** — one sentence on what the reviewer should look at
21+
22+
If you can't run tests, document why and what manual check you did instead.
23+
24+
## Prompt Usage Pattern
25+
For each exercise:
26+
1. Open Copilot Chat with the repo open in VS Code
27+
2. Paste the exercise prompt from `crawl-walk-run.instructions.md`
28+
3. Append the standard suffix (plan → files → diffs → tests → PR draft)
29+
4. Review Copilot's plan before accepting any file writes
30+
5. Commit only what the acceptance criteria require — nothing more
31+
32+
## Key Files
33+
| File | Purpose |
34+
|------|---------|
35+
| `ai-track-docs/SYSTEM-OVERVIEW.md` | Repo summary + chosen module |
36+
| `ai-track-docs/build-test.md` | Exact build/test commands |
37+
| `ai-track-docs/architecture.mmd` | Mermaid architecture diagram |
38+
| `.copilot-track/crawl/README.md` | This file |

ai-track-docs/SYSTEM-OVERVIEW.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# System Overview
2+
3+
## Repo
4+
**github/copilot-cli-for-beginners** — A structured course teaching GitHub Copilot CLI usage through a single Python book-collection app that evolves across chapters.
5+
6+
## Languages & Runtimes
7+
- **Python** (primary) — `samples/book-app-project/`
8+
- **C#**`samples/book-app-project-cs/`
9+
- **JavaScript**`samples/book-app-project-js/`
10+
- **Markdown** — course content in `00-quick-start/` through `07-putting-it-together/`
11+
12+
## Entry Points
13+
| App | File |
14+
|-----|------|
15+
| Python book app | `samples/book-app-project/book_app.py` |
16+
| Python books module | `samples/book-app-project/books.py` |
17+
| Python utils | `samples/book-app-project/utils.py` |
18+
19+
## Test Approach
20+
- **Framework:** pytest
21+
- **Test files:** `samples/book-app-project/tests/test_books.py`
22+
- **Config:** `samples/book-app-project/pyproject.toml`
23+
24+
## Key Paths
25+
| Path | Purpose |
26+
|------|---------|
27+
| `samples/book-app-project/` | Primary Python sample app (used for most exercises) |
28+
| `samples/book-app-buggy/` | Intentionally broken version for debugging exercises |
29+
| `00-quick-start/``07-putting-it-together/` | Course chapter content |
30+
| `AGENTS.md` | Copilot agent customization instructions |
31+
| `.github/` | CI workflows |
32+
33+
## Chosen Low-Risk Module
34+
> _To be filled in during Ex 1 — Repo Orientation_
35+
36+
**Module:** TBD
37+
**Justification:** TBD

ai-track-docs/architecture.mmd

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
graph TD
2+
A[book_app.py<br>Entry point / CLI] --> B[books.py<br>Book CRUD logic]
3+
A --> C[utils.py<br>Shared helpers]
4+
B --> D[data.json<br>Persistent storage]
5+
B --> E[tests/test_books.py<br>pytest suite]
6+
C --> E
7+
8+
subgraph samples/book-app-project
9+
A
10+
B
11+
C
12+
D
13+
E
14+
end

ai-track-docs/build-test.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Build & Test Commands
2+
3+
## Python book app (`samples/book-app-project/`)
4+
5+
### Run the app
6+
```bash
7+
cd samples/book-app-project
8+
python book_app.py
9+
```
10+
11+
### Run tests
12+
```bash
13+
cd samples/book-app-project
14+
python -m pytest tests/ -v
15+
```
16+
17+
### Install dependencies (if needed)
18+
```bash
19+
pip install pytest
20+
# or, using pyproject.toml:
21+
pip install -e .
22+
```
23+
24+
## C# book app (`samples/book-app-project-cs/`)
25+
> _To be filled in during Ex 2 if this app is chosen_
26+
27+
## JavaScript book app (`samples/book-app-project-js/`)
28+
> _To be filled in during Ex 2 if this app is chosen_
29+
30+
---
31+
32+
> Updated during: Ex 0 — Bootstrap
33+
> Last verified: _fill in when you run commands_

0 commit comments

Comments
 (0)