Files
viexp/docs/sprints/sprint-00-setup.md
T

58 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
type: sprint
number: 0
status: active
started: 2026-10-17
finished:
hours-planned: 6
hours-logged: 2
tags: [sprint, setup]
---
# Sprint 0 — Setup & deconstruction
## Theme
Remove every barrier to practice: toolchain, fast feedback, project board, CI. After this
sprint, a practice session starts in 60 seconds and never touches configuration.
## App deliverable
`viexp` cargo project skeleton that compiles, one trivial test green, Gitea Actions CI green,
`bacon` watching check+clippy+test on save, Gitea board (project + labels + milestones) ready.
## Rust focus — the vital 20%
- What `rustc` / `cargo` / `crates.io` / `Cargo.toml` / `Cargo.lock` are and who owns which file.
- The compile cycle: `cargo check` (fast) vs `build` vs `run`; `cargo fmt`, `cargo clippy`.
- Reading a compiler error: error code (e.g. E0382), span, help hint — where to look first.
## Practice drills (20–30 min each)
- [ ] D1 — Install/verify: `rustup default stable`, `cargo --version`; run `rustup component
add clippy rustfmt`; install `bacon` (`cargo install --locked bacon`).
- [ ] D2 — `cargo new viexp --bin`, add a `lib.rs` skeleton (src split: `main.rs` calls
`viexp::run()`), one `#[test] fn sanity()` — make it fail, read the output, make it pass.
- [ ] D3 — Break it on purpose: introduce E0382 (move a `String`, then use it), E0308 (wrong
type), E0384 (reassign immutable). Paste each into the ErrorJournal **with a self-correction cue**.
- [ ] D4 — Gitea CI: `.gitea/workflows/ci.yml` running `fmt --check`, `clippy -D warnings`,
`test`. Push and watch it go green.
- [x] D5 — Gitea board: labels, milestone "Sprint 1", issues imported from Sprint-1 DoD.
(Done 2026-10-17: 11 labels, 13 sprint milestones, issues #1–#12; kanban board still needs
one-time manual creation in the web UI — Gitea 1.26.2 has no projects API.)
## English focus
README "Status" section (done), DevLog habit starts today, commit messages from now on:
Conventional Commits, imperative mood.
## Session rhythm (45 min)
5 min review → 30 min drill → 10 min DevLog + ErrorJournal.
## Definition of done
- [ ] `cargo bacon` shows check+test passing on save
- [ ] CI green on `main`
- [ ] ErrorJournal has ≥3 entries with cues
- [ ] Sprint-1 milestone and issues exist on Gitea
- [ ] Retro filled
## Retrospective
### Shipped
### Frustrations
### Hours logged / English notes