c0377df942
Per-domain directories: a refused token counts toward the sign-in ban, and tests 10 and 18 (DIR-12, DIR-30)
jcoffey-dev2026-09-19 15:09:52 -07:00
0755fad51e
Scale-out storage: IMAP CONDSTORE raises the mark, and the two-node check (ST-7, test 11)
jcoffey-dev2026-09-19 14:59:46 -07:00
e913a22b66
Scale-out storage: read replicas on MySQL, tested (ST-10, ST-15, tests 17 to 19)
jcoffey-dev2026-09-19 14:53:31 -07:00
216bb5b711
Scale-out storage: implementation status of read replicas (ST-5 to ST-15)
jcoffey-dev2026-09-19 14:21:54 -07:00
1518c69033
Scale-out storage: PostgreSQL and MySQL read replicas (ST-5 to ST-15)
jcoffey-dev2026-09-19 14:05:59 -07:00
a635b490ec
Per-domain directories: implementation status and the compat check (DIR-1 to DIR-32, test 20)
jcoffey-dev2026-09-19 10:51:41 -07:00
0237d6fa92
Per-domain directories: the OIDC directory tests, rebuilt from the spec; SCIM's OIDC test runs (DIR-7, DIR-10, DIR-14, DIR-15, DIR-18, DIR-26, DIR-29, SCIM test 5)
jcoffey-dev2026-09-19 10:45:37 -07:00
3158277b04
Per-domain directories: changes apply on the next request, and one broken directory doesn't block reloads (DIR-17, DIR-21)
jcoffey-dev2026-09-19 10:42:33 -07:00
f72e3bb85c
Per-domain directories: each domain signs in against its own directory (DIR-1 to DIR-15)
jcoffey-dev2026-09-19 10:32:57 -07:00
b080fa0736
Scale-out storage: implementation status of the sharded stores (ST-1 to ST-4, ST-16 to ST-30)
jcoffey-dev2026-09-19 10:21:30 -07:00
fdfa2bc259
SCIM: box each bulk operation's dispatch, so the crate builds with the redis feature (SCIM-51)
jcoffey-dev2026-09-19 10:15:39 -07:00
e5e326de6b
Scale-out storage: sharded blob, in-memory and lookup stores; configured read replicas reported (ST-1 to ST-4, ST-16 to ST-30)
jcoffey-dev2026-09-19 10:11:30 -07:00
e7efa91cbc
Scale-out storage decision: sharded stores first, read-replica routing after per-domain directories, with configured replicas reported at startup meanwhile (ST-2)
jcoffey-dev2026-09-19 10:01:34 -07:00
00b2eb6f4b
SCIM: implementation status (SCIM-1 to SCIM-61)
jcoffey-dev2026-09-19 09:59:53 -07:00
3df72b355a
SCIM tests: the authenticated rate limit, and the compat check on INBUXA's data (SCIM-14, test 31)
jcoffey-dev2026-09-19 09:53:36 -07:00
a18e209015
SCIM: publish meta in /Schemas, and run the conformance container on the host network (SCIM-6, SCIM-30)
jcoffey-dev2026-09-19 09:52:11 -07:00
3ffaee0695
SCIM: a suspended account's open sessions end, and no credential it holds still works (SCIM-52)
jcoffey-dev2026-09-19 09:42:03 -07:00
940b42f3b4
SCIM: just-in-time directory sync is read-only on domains open to SCIM (SCIM-58 to SCIM-60)
jcoffey-dev2026-09-19 09:38:00 -07:00
0ca26070d7
SCIM: users, groups, queries, PATCH, Bulk and cursors at /scim/v2, over x:Account (SCIM-1 to SCIM-57)
jcoffey-dev2026-09-19 09:35:23 -07:00
776d18d06e
SCIM: the protocol crate: URNs, the error document, and the filter and PATCH path grammars (SCIM-42, SCIM-45)
jcoffey-dev2026-09-19 09:06:50 -07:00
2d3f8251c5
SCIM decision: a groups value equal to the current membership in a POST or PUT body is accepted and ignored, since Okta sends groups: [] on create (SCIM-28)
jcoffey-dev2026-09-19 09:04:25 -07:00
4b389b6b4e
SCIM decisions: build before per-domain directories, with the OIDC authority test deferred; build to the spec without the profile drafts or vendor docs (SCIM-61, open questions 12 and 13)
jcoffey-dev2026-09-19 08:56:53 -07:00
f107443b29
Monitoring: implementation status, and the compat test for INBUXA's data (test 26)
jcoffey-dev2026-09-19 08:54:21 -07:00
d9b36a3806
Undelete tests: restore the default upload settings on entry (UD-1)
jcoffey-dev2026-09-19 08:54:21 -07:00
2edb552b6b
Monitoring: the fork's acceptance suite (MON-1 to MON-31)
jcoffey-dev2026-09-19 08:43:36 -07:00
49e3733428
Monitoring: alerts over metrics, by event and by email (MON-25 to MON-30)
jcoffey-dev2026-09-19 08:39:17 -07:00
7b6959155b
Monitoring: live tracing and live metrics streams, and their tokens (MON-20 to MON-24)
jcoffey-dev2026-09-19 08:34:51 -07:00
143a10fcf0
Monitoring decision: a live token may be reused within its 60 seconds, since INBUXA Admin reconnects with the same token (MON-23)
jcoffey-dev2026-09-19 08:34:03 -07:00
fc2d4f237f
Monitoring: trace history, trace search, and x:Trace over the stored traces (MON-10 to MON-17, MON-32)
jcoffey-dev2026-09-19 08:31:04 -07:00
9f7035588f
Monitoring: metric history, one edition of metrics, and x:Metric over the stored samples (MON-4 to MON-7, MON-9, MON-17, MON-39)
jcoffey-dev2026-09-19 08:21:45 -07:00
715f219528
Monitoring: correct the storage decision; history uses the AGPL telemetry key classes with the registry's encoding, and INBUXA's old history can't be read
jcoffey-dev2026-09-19 08:12:11 -07:00
3ea242f7fb
Monitoring decisions before implementation: live streams and stored histograms match INBUXA Admin, and history is stored as x:Trace and x:Metric registry items (MON-4, MON-20, MON-22, MON-23)
jcoffey-dev2026-09-19 08:10:27 -07:00
2e6c234152
AI spam classification: default to 2 KiB of text and a +2.0 cap on the model's tag, as calibrated for low-end CPU-only instances
jcoffey-dev2026-09-19 06:21:08 -07:00
554cc4fcd2
AI spam classification decisions from calibration: maxContentBytes 2048 and spamMaxAdded 2.0 by default, for low-end CPU-only instances
jcoffey-dev2026-09-19 06:19:38 -07:00
9490fc4677
AI spam classification: the model's opinion as one bounded spam signal, and the llm_prompt Sieve function (AI-1 to AI-28)
jcoffey-dev2026-09-19 00:41:00 -07:00
cba48cf03b
AI spam classification decision before implementation: the limits singleton is inbuxa:AiLimits under urn:inbuxa:jmap (open question 10)
jcoffey-dev2026-09-18 23:50:33 -07:00
e844878ba7
Tests: stabilize the OIDC suite with five times upstream's token lifetimes
jcoffey-dev2026-09-18 22:49:27 -07:00
725fbe7ec7
Tests: drop an unused undelete test helper
jcoffey-dev2026-09-18 22:27:19 -07:00
0bc6b03dcd
Branding and templates: per-domain, tenant and server logos, /logo, operator calendar email templates and RSVP page (BT-1 to BT-26)
jcoffey-dev2026-09-18 22:27:19 -07:00
ecbdfd533b
Undelete: deleted accounts are kept for their period, hold their addresses, and are restored or destroyed through inbuxa:DeletedAccount (UD-15 to UD-17a)
jcoffey-dev2026-09-18 21:35:48 -07:00
0a2c29e8fd
Undelete decision before implementation: a kept account's shares are suspended both ways and reinstated on restore (UD-17a)
jcoffey-dev2026-09-18 21:19:09 -07:00
5b963b06c6
Undelete: deleted files, calendar events, contacts and Sieve scripts are kept and restored where they were (UD-1, UD-8 to UD-11)
jcoffey-dev2026-09-18 21:07:27 -07:00
4a631bd0b5
Undelete: deleted email is kept, restored where it was, and managed over x:ArchivedItem (UD-1 to UD-14 for email)
jcoffey-dev2026-09-18 20:05:56 -07:00
a1ce14b76b
Undelete decisions before implementation: restore data, kept accounts, the restore API (UD-4, UD-15a, UD-17)
jcoffey-dev2026-09-18 19:49:34 -07:00
ec4d668bc4
Multi-tenancy: impersonate has no effect inside a tenant (MT-1, MT-15)
jcoffey-dev2026-09-18 18:51:42 -07:00
ac2232c98d
Multi-tenancy decision before implementation: impersonate has no effect inside a tenant (MT-1, MT-15)
jcoffey-dev2026-09-18 18:49:10 -07:00
4a9aa9c548
Masked email: rewrite to the owner at RCPT TO, create responses carry the address, admins query all masks (ME-4, ME-9, ME-13, ME-19)
jcoffey-dev2026-09-18 18:29:19 -07:00
f58aea000f
Cargo.lock: inbuxa-features for the tests crate (masked email)
jcoffey-dev2026-09-18 16:56:29 -07:00
31b8ca8ed5
Masked email built: implementation status, deferral and known limits (ME-1 to ME-19)
jcoffey-dev2026-09-18 16:40:14 -07:00
d319f013ec
Masked email acceptance test 12 against a copy of INBUXA's data (compat)
jcoffey-dev2026-09-18 16:37:53 -07:00
f07c00fffb
Masked email acceptance tests 1 to 11, with ME-9, ME-10, ME-11 and /changes (ME-1 to ME-19)
jcoffey-dev2026-09-18 16:37:12 -07:00