Fix broken markdown tables in daily org status report - #197
Conversation
The prompt template was inconsistent in showing separator rows for markdown tables. Some tables had separator rows shown explicitly (e.g., Open PRs blocker summary), while others did not (e.g., Open Issues, Open Discussions). This inconsistency caused Claude to omit the separator rows and sometimes the entire header row for the first table, breaking markdown table formatting in the generated report. Now all table format specifications in the prompt include the separator row (|---|---|...|) explicitly, ensuring consistent and correct table rendering. Fixes: Broken table formatting in daily org status report (issue #196) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
📝 WalkthroughWalkthroughThe PR adds explicit Markdown table alignment rows to the report template in ChangesReport Template Formatting
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
There was a problem hiding this comment.
Pull request overview
This PR updates the org_status.sh prompt template used by the daily org status report generator to make markdown table formatting unambiguous, addressing cases where the LLM omits table headers/separators.
Changes:
- Added explicit markdown table separator rows (
|---|...|) for the “Open PRs — Needs Human Review” table spec. - Added explicit separator rows for the “Open PRs — Automation (Dependency Bumps)” table spec.
- Added explicit separator rows for the “Open Issues” and “Open Discussions” table specs.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| ### \`## Open PRs — Needs Human Review\` | ||
| Full table for PRs with needsHumanReview == true: | ||
| | Repo | PR # | Opened | Title | CI | Approvals | | ||
| |---|---|---|---|---|---| | ||
| - PR # as markdown link using url field: [#N](url) |
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
scripts/org_status.sh (1)
290-291:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winPer-repo PR breakdown table is still missing its separator row.
The "Open PRs — Why They're Unmerged" per-repo breakdown table on line 290 has no
|---|...|alignment row, which is the same inconsistency this PR is fixing in the other sections. Claude may drop the header or render it as raw pipe-delimited text, just as it did for the "Open Issues" table (issue#196).🔧 Proposed fix
| Repo | Total | Awaiting Review | CI Failing | CI Pending | Changes Req | Approved | No CI/Policy | Draft | +|---|---|---|---|---|---|---|---|---| - Repo name as a link to the repo: [owner/repo](https://github.com/owner/repo)🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@scripts/org_status.sh` around lines 290 - 291, The per-repo PR breakdown table is missing the Markdown alignment row after the header string "| Repo | Total | Awaiting Review | CI Failing | CI Pending | Changes Req | Approved | No CI/Policy | Draft |"; insert a separator row immediately after that header consisting of matching column separators (e.g. a "|---|" cell for each column) so the table renders properly, ensuring the separator row has the same number of columns and pipe delimiters as the header.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Outside diff comments:
In `@scripts/org_status.sh`:
- Around line 290-291: The per-repo PR breakdown table is missing the Markdown
alignment row after the header string "| Repo | Total | Awaiting Review | CI
Failing | CI Pending | Changes Req | Approved | No CI/Policy | Draft |"; insert
a separator row immediately after that header consisting of matching column
separators (e.g. a "|---|" cell for each column) so the table renders properly,
ensuring the separator row has the same number of columns and pipe delimiters as
the header.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: 428dc677-3516-41f1-ae5a-72688ab30120
📒 Files selected for processing (1)
scripts/org_status.sh



Summary
The prompt template used to generate the daily org status report was inconsistent in how it specified markdown table separators. Some tables explicitly showed the separator row (
|---|---|---|) while others did not. This caused Claude to omit separators—and sometimes the entire header row—for tables without explicit separators.This is evident in issue #196 where the first table (Open Issues) is missing its header and separator rows, making it appear as raw pipe-delimited text instead of a formatted markdown table.
Root Cause
The format specification for:
Claude correctly inferred these for some tables but not others, leading to inconsistent output.
Fix
Added explicit separator rows to all table format specifications in the prompt template to ensure consistent table formatting. This makes the template unambiguous and ensures all tables are properly formatted regardless of Claude's inference.
Testing
The fix will be tested by the next scheduled run of the daily-org-status workflow (tomorrow at 6:00 AM CDT). The generated report should now have properly formatted markdown tables throughout.
Summary by CodeRabbit