Follow-up from Codex review threads on #1675, deliberately deferred rather than folded into that PR.
#1675 adds the ephemeral row to the topic-docs tier table and migrates the two plugins that had a stake in it (adhd, architecture). Introducing the row retroactively reclassifies HTML producers elsewhere in the marketplace. Codex has been enumerating them one per push; this issue is the sweep, so the docs PR is not held open while the fleet migrates.
Known producers
1. planning:interview round tables
thread — plugins/planning/skills/interview/context/loop.md:108 writes <memory_dir>/<topic-slug>/interview-round-<n>.html to the memory tier, while calling it "read-only scanning" with the ledger and terminal as the tracked record. One file per round is the accumulating tree the footprint rule prohibits.
Open question first: are the round tables genuinely disposable? Rounds are numbered across a session and answered by number in the terminal, so a user on round 3 may legitimately want round 1's table still readable. If so these are memory-tier by nature and the binding should document the downstream reader instead of migrating.
2. education:teach lesson HTML
thread — plugins/education/skills/teach/context/lessons.md ("Ephemeral placement") labels the file ephemeral but places it under ${CLAUDE_PLUGIN_DATA}/<project-slug>/<mode>/<topic>/concepts/<concept>/, which the tier table classifies as machine state — persistent and accumulating. The doc contradicts itself: it says ephemeral and writes durable.
Open question first: teach is a multi-session coach whose learning-records are explicitly durable. If a learner reopens a past concept's lesson page, the HTML is a durable teaching artifact and the fix is to stop calling it ephemeral — not to move it to temp.
Shape of the work
Each is its own PR: manifest version bump, changelog entry, and binding-doc update (plugins/<name>/reference/topic-docs.md). Neither should be resolved by moving files before answering its open question — the ephemeral row is a classification, and the honest outcome for a producer may be "it was never ephemeral, fix the label."
Acceptance
Per producer, either migrate to the ephemeral tier with one file per run, or record in that plugin's binding doc why a later session reads the file and classify it accordingly. Not silence.
Follow-up from Codex review threads on #1675, deliberately deferred rather than folded into that PR.
#1675 adds the ephemeral row to the topic-docs tier table and migrates the two plugins that had a stake in it (
adhd,architecture). Introducing the row retroactively reclassifies HTML producers elsewhere in the marketplace. Codex has been enumerating them one per push; this issue is the sweep, so the docs PR is not held open while the fleet migrates.Known producers
1.
planning:interviewround tablesthread —
plugins/planning/skills/interview/context/loop.md:108writes<memory_dir>/<topic-slug>/interview-round-<n>.htmlto the memory tier, while calling it "read-only scanning" with the ledger and terminal as the tracked record. One file per round is the accumulating tree the footprint rule prohibits.Open question first: are the round tables genuinely disposable? Rounds are numbered across a session and answered by number in the terminal, so a user on round 3 may legitimately want round 1's table still readable. If so these are memory-tier by nature and the binding should document the downstream reader instead of migrating.
2.
education:teachlesson HTMLthread —
plugins/education/skills/teach/context/lessons.md("Ephemeral placement") labels the file ephemeral but places it under${CLAUDE_PLUGIN_DATA}/<project-slug>/<mode>/<topic>/concepts/<concept>/, which the tier table classifies as machine state — persistent and accumulating. The doc contradicts itself: it says ephemeral and writes durable.Open question first:
teachis a multi-session coach whose learning-records are explicitly durable. If a learner reopens a past concept's lesson page, the HTML is a durable teaching artifact and the fix is to stop calling it ephemeral — not to move it to temp.Shape of the work
Each is its own PR: manifest version bump, changelog entry, and binding-doc update (
plugins/<name>/reference/topic-docs.md). Neither should be resolved by moving files before answering its open question — the ephemeral row is a classification, and the honest outcome for a producer may be "it was never ephemeral, fix the label."Acceptance
Per producer, either migrate to the ephemeral tier with one file per run, or record in that plugin's binding doc why a later session reads the file and classify it accordingly. Not silence.