|
10 | 10 | * so each `createParameterizedCodecDescriptors(sdk)` call produces a |
11 | 11 | * fresh descriptor list closed over the SDK so multi-tenant |
12 | 12 | * deployments can compose multiple cipherstash extensions side-by-side |
13 | | - * without cross-talk; and the cipherstash family ships six codecs |
14 | | - * (one per encrypted column type) which all share the same |
15 | | - * `eql_v2_encrypted` Postgres native type. |
| 13 | + * without cross-talk; and the cipherstash family ships SEVEN codecs. |
| 14 | + * The six v2 codecs (one per encrypted column type) all share the same |
| 15 | + * `eql_v2_encrypted` Postgres native type; the seventh — the EQL v3 |
| 16 | + * string codec — uses its OWN `jsonb` param-cast type backed by the |
| 17 | + * per-column `eql_v3.text*` domains (NOT `eql_v2_encrypted`). |
16 | 18 | * |
17 | 19 | * Per-codec params shape (every flag defaults to `true` because |
18 | 20 | * searchable encryption is the legitimate default for an extension |
19 | 21 | * whose entire reason for existing is to make encrypted columns |
20 | 22 | * queryable): |
21 | 23 | * |
22 | | - * | Codec | Params | |
23 | | - * |---------------------|-------------------------------------| |
24 | | - * | `cipherstash/string@1` | `{ equality, freeTextSearch, orderAndRange }` | |
25 | | - * | `cipherstash/double@1` | `{ equality, orderAndRange }` | |
26 | | - * | `cipherstash/bigint@1` | `{ equality, orderAndRange }` | |
27 | | - * | `cipherstash/date@1` | `{ equality, orderAndRange }` | |
28 | | - * | `cipherstash/boolean@1` | `{ equality }` | |
29 | | - * | `cipherstash/json@1` | `{ searchableJson }` | |
| 24 | + * | Codec | Params | |
| 25 | + * |----------------------------|-------------------------------------| |
| 26 | + * | `cipherstash/string@1` | `{ equality, freeTextSearch, orderAndRange }` | |
| 27 | + * | `cipherstash/double@1` | `{ equality, orderAndRange }` | |
| 28 | + * | `cipherstash/bigint@1` | `{ equality, orderAndRange }` | |
| 29 | + * | `cipherstash/date@1` | `{ equality, orderAndRange }` | |
| 30 | + * | `cipherstash/boolean@1` | `{ equality }` | |
| 31 | + * | `cipherstash/json@1` | `{ searchableJson }` | |
| 32 | + * | `cipherstash/string-v3@1` | `{ index }` (single v3 index choice; native type `jsonb`/`eql_v3.text*`, NOT `eql_v2_encrypted`) | |
30 | 33 | * |
31 | 34 | * The codec runtimes are per-cell stateless across params on the write |
32 | 35 | * side (encode reads ciphertext from the handle, independent of the |
|
0 commit comments