Forum teuk.org

MB764 and the First Council of the v3 Houses 🏰📜

in Mediabot · started by TeuK · 17h ago

TeuK · 17h ago

For many chapters, Mediabot’s Plugin API v3 had behaved like a careful first- year wandering the castle after curfew: capable, increasingly well equipped, but always accompanied by rollback spells and never trusted with more doors than the current lesson required. MB764 is the evening when the professors finally convened the first council and allowed one thoroughly examined house to remain in the corridor. 🕯️🪄

The promoted house is factoids-v3, and its permission extends to exactly one development room: #test. No production channel was touched. No second plugin was smuggled beneath an Invisibility Cloak. The Quotes path remains stable, and the wider castle still defaults to locked doors.

The Marauder’s Map for API v3 🗺️

MB764 introduces .plugins overviewv3, a compact operator view that answers a question the older individual diagnostics could not answer at a glance: what is installed, what is actually loaded, and where is v3 active right now?

The overview reconciles every validated local v3 package with the live PluginManager instances. Its first line counts discovered, loaded, enabled, active, ready and limited packages, along with the number of active channel policies. Each package row then reports only its version, installed-or-missing source state, lifecycle, deterministic readiness, reason and aggregate on/observe/off counts.

Like a well-behaved Marauder’s Map, it shows posture without handing over the keys. The report is read-only, capped at 64 rows, and contains no policy values, filesystem paths, credentials, service objects or plugin objects. Looking at the map cannot load, enable, configure or heal anything. 🔍🔒

The promotion trial 🧪

The complete five-command Factoids set had already crossed the v3 bridge in measured stages: readers, authorized writes, recall authority, and finally the visible and quiet recall routes. MB764 consolidates that evidence into one supervised promotion trial.

The package begins in observe, where the v3 branch may inspect bounded data but cannot speak or write. The historical handler remains the only visible and mutating path. It then moves to on for the authoritative proof, using a uniquely named disposable factoid. The trial checks factoid, factoids, learn, forget, whatis, and the ?keyword shortcut. Explicit misses still teach; quiet misses remain silent; successful explicit and quiet recalls each answer once and increment the counter exactly once.

The disposable factoid is forgotten before promotion is accepted. The temporary Owner identity and exact hostmask binding are removed as well. The final council record must show one ready package, one on channel, zero plugin failures, and no test data left in the library stacks. 📚✅

A promotion with an emergency Portkey 🗝️

This is intentionally not boot persistence. API v3 still has no autoload path, so a service restart returns the package to unloaded. That is a safety property, not an omission: every restart demands a fresh, explicit Owner decision before the experimental platform becomes authoritative again.

The immediate rollback incantation also remains short and familiar:

.plugins policy factoids-v3 #test off
.plugins disable factoids-v3
.plugins unload factoids-v3

The first command restores the saved historical handlers on the channel; disable and unload close the live instance and return the exact registry entries. The delivery wrapper carries an additional Portkey: if validation or commit fails after promotion, it restarts the development service and thereby returns v3 to its unloaded state.

What the council decided 🦉

MB764 does not declare every future Mediabot feature a plugin. It closes the first extraction wave with evidence that the platform can discover, explain, shadow, authorize, promote and roll back a real database-backed product slice. Quotes are stabilized. Factoids have completed their five-command migration and earned one controlled development promotion. Further migrations—radio, moderation, AI, or anything else—now begin as new product decisions rather than unfinished business from this foundation.

The Ministry ledger is finally pleasantly boring: one map, one room, one explicit authority, one cleanup trail, and several very obvious exits. ✨

You must be logged in to reply.