theseus/addon-update-pubkeys.js
Local Dev 9b7de2fbe9 feat(theseus/addons): bake operator pubkey — signed update endpoint now live
Populates addon-update-pubkeys.js with the Silent Mode ops Ed25519
pubkey generated 2026-09-07. From this build forward, Theseus polls
each installed add-on's updateURL 30 s after boot, verifies the
signed updates.json, and stages any newer version for promotion on
the next launch. The screenshot add-on's addon.json already
advertises https://addons.silentmode.st/screenshot/updates.json;
publishing a signed entry there (via scripts/sign-addon-update.mjs
with the ops private key) is what activates real updates.

No updates.json is published yet, so the client's boot-time fetch
will 404/DNS-fail silently until the operator lands the first signed
entry.
2026-09-07 23:57:47 +02:00

21 lines
945 B
JavaScript

// Ed25519 public keys authorized to sign bundled-addon updates.
//
// A pubkey listed here can, at runtime, cause Theseus to REPLACE any user's
// bundled add-on with a signed payload fetched over the network. Only add
// pubkeys the Silent Mode operator controls.
//
// Rotation:
// 1. Generate a new keypair with scripts/generate-update-keypair.mjs.
// 2. Sign next updates.json entries with BOTH old and new key.
// 3. Ship a Theseus release adding the new pubkey to this array (both live).
// 4. After users have updated past that release, ship a follow-up release
// removing the old pubkey; stop signing with it.
//
// Empty array means "no update endpoint" — the client short-circuits and
// makes no outbound requests. This is the safe default for a fresh build.
module.exports = {
PUBKEYS_HEX: [
"732b1263a236b0030383a2376597cfa43c3624b3ca2912a46134f8f2a06e6012", // Silent Mode ops, generated 2026-09-07
],
};