@akanjs/cli 3.0.0-alpha.53 → 3.0.0-alpha.54

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.build-stamp CHANGED
@@ -1 +1 @@
1
- 75e6ebc02c938b9bfa7b3bbce9bbe0a59753853c08b168184806c0321e3bb71e
1
+ 7d8513ec7462aef8977ff2afed56276153d80f296d00bd1133297ba30fa2d84b
@@ -607,10 +607,13 @@ commands, transcript compaction, and the built-in tool semantics: `get_guideline
607
607
  `filter` 0): `title` is the one line a human scans for, `desc` is prose, `tag` is a keyword list, `filter` is a
608
608
  scoping value (status, owner, role) that must be matchable but must never outrank a real title hit.
609
609
  - `thumb` is mirrored for rendering a hit and is **not** indexed — never expect it to match.
610
- - **A `secret`, `hidden`, or `resolve()` field with `text` throws at class-build time**, not at query time. That is
611
- deliberate: the mirror is plaintext, so an indexed secret would leak through search. Do not work around it. The
612
- same throw covers a `text` field *underneath* one of those — a scalar's own field is reachable through its parent,
613
- so `f.secret(Noti)` where `Noti.label` carries a role is rejected at the parent, not silently indexed.
610
+ - **`field.secret`, `field.hidden` and `resolve()` take no `text` role — it is a compile error**, because the
611
+ mirror is plaintext and an indexed secret would leak through search. The class build throws the same refusal as
612
+ a backstop, for an option object the excess-property check cannot see through, and names the way out: drop the
613
+ role, or leave the field unmasked. Do not work around either. The throw also covers a `text` field *underneath*
614
+ one of those — a scalar's own field is reachable through its parent, so `f.secret(Noti)` where `Noti.label`
615
+ carries a role is rejected at the parent, not silently indexed; that one is only reachable at runtime, since the
616
+ pairing spans two files.
614
617
  - The role works on a relation too (`image: field(File, { text: "thumb" })`) and on an array (`playing: field([String],
615
618
  { text: "tag" })`); an array of objects indexes by leaf key, including an array leaf (`works[*].tags`). A field
616
619
  inside a `Map` indexes nothing: there is no fixed path to extract it from.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@akanjs/cli",
3
- "version": "3.0.0-alpha.53",
3
+ "version": "3.0.0-alpha.54",
4
4
  "sourceType": "module",
5
5
  "type": "module",
6
6
  "publishConfig": {
@@ -34,7 +34,7 @@
34
34
  "@langchain/openai": "^1.4.6",
35
35
  "@tailwindcss/node": "^4.3.0",
36
36
  "@trapezedev/project": "^7.1.4",
37
- "akanjs": "3.0.0-alpha.53",
37
+ "akanjs": "3.0.0-alpha.54",
38
38
  "chalk": "^5.6.2",
39
39
  "commander": "^14.0.3",
40
40
  "dayjs": "^1.11.20",