---
summary: User-visible changes to ScaiMatrix.
title: Changelog
path: changelog
status: published
---

# Changelog

User-visible changes only. Internal refactors and infrastructure work omitted.

## v2 — NTFS-style ACLs

The big change. Per-collection and per-document ACLs with allow/deny ACEs, transitive group expansion, owner concept, and single-chokepoint search filtering.

- Eight-verb permission bitmask (`READ`, `WRITE`, `DELETE`, `INGEST`, `LIST`, `READ_PERMISSIONS`, `CHANGE_PERMISSIONS`, `TAKE_OWNERSHIP`) plus composed roles (`VIEWER`, `EDITOR`, `MANAGER`, `OWNER`).
- Allow and deny ACEs with NTFS resolution order; deny wins at the same level.
- Parent inheritance with per-resource break (`PATCH /permissions/.../acl` with `inherit_from_parent: false`).
- Ownership transfer (`POST /permissions/.../take-ownership`), audit-logged.
- Transitive group expansion via a ScaiKey nested-group mirror table and a ten-minute reconcile cron, with webhook fast-path.
- `filter_results_by_acl` chokepoint — every search, list, and graph result passes through it. Property-tested across 30 random scenarios.
- Admin UI `PermissionsPanel` mounted on collections and documents.
- v1 collection-level `/access` endpoints retained for backward compatibility.

## v1 — Launch

First generally-available release.

- Collections with per-collection embedding model, chunking strategy, and counters.
- Five chunking strategies: `fixed`, `paragraph`, `semantic`, `markdown`, `code`.
- Document ingestion by upload, URL, ScaiDrive, and bulk multipart.
- Website crawl with depth, page-count, and byte budgets; recurring crawl configs with daily / weekly / cron schedules; HMAC-verified inbound webhook trigger; SSE progress stream.
- Vector, hybrid, and keyword search; global and per-collection variants.
- Graph extraction (optional per collection); manual node / edge CRUD; query, traverse, path, ask, context, search; live SSE stream of mutations; NDJSON export and bulk import; cluster summary and changes-since for large-graph UIs.
- Re-chunk and re-extract jobs for in-place updates; fork for embedding-model changes.
- Saved graph views (`private` and `tenant` scope).
- Admin pages: Knowledge Dashboard, Collection Manager, Document Browser, Search Playground, Graph Explorer, Ingestion Monitor, Crawl Manager.
