chore: drop non-code junk (pi-mono-reference, runtime state, root duplicates)

Remove files that should never have been tracked:

- pi-mono-reference/: 688-file copy of an upstream monorepo, zero imports,
  used only as offline human reference
- build/electron-builder.runtime.json: environment-specific build artifact
  with hardcoded local paths
- state/cancel-signal-state.json: runtime state written by the app
- prompt.txt, logo.svg (root): exact duplicates of the canonical copies
  under .planning/archive/ and assets/

Add state/ to .gitignore so future runtime state stays out.
This commit is contained in:
ZacharyZhang-NY committed 2026-04-17 22:37:39 -04:00
1 parent 34ca5b77f1
commit 1f7230fe87
691 files changed
+3 -190434

No files matched your search

@@ -1,74 +0,0 @@
/**
* DOOM Overlay Demo - Play DOOM as an overlay
*
* Usage: pi --extension ./examples/extensions/doom-overlay
*
* Commands:
* /doom-overlay - Play DOOM in an overlay (Q to pause/exit)
*
* This demonstrates that overlays can handle real-time game rendering at 35 FPS.
*/
import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
import { DoomOverlayComponent } from "./doom-component.js";
import { DoomEngine } from "./doom-engine.js";
import { ensureWadFile } from "./wad-finder.js";
// Persistent engine instance - survives between invocations
let activeEngine: DoomEngine | null = null;
let activeWadPath: string | null = null;
export default function (pi: ExtensionAPI) {
pi.registerCommand("doom-overlay", {
description: "Play DOOM as an overlay. Q to pause and exit.",
handler: async (args, ctx) => {
if (!ctx.hasUI) {
ctx.ui.notify("DOOM requires interactive mode", "error");
return;
}
// Auto-download WAD if not present
ctx.ui.notify("Loading DOOM...", "info");
const wad = args?.trim() ? args.trim() : await ensureWadFile();
if (!wad) {
ctx.ui.notify("Failed to download DOOM WAD file. Check your internet connection.", "error");
return;
}
try {
// Reuse existing engine if same WAD, otherwise create new
let isResume = false;
if (activeEngine && activeWadPath === wad) {
ctx.ui.notify("Resuming DOOM...", "info");
isResume = true;
} else {
ctx.ui.notify(`Loading DOOM from ${wad}...`, "info");
activeEngine = new DoomEngine(wad);
await activeEngine.init();
activeWadPath = wad;
}
await ctx.ui.custom(
(tui, _theme, _keybindings, done) => {
return new DoomOverlayComponent(tui, activeEngine!, () => done(undefined), isResume);
},
{
overlay: true,
overlayOptions: {
width: "75%",
maxHeight: "95%",
anchor: "center",
margin: { top: 1 },
},
},
);
} catch (error) {
ctx.ui.notify(`Failed to load DOOM: ${error}`, "error");
activeEngine = null;
activeWadPath = null;
}
},
});
}