window.memoryTutorial version 1 operates this tutorial only. discover() returns schemas, permissions and gaps; inspect() returns the authoritative page revision, chapter, demo, checklist/storage state and stable controls. query() searches chapter text, never OMP memory.
act() requires an explicit control ID and fresh expectedRevision. Actions are click, setChecked with checked, or setOpen with open. They use native click/change paths. Stale, unknown, ambiguous and unavailable targets fail structurally.
const t = window.memoryTutorial;
t.discover();
t.query({ text: "compaction", limit: 3 });
const before = t.inspect();
await t.act({
id: "demo-recall",
action: "click",
expectedRevision: before.revision
});
await t.wait({
afterRevision: before.revision,
timeoutMs: 1000,
match: { demoStep: 3 }
});
t.diagnose();
wait() accepts 0–5000 milliseconds and returns matched or timed-out. Errors use {ok:false, error:{code,message}}. Revisions expire on reload; scrolling can change them. Clipboard outcomes may require manual copying. Saved ticks reflect the last local observation, without multi-tab locking. No operation accesses OMP, files, credentials or real memories.