Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions .changeset/sweet-comics-sing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
"kiji-privacy-proxy": minor
---

Configurable PII entity types and custom regex patterns

- Chrome extension options page: enable/disable PII entity types per-request
- Custom regex patterns: add/edit/remove user-defined regex rules with replacement text
- New API endpoints: `GET /api/pii/labels`, `GET/POST /api/pii/patterns`, `PUT/DELETE /api/pii/patterns/{id}`
- Backend `MaskText` accepts `enabled_labels` to filter which PII types are masked
- Entity deduplication: overlapping spans resolved by length, custom regex wins ties
2 changes: 2 additions & 0 deletions docs/06-chrome-extension.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,8 @@ All settings are accessible via the extension's options page (right-click extens

- **Backend URL** — The Kiji Privacy Proxy server address (default: `http://localhost:8081`)
- **Intercept domains** — URL match patterns where the extension is active (one per line)
- **PII entity types** — Check or uncheck PII labels from the model to control which entity types get masked per-request. A "Disable all / Enable all" toggle is provided. Changes are persisted to `chrome.storage.sync` and sent as `enabled_labels` with each PII check.
- **Custom patterns** — Add user-defined regex rules on top of the ML model. Each pattern has a label, regex, and optional replacement string. Patterns are persisted server-side in SQLite. A live preview field lets you test a regex against sample text before saving. Patterns can be edited or removed inline.

Default domains:
```
Expand Down
Loading