Skip to content

Commit 197fcfa

Browse files
Lasse Benningaclaude
andcommitted
docs: add PR template + "packaging your submission" run/repro guidance
Ship .github/PULL_REQUEST_TEMPLATE.md so the PR body auto-fills (what built / how to review / how to run / extra / self-check), and add a README section on reviewer-ready, reproducible submissions: run from a clean clone against the reviewer's own Postgres, and commit screenshots for the private dev_<name> data and Metabase Questions a reviewer cannot run. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 719f815 commit 197fcfa

2 files changed

Lines changed: 40 additions & 0 deletions

File tree

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
## What I built
2+
- Metabase dashboard (Week 11 Submissions collection): <link>
3+
- Streamlit app: `week11-streamlit/app.py` (KPIs, hour-of-day trend, freshness, payment-type filter)
4+
- Presentation recording (private / unlisted): <link>
5+
6+
## How to review
7+
- Metabase: open the dashboard link above, or see the committed screenshots / PDF export.
8+
- Streamlit: see the committed screenshots, or run it yourself with the steps below.
9+
- Metric definitions: `week11-streamlit/metric_definitions.md`
10+
- AI usage: `AI_ASSIST.md`
11+
12+
## How to run the Streamlit app
13+
From a clean clone, with your own Postgres access:
14+
15+
```bash
16+
cd week11-streamlit
17+
uv sync
18+
cp .env.example .env # set your own POSTGRES_URL (with ?sslmode=require) + DB_SCHEMA
19+
uv run streamlit run app.py
20+
```
21+
22+
Prerequisite: your own `fct_trips` mart populated in your `dev_<name>` schema (from Week 10).
23+
24+
## Extra completed
25+
- [ ] Metabase date filter on >=2 Questions
26+
- [ ] Streamlit auto-refresh
27+
28+
## Self-check
29+
- [ ] `bash .hyf/test.sh` passes
30+
- [ ] No credentials committed (no password in `app.py`, `.env` is gitignored)
31+
- [ ] Screenshots of the Metabase dashboard and the running Streamlit app are committed

README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,15 @@ Fill in `week11-streamlit/metric_definitions.md`: a five-field definition (name,
6060
6161
Prefer to keep it in Azure? The assignment chapter documents an **optional advanced path**: upload the recording to the shared `student-submissions` blob container (teachers get read access, nothing is public) and share a read-only link. The container is shared, so name your file after yourself: `week-11/<your-name>.mp4` (e.g. `week-11/jane-doe.mp4`). See "Optional (advanced): host the recording on Azure Blob Storage" in the Week 11 Assignment chapter.
6262

63+
## Packaging your submission for review
64+
65+
Your pull request should review itself: a reviewer should be able to understand and check it without asking you anything. When you open the PR, GitHub loads a template (`.github/PULL_REQUEST_TEMPLATE.md`) into the description, fill in every section. Two things carry the most weight:
66+
67+
- **Reproducible run instructions.** The Streamlit steps above must work from a clean clone against the reviewer's *own* Postgres: `uv sync`, copy `.env.example` to `.env`, set their own `POSTGRES_URL` (with `?sslmode=require`) and `DB_SCHEMA`, then `uv run streamlit run app.py`. Name every prerequisite, including your own `fct_trips` mart from Week 10. If a step only works on your machine, it is not reproducible.
68+
- **Proof for what a reviewer cannot run.** A reviewer cannot open your private `dev_<name>` schema or your Metabase Questions, so commit screenshots (or a PDF export) of your Metabase dashboard and your running Streamlit app. Screenshots are how you prove "it runs on my data."
69+
70+
See "Package your pull request for review" in the Week 11 Assignment chapter for the full rationale.
71+
6372
## Check your score locally
6473

6574
The autograder runs static checks (required files present, secrets hygiene, Streamlit code patterns, metric-definition coverage):

0 commit comments

Comments
 (0)