mirror of
https://bitbucket.org/siakitem/my-pi.git
synced 2026-08-28 08:35:57 +00:00
2.4 KiB
2.4 KiB
issue, issue_title
| issue | issue_title |
|---|---|
| 122 | piInfrastructureReadPaths doesn't support glob patterns (**), causing confusing fallback to external_directory |
Retro: #122 — Glob support for piInfrastructureReadPaths
Final Retrospective (2026-05-22T17:00:00Z)
Session summary
Added * and ? wildcard support to piInfrastructureReadPaths by routing glob-containing entries through the existing wildcardMatch() in isPiInfrastructureRead().
Also fixed a pre-existing silent bug where ~ expansion never worked for plain directory entries.
Shipped as pi-permission-system v7.1.0.
Observations
What went well
- The feature was a 4-line logic change in one function (
isPiInfrastructureReadinsrc/path-utils.ts), reusingwildcardMatch()andexpandHomePath()with zero new dependencies. This is a direct payoff from prior refactorings (#48, #110) that extractedisPiInfrastructureReadas a pure function and kept wildcard matching in a single composable module. - The
~expansion bug was discovered during planning (grepping forexpandHomePathinpath-utils.tsfound no import) and fixed as a natural side effect of the implementation — no extra step needed. - TDD cycle was zero-rework: 5 expected failures in the red phase, all green on first implementation, no unexpected downstream breakage across 1467 tests.
What caused friction (agent side)
missing-context— The docs commit (94fa688) used**in thepiInfrastructureReadPathsexample pattern, copying the reporter's original syntax without noting that**and*are identical in this system's wildcard matcher. The user caught this and made a corrective commit (00563dc). Impact: one follow-up commit to fix misleading examples; no rework to code or tests. User-caught.instruction-violation— The/ship-issueprompt template wrapped commit SHAs in backticks (`<sha>`), which prevents GitHub's auto-linking in issue comments. The user noticed the SHAs in a prior closed issue weren't clickable and traced it to the template. Impact: one fix commit (5f7665b) to.pi/prompts/ship-issue.md; added friction but no code rework. User-caught.
What caused friction (user side)
- No significant friction.
The user's mid-session redirect about
**vs*semantics was well-timed and led to cleaner documentation.
Changes made
- Retro file created at
packages/pi-permission-system/docs/retro/0122-infra-read-glob-support.md.