Signals: an admin chooses whether the server's TypeSafe key pays for everyone (#271)
With signals_on_server set and TYPESAFE_KEY present, the judge asks Jev about everyone's Signals on the server's key; otherwise each person turns Signals on in Settings with a key of their own, which is now checked with TypeSafe before it is saved. The Signals folder shows only when they are on. The browser suite's daemon inherited the shell's TYPESAFE_KEY, so fixture feeds were sent to the real TypeSafe to be categorised; it is blanked now, and an empty key counts as none. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -199,3 +199,12 @@ test('Jev is offered the icons found for each word of a Signal', () => {
|
||||
assert.deepEqual(offered('Apple'), ['brands/apple', 'solid/apple-whole']);
|
||||
assert.equal(run(`signalCounts({items: 12, unread: 1})`), '12 items · 1 unread');
|
||||
});
|
||||
|
||||
test('Signals are everyone\'s on the server\'s key, and yours on your own once a key is saved', () => {
|
||||
const on = me => { run(`S.me = ${JSON.stringify(me)}`); return run('signalsOn()'); };
|
||||
assert.equal(on({ signals: 'server', typesafe_key_set: false }), true);
|
||||
assert.equal(on({ signals: 'own', typesafe_key_set: true }), true);
|
||||
assert.equal(on({ signals: 'own', typesafe_key_set: false }), false);
|
||||
assert.equal(on(null), false);
|
||||
run('S.me = null');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user