diff --git a/.planning/phases/34-plugin-marketplace/34-02-SUMMARY.md b/.planning/phases/34-plugin-marketplace/34-02-SUMMARY.md index 90ca2f10..3d99951d 100644 --- a/.planning/phases/34-plugin-marketplace/34-02-SUMMARY.md +++ b/.planning/phases/34-plugin-marketplace/34-02-SUMMARY.md @@ -251,9 +251,9 @@ None beyond the plan's threat model. T-34-07 and T-34-08 are mitigated by the ge | sm-golem-plugin | master | 89fd90a6d21c78501499c18e4eea5a4853e9519d | golem15.golem | Golem AI (override) | - | v0.6.0 (was v0.4.0) | v0.1.1 -> v0.1.2 | | sm-feedback-plugin | master | dd78bd275ccf533ae3d07d6dfb415f2a1b44b2f7 | golem15.feedback | Feedback (override) | golem15.user v0.1.0 | v0.6.0 (was v0.4.0) | v0.1.1 -> v0.1.2 | | sm-quizzes-plugin | master | 67a83dba321f1c97471bc7ba704c2218c21dc4f8 | golem15.quizzes | Quizzes (override) | golem15.user v0.1.0 | v0.6.0 (was v0.1.9) | v0.1.0 -> v0.1.1 | -| sm-presentations-plugin | master | b6247aa0343a7027c02bca4751cf99cf53a16419 (after README bb81f4d72108bdaf31d15044fdd95bc5ace0884f) | golem15.presentations | Presentations (README) | golem15.user v0.1.0 | v0.6.0 (was v0.5.0) | v0.1.1 -> v0.1.2 | +| sm-presentations-plugin | master | 3eb4de72c5ec43ddd7c56de57202e79f7584a5e8 (after README cfa0c40 (both rebased onto sm-bm-app's unpushed theme commit d205cd7 on 2026-10-30)) | golem15.presentations | Presentations (README) | golem15.user v0.1.0 | v0.6.0 (was v0.5.0) | v0.1.1 -> v0.1.2 | -- **sm-presentations-plugin:** at first skipped because it had no README.md (kiosk refuses to derive without one, even with `--name` and `--description`). Jakub asked for it to be included, so a README was written from the code (H1 "Presentations", summary, Overview, Features, Usage, Configuration, API reference, CLI commands, Dependencies, Testing) and committed on its own as `docs: README` (bb81f4d). The manifest commit follows, with no name override. Its planned v0.1.2 also releases the 10 commits after v0.1.1. +- **sm-presentations-plugin:** at first skipped because it had no README.md (kiosk refuses to derive without one, even with `--name` and `--description`). Jakub asked for it to be included, so a README was written from the code (H1 "Presentations", summary, Overview, Features, Usage, Configuration, API reference, CLI commands, Dependencies, Testing) and committed on its own as `docs: README` (cfa0c40). The manifest commit follows, with no name override. Its planned v0.1.2 also releases the 10 commits after v0.1.1. - **Framework fix 87921c2, `fix(kiosk)`:** these repositories are developed inside applications. Their go.mod replaces point at an application mount (`../../../../summercms.go`, and `sm-user-plugin => ../user`). kiosk resolves required plugins with `GOWORK=off`. Next to the framework, `../user` does not exist, so feedback and quizzes derived `golem15.user: ""`, while inside sm-demo-app they derived `v0.1.0`. TestPluginManifest could not pass in both layouts. kiosk now fetches a required module whose local replace directory is missing at the version go.mod requires, so both layouts give `v0.1.0`. The fix has a regression test (TestDeriveMissingReplace, offline file:// proxy), and the 21 existing manifests stayed fresh. - **Local build setup:** each clone has an untracked `go.work` listed in `.git/info/exclude`. It uses `.`, replaces the framework with `../summercms.go`, and, where the plugin requires the user plugin, replaces it with `../sm-demo-app/plugins/golem15/user`. The committed go.mod replaces are unchanged, and tidy ran with them pointed at those paths only temporarily. - **Checks:** for golem, feedback, quizzes and presentations, TestPluginManifest, `go vet ./...`, `go test -short ./...` (green before and after the change), `summer plugin:manifest --check` and anonymous `git ls-remote` over HTTPS all pass. The drift guard was demonstrated on feedback and presentations. `go mod tidy` removed the fang leftovers (note 3) and added framework v0.6.0's indirect requires. No direct require was removed or downgraded. diff --git a/.planning/phases/34-plugin-marketplace/34-release-log.md b/.planning/phases/34-plugin-marketplace/34-release-log.md index bea0bfb8..f5db07e5 100644 --- a/.planning/phases/34-plugin-marketplace/34-release-log.md +++ b/.planning/phases/34-plugin-marketplace/34-release-log.md @@ -68,9 +68,9 @@ Each repository's new commit is the 34-02 manifest commit (`feat: plugin.yaml ma | 21 | sm-golem-plugin | master | 89fd90a | 1 | v0.1.1 | **v0.1.2** | - | | 22 | sm-feedback-plugin | master | dd78bd2 | 1 | v0.1.1 | **v0.1.2** | - | | 23 | sm-quizzes-plugin | master | 67a83db | 1 | v0.1.0 | **v0.1.1** | - | -| 24 | sm-presentations-plugin | master | b6247aa | 12 (10 unreleased feature/test commits, README, manifest) | v0.1.1 | **v0.1.2** | - | +| 24 | sm-presentations-plugin | master | 3eb4de7 | 13 (10 unreleased feature/test commits, the sztab theme d205cd7 from sm-bm-app's mount, README, manifest) | v0.1.1 | **v0.1.2** | - | -Rows 21-24 are the SC-1 gap closure (34-02-SUMMARY, "Gap closure: SC-1 remaining repos"); fresh clones, 0 behind origin/master (golem, feedback and quizzes 1 ahead; presentations 2 ahead: `docs: README` bb81f4d, then the manifest commit). Their go.mod replaces point at an application mount (`../../../../summercms.go`, `../user`); next to the framework they build through an untracked, git-excluded `go.work` (framework `../summercms.go`, user `../sm-demo-app/plugins/golem15/user`), so the `GOWORK=off go build` in step 3 does not apply to them: use `go build ./...`. Their manifests need framework commit 87921c2 (in v0.6.0). sm-presentations-plugin had no README.md, so a README was added first (bb81f4d `docs: README`, H1 "Presentations"); its manifest needs no name override. Its v0.1.2 also carries the 10 commits since v0.1.1 (deck image, revision and deck tools over MCP, signed one-time image uploads), which sm-bm-app already runs. +Rows 21-24 are the SC-1 gap closure (34-02-SUMMARY, "Gap closure: SC-1 remaining repos"); fresh clones, 0 behind origin/master (golem, feedback and quizzes 1 ahead; presentations 3 ahead: the sztab theme d205cd7 from sm-bm-app's mount, `docs: README` cfa0c40, then the manifest commit 3eb4de7). Their go.mod replaces point at an application mount (`../../../../summercms.go`, `../user`); next to the framework they build through an untracked, git-excluded `go.work` (framework `../summercms.go`, user `../sm-demo-app/plugins/golem15/user`), so the `GOWORK=off go build` in step 3 does not apply to them: use `go build ./...`. Their manifests need framework commit 87921c2 (in v0.6.0). sm-presentations-plugin had no README.md, so a README was added first (cfa0c40 `docs: README`, H1 "Presentations"); its manifest needs no name override. Its v0.1.2 also carries the 10 commits since v0.1.1 (deck image, revision and deck tools over MCP, signed one-time image uploads), which sm-bm-app already runs. Requirements inside the set (from the manifests): journal and faq need translate; chat, mfa, oauthserver, sociallogin, paymentgateway, forum and userfriends need user; chatvideo needs chat; chatchannels and chatbots need chat and user; paymentgatewaysubscriptions needs paymentgateway and user; pgstripe needs paymentgateway, and its `subscriptions/` plugin needs paymentgatewaysubscriptions; feedback, quizzes and presentations need user; golem needs none. @@ -203,8 +203,8 @@ Pending gitlinks (from 34-02 and 34-03; "tag" is the tagged commit): | sm-bm-app | plugins/golem15/quizzes | 362dc02 | v0.1.1 (67a83db) | | fonoteka.go | plugins/golem15/golem | 37748ae | v0.1.2 (89fd90a) | | fonoteka.go | plugins/golem15/feedback | ce4b43e | v0.1.2 (dd78bd2) | -| sm-demo-app | plugins/golem15/presentations | 5bcbaaf | v0.1.2 (b6247aa) | -| sm-bm-app | plugins/golem15/presentations | 30a47ac | v0.1.2 (b6247aa) | +| sm-demo-app | plugins/golem15/presentations | 5bcbaaf | v0.1.2 (3eb4de7) | +| sm-bm-app | plugins/golem15/presentations | d205cd7 (committed in 9929195) | v0.1.2 (3eb4de7) | 40 plugin gitlinks plus the vue app link (the last eight rows come from the SC-1 gap closure). Every non-chat bump is a fast-forward (checked in 34-02; the gap-closure targets are fast-forwards of the commit each app points at today: golem, feedback and quizzes one commit on top, presentations 12 commits after sm-demo-app's v0.1.1 and 2 after sm-bm-app's 30a47ac). No application mounts chatvideo, forum, herald or userfriends: those need only their tag. sm-grzybyfunkcjonalne-app (1) and fonoteka.go (39) already carry unpushed commits of their own; sm-summercmsio-app's working tree already shows its two gitlinks modified (left uncommitted by 34-03 and 34-06 on purpose). @@ -357,3 +357,6 @@ If a rebase or a check changes a plugin's version before tagging, update this li | Step | Date | What was done | Result (SHA, tag object, URL) | |------|------|---------------|-------------------------------| | | | | | + + +**Note (2026-10-30, presentations):** sm-bm-app's mount had an unpushed commit `d205cd7 feat: offer the sztab presentation theme` (gitlink committed in sm-bm-app 9929195). The README and manifest commits were rebased onto it in `../sm-presentations-plugin` (new SHAs cfa0c40, 3eb4de7), so v0.1.2 includes the theme and both app bumps are fast-forwards. Push `../sm-presentations-plugin` master (it carries d205cd7); the mount in sm-bm-app then fast-forwards to 3eb4de7.