Skip to content

docs: refresh PM report for final submission state#183

Merged
tyrahappy merged 1 commit into
mainfrom
docs/pm-report-final-state
Apr 20, 2026
Merged

docs: refresh PM report for final submission state#183
tyrahappy merged 1 commit into
mainfrom
docs/pm-report-final-state

Conversation

@0b00101111

Copy link
Copy Markdown
Contributor

Summary

Bring the project-management report forward to 2026-04-20 for the final submission. The previous version (PR #168) froze at Apr 18 and predates the final sprint — experiments, deck iterations, rename, lessons cleanup.

Changes

  • Header counts refreshed: 292 commits · 127 merged PRs · 157 passing + 32 skipped tests
  • PR split: Sam 77 (61%) · Jess 50 (39%)
  • Timeline: new Apr 18–20 row covering the final sprint
  • Problems table: three new entries (11–13) — straggler-chart concurrency assumption, Campaign→Script naming, lessons-series V1/V2 cleanup
  • Process discipline: added 'experiments drove design changes' bullet tying straggler experiment → PR feat: transition at 95% completion to skip stragglers #165, Locust → CPU-signal mistake, fan-out → Amdahl's knee at cap=29
  • Final State section now lists the experiment portfolio and full deliverables

Notes for reviewer

  • Numbers verified from git rev-list --count main, gh pr list, and pytest --collect-only.
  • This is a team deliverable for the CS6650 final submission (5 marks).

Test plan

  • Read the final doc end-to-end; check that timeline, splits, and problems list match your recollection
  • Call out anything in the new Apr 18–20 row or problems 11–13 that misrepresents the work

🤖 Generated with Claude Code

Bring the report forward to 2026-04-20 — the original version froze at
Apr 18 and predates the final sprint (experiments, deck iterations,
rename, lessons cleanup).

Changes
- Header counts: 292 commits, 127 PRs, 157 passing + 32 skipped tests.
- PR split refreshed: Sam 77 (61%), Jess 50 (39%).
- Timeline: new Apr 18-20 row covering distributed-patterns experiments,
  M5-4 rerun, deck iteration, business-case doc, Campaign->Script rename,
  lessons-series refresh.
- Problems table: three new entries (11-13) for the post-Apr-18 issues
  (chart assumption framing, naming mismatch, V1/V2 comparison removal).
- Added process bullet: 'experiments drove design changes' — ties
  straggler experiment to PR #165, Locust to the CPU-signal mistake,
  fan-out to Amdahl's knee.
- 'What the Final State Runs' now lists the experiment portfolio and
  the full set of final deliverables.
Copilot AI review requested due to automatic review settings April 20, 2026 18:12
@tyrahappy tyrahappy merged commit 568cacb into main Apr 20, 2026
4 checks passed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Updates the CS6650 project-management report to reflect the project’s final submission state as of 2026-04-20, including refreshed metrics and additional final-sprint items.

Changes:

  • Refreshes header metrics (duration, commit/PR/test counts) and PR split.
  • Extends the work breakdown timeline with a new Apr 18–20 final-sprint row.
  • Adds new “Problems Encountered” items (11–13) and expands “Final State” details (experiments + deliverables).

**Team:** Sam Wu (@0b00101111) · Jess Zhang (@tyrahappy)
**Duration:** 2026-03-22 → 2026-04-18 (~4 weeks)
**Scope:** 262 commits · 112 merged PRs · 2 deployed services on AWS
**Duration:** 2026-03-22 → 2026-04-20 (~4.5 weeks)

Copilot AI Apr 20, 2026

Copy link

Choose a reason for hiding this comment

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

The duration math looks off: 2026-03-22 → 2026-04-20 is ~29 days (~4.1 weeks), not ~4.5 weeks. Suggest adjusting the approximation (or dropping it) so the header stays internally consistent.

Suggested change
**Duration:** 2026-03-22 → 2026-04-20 (~4.5 weeks)
**Duration:** 2026-03-22 → 2026-04-20 (~4.1 weeks)

Copilot uses AI. Check for mistakes.
Comment on lines 58 to 59
- **One PR, one fix** — 112 PRs averaged 4 files each. Every PR title used conventional prefixes (`feat:`, `fix:`, `chore:`, `docs:`) for grep-friendly history.
- **Hard branch protection on `main`** — Sam and Jess set a GitHub ruleset that *physically blocks* direct pushes and requires ≥1 approving review from the other team member before merge (admin override disabled). This turned "we should review each other's work" from a norm into an enforced gate. Effect: every one of the 112 merged PRs has at least one reviewer's signature; neither of us can ship without the other reading the diff. On multiple occasions Jess's review caught issues Sam missed (and vice-versa) before they hit production.

Copilot AI Apr 20, 2026

Copy link

Choose a reason for hiding this comment

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

These bullets still say "112 PRs" / "112 merged PRs", but the header scope was updated to "127 merged PRs". Please update these counts (or rephrase to avoid hard-coding) so the report doesn’t contradict itself.

Suggested change
- **One PR, one fix**112 PRs averaged 4 files each. Every PR title used conventional prefixes (`feat:`, `fix:`, `chore:`, `docs:`) for grep-friendly history.
- **Hard branch protection on `main`** — Sam and Jess set a GitHub ruleset that *physically blocks* direct pushes and requires ≥1 approving review from the other team member before merge (admin override disabled). This turned "we should review each other's work" from a norm into an enforced gate. Effect: every one of the 112 merged PRs has at least one reviewer's signature; neither of us can ship without the other reading the diff. On multiple occasions Jess's review caught issues Sam missed (and vice-versa) before they hit production.
- **One PR, one fix**127 PRs averaged 4 files each. Every PR title used conventional prefixes (`feat:`, `fix:`, `chore:`, `docs:`) for grep-friendly history.
- **Hard branch protection on `main`** — Sam and Jess set a GitHub ruleset that *physically blocks* direct pushes and requires ≥1 approving review from the other team member before merge (admin override disabled). This turned "we should review each other's work" from a norm into an enforced gate. Effect: every one of the 127 merged PRs has at least one reviewer's signature; neither of us can ship without the other reading the diff. On multiple occasions Jess's review caught issues Sam missed (and vice-versa) before they hit production.

Copilot uses AI. Check for mistakes.
- **One PR, one fix** — 112 PRs averaged 4 files each. Every PR title used conventional prefixes (`feat:`, `fix:`, `chore:`, `docs:`) for grep-friendly history.
- **Hard branch protection on `main`** — Sam and Jess set a GitHub ruleset that *physically blocks* direct pushes and requires ≥1 approving review from the other team member before merge (admin override disabled). This turned "we should review each other's work" from a norm into an enforced gate. Effect: every one of the 112 merged PRs has at least one reviewer's signature; neither of us can ship without the other reading the diff. On multiple occasions Jess's review caught issues Sam missed (and vice-versa) before they hit production.
- **Tests before features** — 105 unit tests existed before the first real pipeline run. Grew to 111 by the end. Caught the `RateLimitError` retry countdown bug pre-deploy.
- **Tests before features** — 105 unit tests existed before the first real pipeline run. Grew to 157 passing (+ 32 skipped integration tests gated on AWS creds). Caught the `RateLimitError` retry countdown bug pre-deploy.

Copilot AI Apr 20, 2026

Copy link

Choose a reason for hiding this comment

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

The parenthetical says the 32 skipped integration tests are "gated on AWS creds", but the skipped experiment/integration modules are actually gated on environment variables like PIPELINE_BASE_URL / ELASTICACHE_URL being set (see backend/tests/experiments/test_e2e_pipeline.py and test_elasticache_integration.py). Suggest updating the wording to match the actual skip conditions.

Suggested change
- **Tests before features** — 105 unit tests existed before the first real pipeline run. Grew to 157 passing (+ 32 skipped integration tests gated on AWS creds). Caught the `RateLimitError` retry countdown bug pre-deploy.
- **Tests before features** — 105 unit tests existed before the first real pipeline run. Grew to 157 passing (+ 32 skipped integration tests gated on integration env vars such as `PIPELINE_BASE_URL` / `ELASTICACHE_URL`). Caught the `RateLimitError` retry countdown bug pre-deploy.

Copilot uses AI. Check for mistakes.
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