Who has access

Only the Owner can open this page. Administrators can command the whole fleet but cannot grant access to anyone else — separating “can operate the system” from “can decide who operates it” is the entire point of having a role above administrator.

Current registry

NameRoleAddress digestCan manage users

Addresses are stored as SHA-256 digests, so this page cannot show them back to you — that is exactly what the hashing is for. A person is identified here by their name and the first characters of their digest.

Generated users.js

Replace the USERS array in website/assets/js/users.js with this, then commit and push. Everyone sees the change once GitHub Pages redeploys.

Add someone

The address is hashed in your browser with WebCrypto. The plain text never leaves this page and is never written into the registry.

Hash an address

Just want the digest, without adding anyone?

Firebase setup

You need this UID for firestore.rules — it is what the server checks before allowing any change to the admin list.

Signing in here talks to Firebase directly, so you can obtain a UID before anything else is configured. Full instructions are in assets/js/firebase-config.js.

Cloud setup check

Read only — it changes nothing. It asks the database the same questions the live site asks, so a step you have not done yet shows up here instead of as a refused write on someone else’s phone.

Sync registry to cloud

The database recognises an administrator by a document filed under their address digest — not by the list committed in users.js. Someone who is in the file but not in the cloud can sign in here and still be refused on every write, which looks like a bug and is really a missing copy. This puts the committed entries there; anyone already present is left alone.

Session changes

No changes yet.