Skip to content

Mareh A. - #6

Open
mareh-aboghanem wants to merge 8 commits into
HackYourAssignment:mainfrom
mareh-aboghanem:main
Open

Mareh A.#6
mareh-aboghanem wants to merge 8 commits into
HackYourAssignment:mainfrom
mareh-aboghanem:main

Conversation

@mareh-aboghanem

Copy link
Copy Markdown

What I built

  • Airflow DAG: dags/taxi_pipeline.py (schedule, ingest_taxi_month → dbt_run → dbt_test, partition from logical date, retries)
  • Week 10 dbt project dropped into include/dbt_project/
  • Backfill + idempotency evidence (Task 5)
  • Operational notes: RUNBOOK.md
  • Assignment report: ASSIGNMENT_REPORT.md
  • (Target tier) namespaced DAG deployed to the shared class Airflow
  • AI usage: AI_ASSIST.md

How to review

  • DAG: read dags/taxi_pipeline.py (schedule, task order, catchup=False, retries, partition date).
  • Evidence: backfill / idempotency notes in ASSIGNMENT_REPORT.md; operations in RUNBOOK.md.
  • AI usage: AI_ASSIST.md.

How to run

From a clean clone, with the Astro CLI installed:

astro dev start
astro dev pytest tests/test_dag_integrity.py --args "-v"

Then open the UI URL, add the azure_pg connection (Admin → Connections), unpause taxi_pipeline, and trigger a run for a real month (e.g. 2024-01-01).

Prerequisite: your Week 10 dbt project in include/dbt_project/ and the azure_pg connection to the shared Postgres.

What reviewers should see (expected results)

Fill in what your run actually produces:

  • test_dag_integrity.py result: <e.g. all pass>
  • Task order in the Graph view: <e.g. ingest → dbt_run → dbt_test>
  • Backfill: <e.g. 7 runs green, re-run is idempotent (same row count)>
  • Deployed DAG name (Target tier): <e.g. taxi_pipeline_>

Known limitations / out of scope

  • <e.g. Target-tier deploy not attempted; retries set to 2>
  • Write "none" if everything in the assignment is done and working.

Self-check

  • bash .hyf/test.sh passes
  • astro dev pytest tests/test_dag_integrity.py passes
  • catchup=False and retries are set
  • No credentials committed (connections added in the UI, not in code)
  • Backfill / idempotency evidence is in ASSIGNMENT_REPORT.md

@lassebenni

Copy link
Copy Markdown
Contributor

Reopening to re-trigger grade workflow after checkout fix on main.

@lassebenni lassebenni closed this Jul 24, 2026
@lassebenni lassebenni reopened this Jul 24, 2026
Pick up ASSIGNMENT_REPORT TODO scoring, max_active_runs check, and
screenshot presence (≥3 image files).

Co-authored-by: Cursor <cursoragent@cursor.com>
@lassebenni

Copy link
Copy Markdown
Contributor

Autograder note (teacher)

The CI score is a static smoke test only (file presence + code patterns + docs/screenshot files). It does not grade:

  • whether screenshots show a real green Graph / Grid / task log / shared-UI run
  • before/after backfill row counts
  • shared-Airflow deploy proof (merged PR URL + tagged screenshot)

Autograder 100 ≠ assignment pass. Teachers review those from your PR against the Week 12 deliverables. Please make sure ASSIGNMENT_REPORT.md is fully filled (no TODOs), commit at least 3 screenshot images, and include shared-deploy evidence when the class VM is up.

@github-actions

This comment has been minimized.

@HackYourAssignment HackYourAssignment deleted a comment from github-actions Bot Jul 24, 2026
@github-actions

This comment has been minimized.

Missing <3 screenshot images now forces pass=false (blocker).

Co-authored-by: Cursor <cursoragent@cursor.com>
@github-actions

Copy link
Copy Markdown

📝 HackYourFuture auto grade

Assignment Score: 95 / 100 ✅

Status: ✅ Passed
Minimum score to pass: 60
🧪 The auto grade is experimental and still being improved

Test Details

=== Week 12 Autograder — Orchestrated Pipeline ===
  ✓ PASS  found dags/taxi_pipeline.py
  ✓ PASS  found tests/test_dag_integrity.py
  ✓ PASS  found requirements.txt
  ✓ PASS  found RUNBOOK.md
  ✓ PASS  found ASSIGNMENT_REPORT.md
  ✓ PASS  found AI_ASSIST.md
  ✓ PASS  Level 1: required files (20/20 pts)
  ✓ PASS  dags/taxi_pipeline.py: no NotImplementedError stubs left
  ✓ PASS  dags/taxi_pipeline.py: defines a @dag with tasks
  ✓ PASS  Level 2: DAG implemented (15/15 pts)
  ✓ PASS  dags/taxi_pipeline.py: ingest, dbt_run, and dbt_test all present
  ✓ PASS  dags/taxi_pipeline.py: tasks are chained with >>
  ✓ PASS  Level 3: sequential tasks (20/20 pts)
  ✓ PASS  dags/taxi_pipeline.py: dbt runs through uvx (works on the image's Python 3.14)
  ✓ PASS  dags/taxi_pipeline.py: retry behaviour configured (retries=...)
  ✓ PASS  Level 4: uvx dbt + retries (20/20 pts)
  ✓ PASS  dags/taxi_pipeline.py: partition derived from the logical date
  ✗ FAIL  dags/taxi_pipeline.py: max_active_runs not found — set max_active_runs=1 on the @dag decorator (Gotcha #6); CLI --max-active-runs alone is not enough
  ✓ PASS  Level 5: parameterized runs (10/15 pts)
  ✓ PASS  RUNBOOK.md: filled in (2020 chars, no TODO left)
  ✓ PASS  AI_ASSIST.md: filled in (981 chars, no TODO left)
  ✓ PASS  ASSIGNMENT_REPORT.md: filled in (1795 chars, no TODO left)
  ✓ PASS  screenshots: found 3 image file(s) (need ≥3 for Graph + Grid/run + task log)
  ✓ PASS  Level 6: documentation + screenshots (10/10 pts)

Score: 95 / 100  (passing: 60)  pass=true

Reminder: screenshot *content*, shared-Airflow deploy proof, and before/after
row counts are still teacher-reviewed. Autograder green is not a pass — a
high static score is necessary but not sufficient.

Comment thread dags/taxi_pipeline.py

ingest_taxi_month()

ds = _ds_from_context()

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

make sure to format your code correctly, in vscode, type (Command (on Mac) or Windows (on Windows) + shift + P and search for 'format code')

@jrnhofman

Copy link
Copy Markdown

You didn't fill in the PR template, please do so next time.

Comment thread dags/taxi_pipeline.py
"retries": 2,
"retry_delay": 60, # seconds
},
tags=["week12", "taxi_pipeline", f"student:{STUDENT}"],

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no max_active_runs = 1?

@jrnhofman

Copy link
Copy Markdown

your deployment to airflow failed, Ican see the pipeline but it is not green!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants