Skip to content

Commit 551a83c

Browse files
committed
docs(psl-relation-syntax): S2 harness note + keep slices 4-5 in-project (operator)
Signed-off-by: Alexey Orlenko's AI Agent <robot@aqrln.net>
1 parent 9c6ee13 commit 551a83c

2 files changed

Lines changed: 2 additions & 2 deletions

File tree

  • projects/psl-relation-syntax

projects/psl-relation-syntax/plan.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ Slice 1 is a hard gate: until `from`/`to` resolve and the formatter/printer emit
5757

5858
The plan lists **5 slices**, above the 1–4 sweet spot (`drive/calibration/sizing.md` flags 5+ as "two projects with one shared umbrella ticket"). The split is real: slices 1–3 deliver the project's named purpose (the directional, point-don't-name vocabulary) and stand alone; slices 4–5 are *additional* M:N boilerplate-elimination forms, and slice 4 reaches into the migration/DDL subsystem — a different blast radius.
5959

60-
**Recommendation:** at slice-3 close, promote slices 4–5 (TML-2943, TML-2944) to a sibling follow-on project ("M:N boilerplate elimination") with an explicit dependency on this project's `through:` foundation. They are planned here for observability and because they are not yet started; reassigning the two issues to a new Linear Project is trivial. The decision is deferred to that checkpoint (operator-authorisation-gated, per `drive-triage-work`); the core stack (1–3) proceeds regardless.
60+
**Decision (operator, 2026-06-24):** slices 4–5 are **kept in this project** — not promoted. The project delivers all five slices in one branch stack. (The promotion option was surfaced at the core's near-close per the 1–4 sweet-spot flag; the operator chose to keep them here.) S4 and S5 build on slice 2's `through:` foundation (and S5 on S3's member-access grammar); they parallelise after their dependencies.
6161

6262
## Close-out (required)
6363

projects/psl-relation-syntax/slices/02-through-explicit-mn/spec.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ One outcome — "an explicitly-declared `through: Junction` authors a navigable
3535
## Slice-specific done conditions
3636

3737
- [ ] An M:N authored `tags Tag[] @relation(through: PostTag)` (one-end-declared, bare inverse) lowers to the same `N:M` + `through` contract as the equivalent bare-list form — proven by an equivalence unit test.
38-
- [ ] `db.orm.<Model>.include(<m2n>)` over a **PSL-`through:`-authored** M:N returns the related rows — PG + SQLite integration, whole-row assertions, ≥1 implicit select (project integration standard).
38+
- [ ] `db.orm.<Model>.include(<m2n>)` over a **PSL-`through:`-authored** M:N returns the related rows — whole-row assertions, ≥1 implicit select (project integration standard). _Harness: PGlite only — the M:N integration suites have no SQLite adapter path (sibling-established); "PG + SQLite" reduces to PGlite here._
3939
- [ ] `through:` naming a non-junction model produces an actionable diagnostic (regression test on a declined shape).
4040

4141
## References

0 commit comments

Comments
 (0)