Bifrost/tests
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Heimdall 8c3827b36d Consent: optional at registration, a consent page with accept and withdraw, notice version 2
Registration without acceptedNoticeVersion (JSON) or with the box unticked (form) creates the account with no receipt; a version sent must still equal the one in force. GET /auth/bifrost/consent shows the notice and the account's state with the one applicable button. POST accept and withdraw are forms behind the strict RequestOriginGuard.Allows (403 before any read or write), idempotent, and withdraw is no longer JSON. The ConsentReceipt unique index becomes filtered to live rows so a person can agree again after withdrawing. TrainingNotice.Version = 2 with the ruled text.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-11 11:22:22 +00:00
..
Bifrost.Web.Tests Consent: optional at registration, a consent page with accept and withdraw, notice version 2 2026-11-11 11:22:22 +00:00
fixtures Mouth: tail_gaps on chat_pending.v3, the rooms whose tail is incomplete (#57) 2026-11-11 11:07:35 +00:00
cultlib-root.mjs Resolve CultLib via VOIDBOT_CULTLIB_ROOT in tests; test formerly indexed stores (#47) 2026-11-11 05:01:33 +00:00
cultmesh-bridge-commands.test.mjs Bifrost pump: one verb, one path; refuse anything else with a failed receipt 2026-09-30 16:59:51 +02:00
fake-clock.mjs Watchdog notice reader: a future stamp is eligible now; no production clock seam 2026-10-01 02:19:01 +02:00
image-bytes.mjs Image store: never chmod a room directory; refuse when setgid is not inherited 2026-11-08 09:27:40 +00:00
persona-chat-images.test.mjs Image store: room directory must share the Persona directory's group; never create the Persona directory 2026-11-08 09:29:59 +00:00
persona-feedback-cli.test.mjs Resolve CultLib via VOIDBOT_CULTLIB_ROOT in tests; test formerly indexed stores (#47) 2026-11-11 05:01:33 +00:00
persona-feedback-idunn-health.test.mjs Resolve CultLib via VOIDBOT_CULTLIB_ROOT in tests; test formerly indexed stores (#47) 2026-11-11 05:01:33 +00:00
persona-matrix-mouth-open-direct.test.mjs persona mouth: open a direct room for a Persona; answer unknown kinds loudly (#39) 2026-11-10 18:35:51 +00:00
persona-matrix-mouth-runtime.test.mjs Mouth: tail_gaps on chat_pending.v3, the rooms whose tail is incomplete (#57) 2026-11-11 11:07:35 +00:00
persona-matrix-mouth-send-gate.test.mjs send gate: re-check the brake after the gate wait, before the PUT 2026-11-03 10:37:22 +00:00
persona-matrix-mouth.test.mjs Mouth: tail_gaps on chat_pending.v3, the rooms whose tail is incomplete (#57) 2026-11-11 11:07:35 +00:00
shared-value-stores.test.mjs Resolve CultLib via VOIDBOT_CULTLIB_ROOT in tests; test formerly indexed stores (#47) 2026-11-11 05:01:33 +00:00
watchdog-notice.test.mjs Resolve CultLib via VOIDBOT_CULTLIB_ROOT in tests; test formerly indexed stores (#47) 2026-11-11 05:01:33 +00:00