|
| 1 | +--- |
| 2 | +id: 187 |
| 3 | +title: "Refine and land PR #118 — entity-as-folder support (Karen Hsieh)" |
| 4 | +status: backlog |
| 5 | +source: "external contribution from Karen Hsieh (@ijac13) — PR #118 closes GitHub issue #99 with entity-as-folder scanner support. Spacedock-workflow entity filed to track refinement + review through our standards while preserving contributor attribution on merge." |
| 6 | +started: |
| 7 | +completed: |
| 8 | +verdict: |
| 9 | +score: 0.6 |
| 10 | +worktree: |
| 11 | +issue: "#99" |
| 12 | +pr: "#118" |
| 13 | +mod-block: |
| 14 | +--- |
| 15 | + |
| 16 | +## Contributor |
| 17 | + |
| 18 | +Karen Hsieh (@ijac13 on GitHub) is the original author and owns the authorship on every commit in `feat/entity-as-folder`. Any refinement we apply must be **additive on top of her branch** (or squash-merge with `Co-authored-by: Karen Hsieh <...>` trailer preserved) — we do NOT rewrite her commits with our authorship. Contributor attribution is load-bearing. |
| 19 | + |
| 20 | +## Why this matters |
| 21 | + |
| 22 | +GitHub issue #99 (filed by CL in 0.9.4) proposed first-class entity-as-folder support so workflows producing many artifacts per entity can organize them under `{slug}/index.md` without breaking the scanner. Karen's PR #118 implements this: |
| 23 | + |
| 24 | +- Scanner descends into `{slug}/index.md` when flat `{slug}.md` is absent. |
| 25 | +- `status --set` resolves folder entities by the same rule. |
| 26 | +- `status --archive` moves the whole folder to `_archive/{slug}/` and stamps `archived:` inside the inner index. |
| 27 | +- `--archived`, `--boot`, `--next`, `--next-id`, `--where` inherit via shared discovery. |
| 28 | +- Reserved subdirs (`_archive`, `_mods`) excluded from entity detection. |
| 29 | +- Conflict case (both flat + folder present) warns on stderr and prefers folder. |
| 30 | +- Flat-file workflows unchanged; 444 tests passing locally per PR body. |
| 31 | + |
| 32 | +This entity exists because **we want to refine the submission through our workflow** before landing — reviewing the design against our standards, verifying coverage, potentially requesting scope adjustments. |
| 33 | + |
| 34 | +## Scope for ideation |
| 35 | + |
| 36 | +- Read the PR diff in full; inventory each change vs the issue-#99 spec. |
| 37 | +- Identify refinements (wording, test coverage gaps, edge cases not yet exercised, API-surface questions) to request from Karen OR apply ourselves on a follow-up commit. |
| 38 | +- Distinguish "must-fix before merge" refinements from "nice-to-have follow-up." |
| 39 | +- Produce a concrete change request list for the PR review, or a clear PASSED-as-is acceptance. |
| 40 | +- Confirm CI strategy: PR #118's `Runtime Live E2E` run (24555916111) is currently WAITING for env approval; decide whether to approve before or after ideation. |
| 41 | + |
| 42 | +## Merge strategy |
| 43 | + |
| 44 | +- Preserve authorship. Default path: merge-commit (no squash) so every commit keeps Karen as author. |
| 45 | +- If squash is preferred for linear-history reasons, the squash commit MUST include `Co-authored-by: Karen Hsieh <email-from-commit>` in the trailer. |
| 46 | +- The FO's `pr-merge` mod's PR-body template does not fit here (this is an external PR, not one we authored). The merge-hook's push step is skipped — the branch is already pushed by the contributor. |
| 47 | + |
| 48 | +## Out of scope |
| 49 | + |
| 50 | +- Rewriting Karen's commits to look like ours. |
| 51 | +- Adding a spacedock-workflow-style entity body INSIDE `feat/entity-as-folder` — that's our internal convention, not hers. |
| 52 | +- Forcing PR #118 through our ideation-gate-then-implementation pattern — implementation already exists; this workflow entity covers review + refinement only. |
| 53 | + |
| 54 | +## Cross-references |
| 55 | + |
| 56 | +- GitHub issue #99 — the original feature request (authored by CL, 0.9.4) |
| 57 | +- PR #118 — the implementation (authored by Karen Hsieh / @ijac13, open) |
| 58 | +- CI run 24555916111 — PR #118's Runtime Live E2E, currently WAITING for env approval |
0 commit comments