Regenerate January 2026 report with improved structure#593
Merged
Conversation
Regenerate January 2026 monthly report to include structural improvements: - Split categories into Planned vs Opportunistic subsections - Use projectbluefin/common for planned work tracking - Separate Focus Area (area/ labels) from Work by Type (kind/ labels) - Apply proper bot filtering and contributor tracking - Fix MDX curly brace escaping in PR titles to prevent build errors Script improvements: - Add --month=YYYY-MM CLI argument for report regeneration - Escape curly braces in PR/issue titles to prevent MDX/JSX parsing errors - Applied fix to all formatItemList functions in markdown generator Previous report was generated before PRs #586 and #587 were merged. This regeneration brings the January report up to date with current format. Fixes MDX build error: "boot is not defined" caused by unescaped curly braces in PR titles like "/{boot,tmp}" being interpreted as JSX. Refs: #586, #587
…provements made to the report structure and subsections Quick task completed. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…hting
The January 2026 report was missing the New Contributors section because
the contributor history file already contained all January contributors from
the initial generation.
Fixed by:
- Deleting contributor history baseline to reset detection
- Regenerating January 2026 report with fresh contributor tracking
- All 24 contributors now correctly identified as new for January
- Gold foil effect (highlight={true}) applied to all new contributor cards
Verified:
- Build passes successfully
- New Contributors section renders with 24 profile cards
- All cards have highlight={true} prop and gold foil CSS styling
- Regular Contributors section also displays all 24 contributors
Note: contributors-history.json is auto-generated and gitignored per design
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
… report regeneration Replace cumulative history file with GitHub query-based detection to correctly identify new contributors relative to report date. This fixes regeneration issues where past reports would incorrectly show zero new contributors. Changes: - Add fetchContributorsBeforeDate() to query historical GitHub data - Replace updateContributorHistory() with identifyNewContributors() - Add bot patterns for 'pull' and 'testpullapp' automation - Regenerate December 2025 and January 2026 reports with accurate counts - Add technical design documentation Bot activity now properly separated from human contributions.
… ChillOps for empty ones Previously, if a subsection was empty it would be omitted entirely. Now both subsections always display, showing '> Status: ChillOps' when empty. This provides consistent structure across all categories and makes it clear when there was no activity in a particular work type. Changes: - Always show '📋 Planned Work' subsection (with ChillOps if empty) - Always show '⚡ Opportunistic Work' subsection (with ChillOps if empty) - Regenerate December and January reports with consistent structure
castrojo
added a commit
that referenced
this pull request
Jan 27, 2026
Update planning documents to reflect v1.1 completion and current project state: STATE.md: - Update status to SHIPPED + Post-Launch Improvements - Add PR #593 accomplishments (historical detection, ChillOps) - Update performance metrics with actual results - Update decisions table with query-based detection - Update architecture section with shipped files - Mark Phase 3 as deferred (goal met via AGENTS.md) - Update session continuity for new milestone planning MILESTONES.md: - Mark v1.1 as SHIPPED (2026-01-27) - List key accomplishments and stats - Add post-launch improvements note - Update git range and timeline ROADMAP.md: - Mark all phases with SHIPPED status - Add post-launch improvements section - Update automation schedule (monthly, last day) - Update metrics with actual results - Add deferred Phase 3 explanation - Update timeline with actual vs estimated New file: milestones/v1.1-COMPLETION.md: - Executive summary of milestone delivery - Detailed deliverables for all phases - Post-launch improvements documentation - Metrics and performance data - Reports published (December, January) - Technical achievements and data flow - Lessons learned and future considerations - Complete artifact listing All documents now accurately reflect the shipped v1.1 milestone and are ready for next planning cycle.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR implements historical contributor detection to correctly identify new contributors when regenerating past reports. The previous approach used a cumulative history file which broke report regeneration.
🐛 Problem Fixed
The Bug: Cumulative history file broke report regeneration
Root Cause: System answered the wrong question
✨ Solution: Query-Based Historical Detection
Instead of maintaining a cumulative file, query GitHub history at generation time to determine who was truly "new" relative to the report date.
How It Works:
historicalContributorscurrentContributorscurrentContributorsbut NOT inhistoricalContributorsBenefits:
📊 Changes
1. Implemented Historical Contributor Detection (0b8537d)
fetchContributorsBeforeDate()- queries GitHub for contributors before report dateupdateContributorHistory()withidentifyNewContributors()2. Enhanced Bot Filtering (0b8537d)
pullandtestpullapp3. Regenerated Reports with Accurate Counts (0b8537d)
pull(8 PRs),testpullapp(5 PRs)4. Added Technical Documentation (0b8537d)
.planning/technical-notes/contributor-detection-design.md5. Previous Commits (581c531, fc9f2ed, ef16ec4)
--month=YYYY-MMCLI argument for regeneration🧪 Testing & Verification
✅ December 2025 Report
✅ January 2026 Report
✅ Bot Filtering
pull(8 PRs) - now in Bot Activity sectiontestpullapp(5 PRs) - now in Bot Activity section✅ Regeneration Test
✅ Build & Serve
npm run build- passesnpm run start- dev server runsnpm run serve- production build works/reports/📈 Performance
🔗 Related
Commits: 4 total (1 historical detection + 1 contributor fix + 1 structure + 1 planning)
Type: Bug fix + enhancement
Impact: Enables accurate historical reporting and reliable regeneration