Task: Add a full-content flag to compass show
Table of Contents
This page documents a task in the Compass quality-of-life improvements: remaining follow-ups story. It captures the goal, current status, acceptance, and any notes or results.
Goal
(Describe what user-visible-or-internal change this task produces.)
Status
| Field | Value |
|---|---|
| State | DONE |
| Parent story | Compass quality-of-life improvements: remaining follow-ups |
| Now | Nothing. |
| Waiting on | Nothing. |
| Next | Nothing. |
| Last touched | 2026-08-05 |
Acceptance
Plan
Added --full flag to doc_show.py. When set, reads the raw file
and prints everything after the :PROPERTIES: block (i.e. the
frontmatter key-value lines and the full body content). Uses
re.split(r"^:END:\s*$", text, flags=re.M) to split frontmatter
from content. Total change: 7 lines.
Notes
Test Scenarios
Manual QA scenarios (scaffolded via compass add test_scenario, run
through the QA Validation Runner panel) that verify this task. Link
new ones here as they're created; the scenario doc itself links back
via its "Verifies task" field.
| Scenario | State | Notes |
|---|---|---|
PRs
| PR | Title |
|---|---|
| #1880 | [compass] Add –full flag to compass show |
Review
Round 1 (bot review)
Fixed body-extraction to split at first * heading instead of :END:, eliminating header/blurb duplication. Removed redundant Path import and used errors="replace" for consistency.
| # | Comment summary | File | Decision | Notes |
|---|---|---|---|---|
| 1 | Body duplicates header metadata and blurb | doc_show.py | Fixed — split at first * heading instead of :END: | |
| 2 | Redundant Path(doc.path) wrap | doc_show.py | Fixed — removed Path import, using doc.path directly | |
| 3 | Inconsistent decode behavior (strict vs replace) | doc_show.py | Fixed — using errors="replace" |
Result
Added --full flag to compass show. When set, prints the full file
content after the frontmatter properties block as a 📄 Body section.
Allows the LLM to read document content directly without falling back
to the Read tool. Total change: 9 lines in doc_show.py.