Skip to content

Baraah A.#5

Open
thebaraah wants to merge 2 commits into
HackYourAssignment:mainfrom
thebaraah:main
Open

Baraah A.#5
thebaraah wants to merge 2 commits into
HackYourAssignment:mainfrom
thebaraah:main

Conversation

@thebaraah

Copy link
Copy Markdown

No description provided.

@lassebenni lassebenni closed this May 20, 2026
@lassebenni lassebenni reopened this May 20, 2026
@github-actions

Copy link
Copy Markdown

📝 HackYourFuture auto grade

Assignment Score: 85 / 100 ✅

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

Test Details
Tasks 1-6 (Ingestion Pipeline): 70/70 — pipeline + idempotency + code patterns all pass
Task 7  (Azure CLI + Portal):   0/15  — missing output/azure_resource_groups.json
Task 8  (AI Debug Report):      15/15  — AI_DEBUG.md is filled in
----------------------------------------
Total: 85/100 — pass=true (passing threshold: 60)

@qiraahmad

qiraahmad commented Jun 4, 2026

Copy link
Copy Markdown

Good effort!

I can see you did the Azure work: azure_task.py correctly calls the ARM API with a Bearer token and writes the JSON file. Your comparison sections in azure_compare.md are also started.

What's missing:

  1. output/azure_resource_groups.json is not in the PR, you can run azure_task.py with a fresh token and commit the file.
  2. Check your .gitignore again, it may be blocking it (pull latest from cohort main to fix).
  3. Expand azure_compare.md with examples from your own CLI vs Portal

Comment thread ingest_files.py
"""
# TODO: implement CSV reading and normalization
raise NotImplementedError
def read_csv_records(path: Path) -> list[dict]:

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

read_csv_records is defined twice (lines 30 and 42). Remove this.

Comment thread ingest_files.py
Comment on lines +59 to +63
with open("data/weather_stations.csv", newline="") as f:
reader = csv.DictReader(f)
for i, row in enumerate(reader):
if i <3:
pass

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

This is leftover test code. Delete it — code at module level (outside if name == "main") runs on import, including when pipeline.py loads this module.

Comment thread ingest_api.py
raise NotImplementedError
attempt =0

while attempt <= max_retries:

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Consider for attempt in range(max_retries) to match the spec exactly

Comment thread ingest_api.py
Comment on lines +30 to +32
if 400 <= response.status_code < 500:
logger.error(f"Client error {response.status_code}: {response.text}")
return None

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

The assignment says fail immediately on 4xx. Returning None makes fetch_api_records() silently return [], which looks like "no data" instead of "bad request." Use response.raise_for_status() for 4xx errors.

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