demobites 1.23.0 → 1.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/launcher/index.mjs +15 -0
- package/package.json +1 -1
package/launcher/index.mjs
CHANGED
|
@@ -670,9 +670,24 @@ if (arg === "listen") {
|
|
|
670
670
|
if (SERVICE) removeService(); // bootout ends this process; the handlers below clear the lock
|
|
671
671
|
bye("OFF");
|
|
672
672
|
};
|
|
673
|
+
// FORGET FROM THE APP (1.24.0, founder 2026-10-17: "we can and should forget from here as well"): the
|
|
674
|
+
// app's order drops one site's folder from this machine's bindings; the planner works from the live app there.
|
|
675
|
+
const runForget = async (job) => {
|
|
676
|
+
noteState({ busy: true, job: job.id });
|
|
677
|
+
await event(job.id, "started", { machine: name });
|
|
678
|
+
let site = "";
|
|
679
|
+
try { site = siteOf(new URL(job.url).hostname); } catch { /* below */ }
|
|
680
|
+
const file = reposFile(process.cwd());
|
|
681
|
+
const repos = readJson(file) ?? {};
|
|
682
|
+
if (site && repos[site]) { delete repos[site]; writeJson(file, repos); }
|
|
683
|
+
console.log(` ○ ${site || "that site"} no longer has code on this machine, on your word from the app.`);
|
|
684
|
+
await event(job.id, "ready", { forgot: site, machine: name });
|
|
685
|
+
noteState({ busy: false, job: null, last_error: null });
|
|
686
|
+
};
|
|
673
687
|
const runJob = async (job) => {
|
|
674
688
|
waitOff();
|
|
675
689
|
if (job.kind === "off") return runOff(job);
|
|
690
|
+
if (job.kind === "forget") return runForget(job);
|
|
676
691
|
if (job.kind === "look" || job.kind === "signin" || job.kind === "signout") return runLookOrSignin(job);
|
|
677
692
|
const model = typeof job.model === "string" && job.model ? job.model : JOB_MODEL;
|
|
678
693
|
// Alive while filming (1.13.1): a heartbeat every 5 s so the rail never shows this machine
|
package/package.json
CHANGED