Files
summercms/.planning/todos/done/verify-models-leaf-rule.md
Jakub Zych a9c77fcf49 docs(05-01): confirm models-leaf rule against three more plugins
- Probe keios.eu user, jz chat, and pxpx checkout for models→sibling uses
- Every live edge is a cast or service-calling hook; no "other" category
- Close folded todo verify-models-leaf-rule; bulk port may proceed
2026-09-18 18:37:26 +02:00

23 lines
1.5 KiB
Markdown

---
title: Verify the models-leaf layout rule against keios.eu and a jz/pxpx plugin before Phase 5
date: 2026-09-18
priority: medium
area: plugin layout / conversion
status: done
---
Before the bulk model port (Phase 5) and before any second-project port, repeat the dependency probe done for Fonoteka on 2026-09-18 (see `.planning/notes/plugin-layout-winter-directories.md`) on at least:
- one keios.eu stack plugin with models and services (`/media/nvme/dev/golem15/keios.eu/plugins/golem15/user` or `paymentgateway`)
- one jz project plugin
- one pxpx project plugin
For each, count `models/ → classes/` (and `models/ → any sibling dir`) `use` edges and classify them as cast / service-calling hook / other. The rule holds if every edge falls into "cast moves into models" or "hook becomes a callback registered from classes/plugin.go". Any "other" category means the rule (or the note) needs amending before agents apply it at scale.
```
grep -rl "Vendor\\\\Plugin\\\\Classes" plugins/vendor/plugin/models | wc -l
grep -rn "Vendor\\\\Plugin\\\\Classes" plugins/vendor/plugin/models
```
**Resolution (2026-09-18):** Probed `keios.eu/plugins/golem15/user`, `wavepath.org/plugins/golem15/chat`, and `PXSTARTER/plugins/pixelpixel/checkout`. Every live `models/` → sibling edge is cast or service-calling hook (see the three dated Evidence sections in `.planning/notes/plugin-layout-winter-directories.md`). No "other" category. The leaf rule holds; the bulk port may proceed.