@_linked/core 2.20.2 → 2.21.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,79 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.21.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#245](https://github.com/linked-fw/core/pull/245) [`aa68aab`](https://github.com/linked-fw/core/commit/aa68aabdd2981eb4f83171bf77c03253b93732b5) Thanks [@flyon](https://github.com/flyon)! - `syncShapes` now writes each property shape's label as `rdfs:label`.
8
+
9
+ `buildPropertyShapeData` used `ps.label` only to mint the property-shape IRI and
10
+ never serialized it, so on read-back a label had to be re-derived from the path's
11
+ local part. That is correct only while the two coincide. When they differ —
12
+ `@_linked/org` declares the label `memberships` on the path `org:hasMembership` —
13
+ the catalog reports `hasMembership`, `InstanceProvider` builds its columns from
14
+ those store labels and indexes the query proxy with them, and the proxy resolves
15
+ labels against the _class_, which only knows `memberships`. The guard in
16
+ `SelectQuery` then throws `Person.hasMembership is accessed in a query, but it
17
+ does not have a @linkedProperty decorator`.
18
+
19
+ Additive and backward compatible. `rdfs:label` is already a framework property
20
+ shape on `Shape`, and both catalog readers already prefer a stored label and fall
21
+ back to the path — so catalogs written before this change keep working, and
22
+ catalogs written after simply stop needing the fallback. No type change:
23
+ `label` is already required on `PropertyShapeData`, and `PropertyShapeWire` is
24
+ defined by subtraction from it.
25
+
26
+ Existing stores pick this up on the next sync, since `buildSyncThunk`
27
+ deletes and recreates each shape.
28
+
29
+ ## 2.21.0
30
+
31
+ ### Minor Changes
32
+
33
+ - [#242](https://github.com/linked-fw/core/pull/242) [`6a57d08`](https://github.com/linked-fw/core/commit/6a57d08659dfb0a37af77ff8024d3c7a9bb23497) Thanks [@flyon](https://github.com/flyon)! - Carry a root `COUNT` over the `selectQuery` channel, and remove `IDataset.countQuery`.
34
+
35
+ A count was modelled on an ask and given a method of its own. That was wrong, and it
36
+ made the feature unusable outside a store held directly. An ask really is a distinct
37
+ SPARQL query form (`ASK WHERE { … }`) and earns its own method; a count is
38
+ `SELECT (COUNT(DISTINCT ?s) AS ?count) WHERE { … }` — a select with an aggregate
39
+ projection, lowered by `countToAlgebra` calling `selectToAlgebra` and swapping the
40
+ projection, sent over the same transport, answered with the same result-set response.
41
+
42
+ Because it had its own method, every router had to grow an arm for it — and
43
+ `LinkedStorage` never did: `setDefaultDataset` registered select/ask/create/update/
44
+ delete, so `.count()` rejected with "does not implement `IDataset.countQuery`" on every
45
+ path that went through the router, which is every path in an application.
46
+ `@_linked/server`'s backend API store could not implement the handler either, having
47
+ no `LinkedStorage.countQuery` to call. Only the tests that held a `SparqlDataset`
48
+ directly passed.
49
+
50
+ - `SparqlDataset.selectQuery` now branches on the lowered IR (`kind === 'count'`,
51
+ as `updateQuery` and `deleteQuery` already branch on theirs) and emits the aggregate.
52
+ It is overloaded: a `SelectQuery` answers `SelectResult`, a `CountQuery` answers
53
+ `number`. The select path is untouched, and `countToAlgebra` and the lowering are
54
+ unchanged.
55
+ - `IDataset.selectQuery` and `QueryDispatch.selectQuery` accept
56
+ `SelectQuery | CountQuery` and may answer `SelectResult | number`. Existing
57
+ implementations stay valid with no edit (a narrower parameter and a narrower return
58
+ type both remain assignable), and every router that already forwards a select now
59
+ forwards a count for free — `LinkedStorage` needed no new method at all.
60
+ - **`IDataset.countQuery` and `SparqlDataset.countQuery` are removed.** A caller who
61
+ held a SPARQL store and called `store.countQuery(query)` calls
62
+ `store.selectQuery(query)` with the same query instead. The optional interface
63
+ member could not be usefully implemented by anyone: a store that implemented it was
64
+ never reached, because no router forwarded to it.
65
+ - The count contract is unchanged and still enforced in one place, now at the select
66
+ dispatch in `resolveCount`: the answer must be a finite, non-negative integer, never
67
+ coerced, and a failure always rejects. A store that ignores the count and answers
68
+ with rows is refused by that same check rather than having its array measured — `0`
69
+ is a plausible count, and one that came from a broken query renders an empty table
70
+ indistinguishable from real data.
71
+
72
+ Minor rather than major: the only removed surface that ever worked is
73
+ `SparqlDataset.countQuery`, reachable only by a caller holding a SPARQL store
74
+ directly, released one version ago, and replaced by a call with the same argument.
75
+ Nothing that went through `LinkedStorage` can break, because nothing there worked.
76
+
3
77
  ## 2.20.2
4
78
 
5
79
  ### Patch Changes
@@ -21,7 +21,29 @@ export interface IDataset {
21
21
  * Prepares the store to be used.
22
22
  */
23
23
  init?(): Promise<any>;
24
- selectQuery(query: SelectQuery): Promise<SelectResult>;
24
+ /**
25
+ * Answer a select query — **and a count query**, which arrives here too.
26
+ *
27
+ * A count is not a query form of its own the way an ask is. An ask is
28
+ * `ASK WHERE { … }`; a count is `SELECT (COUNT(DISTINCT ?s) AS ?count) WHERE { … }`
29
+ * — a select with an aggregate projection, over the same transport, answered with
30
+ * the same result-set response. Giving it a method of its own meant every router
31
+ * had to grow an arm for it, and any that did not silently could not count.
32
+ *
33
+ * So a store that wants to answer counts branches on the lowered IR:
34
+ * `lower(query).kind === 'count'` (see {@link CountQuery} and `SparqlDataset`).
35
+ * A store that does not is no worse off than before — it will fail loudly at the
36
+ * dispatch (`resolveCount`), which refuses anything but a non-negative integer.
37
+ * There is deliberately **no path in this package that rewrites a count as a row
38
+ * query** and measures the array: that would hide an unbounded read behind a call
39
+ * that looks cheap.
40
+ *
41
+ * A count must be answered with a real, non-negative integer, and must reject on
42
+ * failure: reporting an unreachable store as `0` renders an empty table that is
43
+ * indistinguishable from real data, which is the failure mode this API was built
44
+ * to remove.
45
+ */
46
+ selectQuery(query: SelectQuery | CountQuery): Promise<SelectResult | number>;
25
47
  /**
26
48
  * Answer an ask query — a boolean, not a result set.
27
49
  *
@@ -43,28 +65,6 @@ export interface IDataset {
43
65
  * API was built to remove.
44
66
  */
45
67
  askQuery(query: AskQuery): Promise<boolean>;
46
- /**
47
- * Count the matching instances — a number, not a result set.
48
- *
49
- * **Optional**, unlike {@link askQuery}. Adding a required method would break
50
- * every existing implementer at compile time; `resolveCount` in `queryDispatch`
51
- * turns a missing implementation into a precise runtime error instead. Every
52
- * store extending {@link SparqlDataset} gets it with no edit.
53
- *
54
- * A {@link CountQuery} carries a pattern and nothing else: no projection, no
55
- * sorting, and in particular no pagination — a count of a windowed query is
56
- * meaningless, so the type cannot hold a window. A SPARQL-backed store emits
57
- * `SELECT (COUNT(DISTINCT ?s) AS ?count) WHERE { … }`; another backend answers it
58
- * however it can. This package contains **no path that rewrites a count as a
59
- * select** and measures the array: that would hide an unbounded read behind a
60
- * call that looks cheap.
61
- *
62
- * Must resolve to a real, non-negative integer — a non-number is rejected, not
63
- * coerced. Must reject on failure: reporting an unreachable store as `0` renders
64
- * an empty table that is indistinguishable from real data, which is the failure
65
- * mode this API was built to remove.
66
- */
67
- countQuery?(query: CountQuery): Promise<number>;
68
68
  /**
69
69
  * Receives update AND upsert mutations — `lower(query)` yields `kind: 'update'`,
70
70
  * `'update_where'` or `'upsert'`. An implementation that does not handle `'upsert'`
@@ -138,6 +138,9 @@ export class CountBuilder {
138
138
  // `async` ensures a missing global dispatch rejects rather than throwing
139
139
  // synchronously past the caller's `.catch()`.
140
140
  const dispatch = target !== null && target !== void 0 ? target : getQueryDispatch();
141
+ // `resolveCount` dispatches over the SELECT channel — a count is a select with
142
+ // an aggregate projection, not a query form of its own — and checks the answer
143
+ // is a real non-negative integer before it reaches the caller.
141
144
  return resolveCount(dispatch, this);
142
145
  });
143
146
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CountBuilder.js","sourceRoot":"","sources":["../../../src/queries/CountBuilder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;;;;;;;;;AAgBH,OAAO,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAM/C,OAAO,EAAC,mBAAmB,EAAC,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAC,gBAAgB,EAAE,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAC,YAAY,EAAE,iBAAiB,EAAC,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAC,gBAAgB,EAAE,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAClE,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,gCAAgC,CAAC;AAmBxC,MAAM,OAAO,YAAY;IAGvB,YAAoB,IAAe;QASnC,yEAAyE;QAChE,gBAAW,GAAG,OAAgB,CAAC;QATtC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,+EAA+E;IAC/E,MAAM,CAAC,EAAE,CAAC,IAAe;QACvB,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAKD,6EAA6E;IAC7E,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;IACrC,CAAC;IAED,UAAU;QACR,MAAM,EAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAC,GACrE,IAAI,CAAC,KAAK,CAAC;QACb,MAAM,KAAK,GAAkB,EAAC,KAAK,EAAE,UAAiB,EAAC,CAAC;QACxD,8EAA8E;QAC9E,wEAAwE;QACxE,0EAA0E;QAC1E,kDAAkD;QAClD,IAAI,WAAW;YAAE,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;QAC1C,IAAI,OAAO;YAAE,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;QACrC,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC/D,IAAI,KAAK;YAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QAC/B,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;YAAE,KAAK,CAAC,YAAY,GAAG,YAAY,CAAC;QAC/E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM;;QACJ,MAAM,EAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAC,GACrE,IAAI,CAAC,KAAK,CAAC;QACb,MAAM,OAAO,GAAG,MAAA,UAAU,CAAC,KAAK,0CAAE,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,6EAA6E;YAC7E,wEAAwE;YACxE,wBAAwB;YACxB,MAAM,IAAI,KAAK,CACb,8EAA8E;gBAC9E,uEAAuE,CACxE,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAmB;YAC3B,CAAC,EAAE,YAAY;YACf,EAAE,EAAE,OAAO;YACX,KAAK,EAAE,OAAO;SACf,CAAC;QAEF,IAAI,OAAO,YAAY,mBAAmB,EAAE,CAAC;YAC3C,yEAAyE;YACzE,4DAA4D;YAC5D,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACvD,CAAC;aAAM,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC;YACrE,IAAI,CAAC,OAAO,GAAI,OAA8B,CAAC,EAAE,CAAC;QACpD,CAAC;QACD,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,KAAK,GAAG,kBAAkB,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QAC3D,CAAC;QACD,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5C,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACzC,sBAAsB,CAAC,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAC5C,CAAC;QACJ,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC1B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,IAAoB;;QAClC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,4EAA4E;gBAC5E,4CAA4C,CAC7C,CAAC;QACJ,CAAC;QACD,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,KAAY,CAA0B,CAAC;QAC5E,MAAM,IAAI,GAAc,EAAC,UAAU,EAAC,CAAC;QAErC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;gBAC3C,CAAC,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC/C,CAAC,CAAC,EAAC,EAAE,EAAE,IAAI,CAAC,OAAiB,EAAC,CAAC;QACnC,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAC,EAAE,EAAC,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,GAAG,oBAAoB,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,MAAA,IAAI,CAAC,YAAY,0CAAE,MAAM,EAAE,CAAC;YAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9C,wBAAwB,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAC9C,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,WAAW;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC9C,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;OAWG;IACG,IAAI,CAAC,MAAiB;;YAC1B,MAAM,EAAC,WAAW,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;YAC1C,IAAI,WAAW;gBAAE,OAAO,CAAC,CAAC;YAC1B,IAAI,OAAO,YAAY,mBAAmB,IAAI,CAAC,OAAO,CAAC,EAAE;gBAAE,OAAO,CAAC,CAAC;YACpE,yEAAyE;YACzE,8CAA8C;YAC9C,MAAM,QAAQ,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,gBAAgB,EAAE,CAAC;YAC9C,OAAO,YAAY,CAAC,QAAe,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC;KAAA;IAED,kCAAkC;IAClC,IAAI,CACF,WAA0E,EAC1E,UAAuE;QAEvE,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CACH,UAAqE;QAErE,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;IAED,OAAO,CAAC,SAA+B;QACrC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACtB,OAAO,cAAc,CAAC;IACxB,CAAC;CACF;AAED,iDAAiD;AACjD,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,OAAO,CAAC,CAAC,KAAK,IAAK,KAAgC,CAAC,WAAW,KAAK,OAAO,CAAC;AAC9E,CAAC"}
1
+ {"version":3,"file":"CountBuilder.js","sourceRoot":"","sources":["../../../src/queries/CountBuilder.ts"],"names":[],"mappings":"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"}
@@ -14,18 +14,15 @@ import type { CountQuery } from './CountQuery.js';
14
14
  * result types through its own generics; the dispatch is a runtime bridge.
15
15
  */
16
16
  export interface QueryDispatch {
17
- selectQuery<R = any>(query: SelectQuery): Promise<R>;
18
- /** Answer an ask query — a boolean, not a result set. */
19
- askQuery(query: AskQuery): Promise<boolean>;
20
17
  /**
21
- * Answer a count query — a number, not a result set.
22
- *
23
- * **Optional**, unlike `askQuery`. This interface is implemented by object
24
- * literals in consuming packages (`setQueryDispatch({…})`), so requiring it would
25
- * break every one of them at compile time. {@link resolveCount} turns a missing
26
- * implementation into a precise runtime error instead.
18
+ * Answer a select query — **and a count**, which travels this channel too: a
19
+ * count is a select with an aggregate projection, not a query form of its own, so
20
+ * it needs no method here and no router has to grow an arm for it. It arrives as a
21
+ * {@link CountQuery} and resolves to a `number`; see {@link resolveCount}.
27
22
  */
28
- countQuery?(query: CountQuery): Promise<number>;
23
+ selectQuery<R = any>(query: SelectQuery | CountQuery): Promise<R>;
24
+ /** Answer an ask query — a boolean, not a result set. */
25
+ askQuery(query: AskQuery): Promise<boolean>;
29
26
  createQuery<R = any>(query: CreateQuery): Promise<R>;
30
27
  updateQuery<R = any>(query: UpdateQuery): Promise<R>;
31
28
  deleteQuery(query: DeleteQuery): Promise<DeleteResponse>;
@@ -51,29 +48,42 @@ type ExistenceTarget = {
51
48
  * propagate for the same reason — "could not ask" is never `false`.
52
49
  */
53
50
  export declare function resolveExistence(target: ExistenceTarget, query: AskQuery): Promise<boolean>;
54
- /** A target that can answer a count query. */
51
+ /**
52
+ * A target that can answer a count query — which is to say, any target that can
53
+ * answer a select. There is no count-specific member to look for.
54
+ */
55
55
  type CountTarget = {
56
- countQuery?(query: CountQuery): Promise<number>;
56
+ selectQuery?(query: any): Promise<any>;
57
57
  };
58
58
  /**
59
59
  * Answer a count query against `target` — the single entry point for every
60
60
  * number-answered query in the library, as {@link resolveExistence} is for boolean
61
- * ones. `CountBuilder.exec()` and a router's `countQuery` both come here rather than
62
- * calling `countQuery` directly, so the contract below is enforced once for every
63
- * store.
61
+ * ones. `CountBuilder.exec()` comes here rather than calling the store directly, so
62
+ * the contract below is enforced once for every store.
64
63
  *
65
- * There is deliberately **no translation to a select query anywhere in this
66
- * package.** A count goes to `IDataset.countQuery` and a SPARQL-backed store turns
67
- * it into `SELECT (COUNT(DISTINCT ?s) AS ?count)`. A store that lacks an aggregate
68
- * primitive implements `countQuery` itself, in whatever way its backend allows —
69
- * that decision belongs to the store, and making it here (by fetching every row and
70
- * measuring the array) would hide an unbounded read behind a cheap-looking call.
64
+ * **A count is dispatched over the SELECT channel.** It is not a separate query
65
+ * form: `SELECT (COUNT(DISTINCT ?s) AS ?count) WHERE { … }` is a select with an
66
+ * aggregate projection, run over the same transport and answered with the same
67
+ * result-set response — which is exactly why an ask, which really is a different
68
+ * form (`ASK WHERE { … }`), has its own `IDataset.askQuery` and a count does not.
69
+ * Riding `selectQuery` is what lets a count reach a store through every router that
70
+ * already forwards a select, rather than needing a new arm in each of them (the
71
+ * arm `LinkedStorage` never grew, which is how a count came to fail on every
72
+ * application path while passing against a store held directly).
73
+ *
74
+ * There is still deliberately **no translation to a row query anywhere in this
75
+ * package.** A store receives the count query itself and decides how to answer it;
76
+ * one extending `SparqlDataset` branches on the lowered IR and emits the aggregate.
77
+ * Nothing here fetches every row and measures the array — that would hide an
78
+ * unbounded read behind a call that looks cheap.
71
79
  *
72
- * `countQuery` must resolve to a **finite, non-negative integer**: anything else
73
- * rejects rather than being coerced. Errors propagate for the same reason a failed
74
- * ask is never `false` — and more sharply, because `0` is a *plausible* count. A
75
- * count that reported an unreachable store as `0` would render an empty table that
76
- * looks exactly like real data.
80
+ * The answer must be a **finite, non-negative integer**: anything else rejects
81
+ * rather than being coerced. That validation lives here, at the dispatch, because
82
+ * this is where the count result is read — and it is load-bearing. Errors propagate
83
+ * for the same reason a failed ask is never `false`, and more sharply, because `0`
84
+ * is a *plausible* count: a count that reported an unreachable store as `0` would
85
+ * render an empty table that looks exactly like real data. A store that ignored the
86
+ * count and answered with rows is caught by the same check.
77
87
  */
78
88
  export declare function resolveCount(target: CountTarget, query: CountQuery): Promise<number>;
79
89
  export declare function setQueryDispatch(d: QueryDispatch): void;
@@ -42,35 +42,53 @@ export function resolveExistence(target, query) {
42
42
  /**
43
43
  * Answer a count query against `target` — the single entry point for every
44
44
  * number-answered query in the library, as {@link resolveExistence} is for boolean
45
- * ones. `CountBuilder.exec()` and a router's `countQuery` both come here rather than
46
- * calling `countQuery` directly, so the contract below is enforced once for every
47
- * store.
45
+ * ones. `CountBuilder.exec()` comes here rather than calling the store directly, so
46
+ * the contract below is enforced once for every store.
48
47
  *
49
- * There is deliberately **no translation to a select query anywhere in this
50
- * package.** A count goes to `IDataset.countQuery` and a SPARQL-backed store turns
51
- * it into `SELECT (COUNT(DISTINCT ?s) AS ?count)`. A store that lacks an aggregate
52
- * primitive implements `countQuery` itself, in whatever way its backend allows —
53
- * that decision belongs to the store, and making it here (by fetching every row and
54
- * measuring the array) would hide an unbounded read behind a cheap-looking call.
48
+ * **A count is dispatched over the SELECT channel.** It is not a separate query
49
+ * form: `SELECT (COUNT(DISTINCT ?s) AS ?count) WHERE { … }` is a select with an
50
+ * aggregate projection, run over the same transport and answered with the same
51
+ * result-set response — which is exactly why an ask, which really is a different
52
+ * form (`ASK WHERE { … }`), has its own `IDataset.askQuery` and a count does not.
53
+ * Riding `selectQuery` is what lets a count reach a store through every router that
54
+ * already forwards a select, rather than needing a new arm in each of them (the
55
+ * arm `LinkedStorage` never grew, which is how a count came to fail on every
56
+ * application path while passing against a store held directly).
57
+ *
58
+ * There is still deliberately **no translation to a row query anywhere in this
59
+ * package.** A store receives the count query itself and decides how to answer it;
60
+ * one extending `SparqlDataset` branches on the lowered IR and emits the aggregate.
61
+ * Nothing here fetches every row and measures the array — that would hide an
62
+ * unbounded read behind a call that looks cheap.
55
63
  *
56
- * `countQuery` must resolve to a **finite, non-negative integer**: anything else
57
- * rejects rather than being coerced. Errors propagate for the same reason a failed
58
- * ask is never `false` — and more sharply, because `0` is a *plausible* count. A
59
- * count that reported an unreachable store as `0` would render an empty table that
60
- * looks exactly like real data.
64
+ * The answer must be a **finite, non-negative integer**: anything else rejects
65
+ * rather than being coerced. That validation lives here, at the dispatch, because
66
+ * this is where the count result is read — and it is load-bearing. Errors propagate
67
+ * for the same reason a failed ask is never `false`, and more sharply, because `0`
68
+ * is a *plausible* count: a count that reported an unreachable store as `0` would
69
+ * render an empty table that looks exactly like real data. A store that ignored the
70
+ * count and answered with rows is caught by the same check.
61
71
  */
62
72
  export function resolveCount(target, query) {
63
73
  return __awaiter(this, void 0, void 0, function* () {
64
- if (typeof (target === null || target === void 0 ? void 0 : target.countQuery) !== 'function') {
65
- throw new Error('This dataset does not implement IDataset.countQuery(query). A count query is ' +
66
- 'answered with a number — a SPARQL store emits ' +
67
- 'SELECT (COUNT(DISTINCT ?s) AS ?count) — and is never rewritten as a select ' +
68
- 'on its behalf, which would read every matching row to measure the array.');
74
+ if (typeof (target === null || target === void 0 ? void 0 : target.selectQuery) !== 'function') {
75
+ throw new Error('This dataset does not implement IDataset.selectQuery(query), which is how a ' +
76
+ 'count query is dispatched: a count is a select with an aggregate projection ' +
77
+ '(a SPARQL store emits SELECT (COUNT(DISTINCT ?s) AS ?count)), not a query ' +
78
+ 'form of its own.');
69
79
  }
70
- const answer = yield target.countQuery(query);
80
+ const answer = yield target.selectQuery(query);
71
81
  if (typeof answer !== 'number' || !Number.isInteger(answer) || answer < 0) {
72
- throw new Error(`countQuery must resolve to a non-negative integer; got ${answer === null ? 'null' : typeof answer === 'number' ? String(answer) : typeof answer}. A count query will not coerce — a NaN or a missing value that fell through ` +
73
- 'as 0 would silently read as "no matches".');
82
+ throw new Error(`A count query must be answered with a non-negative integer; got ${answer === null
83
+ ? 'null'
84
+ : typeof answer === 'number'
85
+ ? String(answer)
86
+ : Array.isArray(answer)
87
+ ? 'an array of rows'
88
+ : typeof answer}. It is not coerced — a NaN or a missing value that fell through as 0 would ` +
89
+ 'silently read as "no matches". A store that answered with rows ran the ' +
90
+ 'pattern as a row query instead of counting it: it must branch on the lowered ' +
91
+ "IR's `kind === 'count'` and emit an aggregate.");
74
92
  }
75
93
  return answer;
76
94
  });
@@ -1 +1 @@
1
- {"version":3,"file":"queryDispatch.js","sourceRoot":"","sources":["../../../src/queries/queryDispatch.ts"],"names":[],"mappings":";;;;;;;;;AAqCA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAgB,gBAAgB,CACpC,MAAuB,EACvB,KAAe;;QAEf,IAAI,OAAO,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,CAAA,KAAK,UAAU,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CACb,yEAAyE;gBACzE,8EAA8E;gBAC9E,4CAA4C,CAC7C,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,OAAO,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CACb,2CAA2C,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,MAAM,IAAI;gBACvF,uEAAuE;gBACvE,wCAAwC,CACzC,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CAAA;AAKD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAgB,YAAY,CAChC,MAAmB,EACnB,KAAiB;;QAEjB,IAAI,OAAO,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,CAAA,KAAK,UAAU,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CACb,+EAA+E;gBAC/E,gDAAgD;gBAChD,6EAA6E;gBAC7E,0EAA0E,CAC3E,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1E,MAAM,IAAI,KAAK,CACb,0DACE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,MAClF,+EAA+E;gBAC/E,2CAA2C,CAC5C,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CAAA;AAED,gFAAgF;AAChF,gFAAgF;AAChF,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAC9E,uEAAuE;AACvE,MAAM,cAAc,GAClB,OAAO,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAE,EAAU,CAAC;AAC/D,IAAI,CAAC,CAAC,uBAAuB,IAAI,cAAc,CAAC,EAAE,CAAC;IACjD,cAAc,CAAC,qBAAqB,GAAG,EAAC,OAAO,EAAE,IAA4B,EAAC,CAAC;AACjF,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,CAAgB;IAC/C,cAAc,CAAC,qBAAqB,CAAC,OAAO,GAAG,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,MAAM,QAAQ,GAAG,cAAc,CAAC,qBAAqB,CAAC,OAA+B,CAAC;IACtF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,6EAA6E,CAC9E,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAKD;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CACrC,IAAkB,EAClB,MAAiB;IAEjB,IAAI,CAAC,MAAM;QAAE,OAAO,gBAAgB,EAAE,CAAC;IACvC,IAAI,OAAO,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,WAAW,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,MAAkC,CAAC;AAC5C,CAAC"}
1
+ {"version":3,"file":"queryDispatch.js","sourceRoot":"","sources":["../../../src/queries/queryDispatch.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,12 @@
1
+ import { type PropertyShapeData } from './nodeShapeData.js';
1
2
  import { Shape } from './Shape.js';
2
3
  import type { IDataset } from '../interfaces/IDataset.js';
4
+ /**
5
+ * Build the create-pipeline data object for a single PropertyShape (flattened under shapeIri).
6
+ *
7
+ * @internal Exported for tests only — not part of the public API.
8
+ */
9
+ export declare function buildPropertyShapeData(ps: PropertyShapeData, shapeIri: string): Record<string, unknown>;
3
10
  /** Options controlling how {@link syncShapes} treats store shapes that are not in code. */
4
11
  export interface SyncShapesOptions {
5
12
  /**
@@ -23,13 +23,30 @@ import { serializePathToNodeData } from './serializePathToNodeData.js';
23
23
  * describe the meta-model itself and must never be synced as user data.
24
24
  */
25
25
  const FRAMEWORK_PACKAGE = '@_linked/core';
26
- /** Build the create-pipeline data object for a single PropertyShape (flattened under shapeIri). */
27
- function buildPropertyShapeData(ps, shapeIri) {
26
+ /**
27
+ * Build the create-pipeline data object for a single PropertyShape (flattened under shapeIri).
28
+ *
29
+ * @internal Exported for tests only — not part of the public API.
30
+ */
31
+ export function buildPropertyShapeData(ps, shapeIri) {
28
32
  const psIri = `${shapeIri}/${ps.label}`;
29
33
  const d = {
30
34
  __id: psIri,
31
35
  path: serializePathToNodeData(ps.path, psIri),
32
36
  };
37
+ // `rdfs:label` — the DSL label, i.e. the accessor name the property is reached
38
+ // by in code (`person.memberships`). It is NOT `sh:name`, written below, which
39
+ // is a human-readable display string.
40
+ //
41
+ // Without this the label is only ever implied by `psIri`, and a reader has to
42
+ // re-derive one from the path's local part. That works right up until the two
43
+ // differ — `@_linked/org` declares `memberships` on the path `org:hasMembership`
44
+ // — at which point the catalog reports `hasMembership`, the query proxy indexes
45
+ // the shape with it, and the class (which only knows `memberships`) throws.
46
+ // Readers already prefer a stored label and fall back to the path, so writing it
47
+ // is the whole fix; old catalogs keep working via that fallback.
48
+ if (ps.label)
49
+ d.label = ps.label;
33
50
  if (ps.nodeKind)
34
51
  d.nodeKind = ps.nodeKind;
35
52
  if (ps.datatype)
@@ -1 +1 @@
1
- {"version":3,"file":"syncShapes.js","sourceRoot":"","sources":["../../../src/shapes/syncShapes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"syncShapes.js","sourceRoot":"","sources":["../../../src/shapes/syncShapes.ts"],"names":[],"mappings":"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"}
@@ -52,7 +52,34 @@ export declare abstract class SparqlDataset implements IDataset {
52
52
  * No return value — the update is fire-and-forget at the SPARQL level.
53
53
  */
54
54
  protected abstract executeSparqlUpdate(sparql: string): Promise<void>;
55
+ /**
56
+ * Answer a select query — **and a count, which is a select.**
57
+ *
58
+ * A count is not a distinct query form the way an ask is. An ask really is
59
+ * `ASK WHERE { … }` and needs its own method; a count is
60
+ * `SELECT (COUNT(DISTINCT ?a0) AS ?count) WHERE { … }` — the same query form, the
61
+ * same transport (`executeSparqlSelect`), the same result-set response, differing
62
+ * only in its projection. `countToAlgebra` says so itself: it builds its plan by
63
+ * calling `selectToAlgebra` and swapping the projection, and yields
64
+ * `{type: 'select'}`.
65
+ *
66
+ * So a count rides this channel rather than a method of its own. That is not
67
+ * tidiness: it is what lets a count reach a store through every router that
68
+ * already forwards a select — `LinkedStorage.selectQuery`, a backend API store —
69
+ * with no per-kind plumbing to add in each of them, and no optional `IDataset`
70
+ * member that a third-party store silently lacks.
71
+ *
72
+ * The branch is on the LOWERED IR, as `updateQuery` and `deleteQuery` branch on
73
+ * theirs: `lower()` is the one place that knows a count from a select, and a
74
+ * rehydrated envelope (`fromJSON`) arrives here as a builder like any other.
75
+ *
76
+ * A count carries only a pattern, so there is nothing to normalise away on that
77
+ * path: no projection, no ordering, and in particular no `LIMIT`/`OFFSET`, which
78
+ * the builder dropped before the query ever reached the IR. Errors reject; a count
79
+ * failure is never reported as `0`.
80
+ */
55
81
  selectQuery(query: SelectQuery): Promise<SelectResult>;
82
+ selectQuery(query: CountQuery): Promise<number>;
56
83
  /**
57
84
  * Answer an ask query — emitted as `ASK WHERE { … }`.
58
85
  *
@@ -61,16 +88,6 @@ export declare abstract class SparqlDataset implements IDataset {
61
88
  * of the node under any type or none. Errors reject; never reported as `false`.
62
89
  */
63
90
  askQuery(query: AskQuery): Promise<boolean>;
64
- /**
65
- * Count the matching instances — emitted as
66
- * `SELECT (COUNT(DISTINCT ?a0) AS ?count) WHERE { … }`.
67
- *
68
- * A {@link CountQuery} carries only a pattern, so there is nothing to normalise
69
- * away here: no projection, no ordering, and in particular no `LIMIT`/`OFFSET`,
70
- * which the builder dropped before the query ever reached the IR. Errors reject;
71
- * they are never reported as `0`.
72
- */
73
- countQuery(query: CountQuery): Promise<number>;
74
91
  createQuery(query: CreateQuery): Promise<CreateResult>;
75
92
  updateQuery(query: UpdateQuery): Promise<UpdateResult>;
76
93
  deleteQuery(query: DeleteQuery): Promise<DeleteResponse>;
@@ -43,7 +43,18 @@ export class SparqlDataset {
43
43
  }
44
44
  selectQuery(query) {
45
45
  return __awaiter(this, void 0, void 0, function* () {
46
+ // Cast once for the call rather than lowering in each branch: `lower` is
47
+ // overloaded per query kind and cannot resolve a union, and lowering twice
48
+ // would be the thing this method most needs not to do.
46
49
  const ir = lower(query);
50
+ if (ir.kind === 'count') {
51
+ const sparql = countToSparql(ir, this.options);
52
+ const json = yield this.executeSparqlSelect(sparql);
53
+ // `mapSparqlCountResult` is strict in the same way the guard below is: it
54
+ // refuses an ASK response, an empty result set and a non-integer binding
55
+ // rather than answering `0`.
56
+ return mapSparqlCountResult(json, ir);
57
+ }
47
58
  const sparql = selectToSparql(ir, this.options);
48
59
  const json = yield this.executeSparqlSelect(sparql);
49
60
  if (!isSparqlSelectResults(json)) {
@@ -68,23 +79,6 @@ export class SparqlDataset {
68
79
  return mapSparqlAskResult(json);
69
80
  });
70
81
  }
71
- /**
72
- * Count the matching instances — emitted as
73
- * `SELECT (COUNT(DISTINCT ?a0) AS ?count) WHERE { … }`.
74
- *
75
- * A {@link CountQuery} carries only a pattern, so there is nothing to normalise
76
- * away here: no projection, no ordering, and in particular no `LIMIT`/`OFFSET`,
77
- * which the builder dropped before the query ever reached the IR. Errors reject;
78
- * they are never reported as `0`.
79
- */
80
- countQuery(query) {
81
- return __awaiter(this, void 0, void 0, function* () {
82
- const ir = lower(query);
83
- const sparql = countToSparql(ir, this.options);
84
- const json = yield this.executeSparqlSelect(sparql);
85
- return mapSparqlCountResult(json, ir);
86
- });
87
- }
88
82
  createQuery(query) {
89
83
  return __awaiter(this, void 0, void 0, function* () {
90
84
  const ir = lower(query);
@@ -1 +1 @@
1
- {"version":3,"file":"SparqlDataset.js","sourceRoot":"","sources":["../../../src/sparql/SparqlDataset.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SparqlDataset.js","sourceRoot":"","sources":["../../../src/sparql/SparqlDataset.ts"],"names":[],"mappings":"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"}
@@ -612,7 +612,8 @@ export function mapSparqlCountResult(json, query) {
612
612
  'is not a non-negative integer. It is not coerced — a count that silently reads ' +
613
613
  'as 0 hides a broken query behind an empty table. (These checks are repeated ' +
614
614
  'here rather than left to `resolveCount`, because a caller may hold a store and ' +
615
- 'invoke `countQuery` on it directly, which does not pass through that helper.)');
615
+ 'pass a count query to `selectQuery` on it directly, which does not go through ' +
616
+ 'that helper.)');
616
617
  }
617
618
  return value;
618
619
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resultMapping.js","sourceRoot":"","sources":["../../../src/sparql/resultMapping.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resultMapping.js","sourceRoot":"","sources":["../../../src/sparql/resultMapping.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { CoreSet } from '../collections/CoreSet.js';
2
2
  import type { IDataset } from '../interfaces/IDataset.js';
3
3
  import type { SelectQuery } from '../queries/SelectQuery.js';
4
4
  import type { AskQuery } from '../queries/AskQuery.js';
5
+ import type { CountQuery } from '../queries/CountQuery.js';
5
6
  import type { CreateQuery } from '../queries/CreateQuery.js';
6
7
  import type { UpdateQuery } from '../queries/UpdateQuery.js';
7
8
  import type { DeleteQuery, DeleteResponse } from '../queries/DeleteQuery.js';
@@ -34,7 +35,21 @@ export declare abstract class LinkedStorage {
34
35
  /** Resolve the IDataset for a given shape class. Walks the prototype chain. */
35
36
  static getDatasetForShapeClass(shapeClass?: Function | null): IDataset | undefined;
36
37
  private static resolveDatasetForQueryShape;
37
- static selectQuery<ResultType>(query: SelectQuery): Promise<ResultType>;
38
+ /**
39
+ * Route a select query — **and a count**, which is a select.
40
+ *
41
+ * A count is not a separate query form (an ask is: `ASK WHERE { … }`); it is
42
+ * `SELECT (COUNT(DISTINCT ?s) AS ?count) WHERE { … }`, routed by the same shape to
43
+ * the same dataset and answered over the same channel. So it needs no arm of its
44
+ * own here — which is the point: when it had one, this router was missing it, and
45
+ * `.count()` failed on every path that went through the router while passing
46
+ * against a store held directly.
47
+ *
48
+ * The count contract — a real, non-negative integer, a failure never flattened
49
+ * into `0` — belongs to `resolveCount`, which the builder goes through. None of it
50
+ * is re-implemented here, exactly as none of `resolveExistence` is.
51
+ */
52
+ static selectQuery<ResultType>(query: SelectQuery | CountQuery): Promise<ResultType>;
38
53
  /**
39
54
  * Route an ask query.
40
55
  *
@@ -109,6 +109,20 @@ export class LinkedStorage {
109
109
  }
110
110
  return this.defaultDataset;
111
111
  }
112
+ /**
113
+ * Route a select query — **and a count**, which is a select.
114
+ *
115
+ * A count is not a separate query form (an ask is: `ASK WHERE { … }`); it is
116
+ * `SELECT (COUNT(DISTINCT ?s) AS ?count) WHERE { … }`, routed by the same shape to
117
+ * the same dataset and answered over the same channel. So it needs no arm of its
118
+ * own here — which is the point: when it had one, this router was missing it, and
119
+ * `.count()` failed on every path that went through the router while passing
120
+ * against a store held directly.
121
+ *
122
+ * The count contract — a real, non-negative integer, a failure never flattened
123
+ * into `0` — belongs to `resolveCount`, which the builder goes through. None of it
124
+ * is re-implemented here, exactly as none of `resolveExistence` is.
125
+ */
112
126
  static selectQuery(query) {
113
127
  if (!(query === null || query === void 0 ? void 0 : query.shape)) {
114
128
  return Promise.reject(new Error('Invalid select query passed to LinkedStorage.selectQuery(): missing shape.'));
@@ -1 +1 @@
1
- {"version":3,"file":"LinkedStorage.js","sourceRoot":"","sources":["../../../src/utils/LinkedStorage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LinkedStorage.js","sourceRoot":"","sources":["../../../src/utils/LinkedStorage.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@_linked/core",
3
- "version": "2.20.2",
3
+ "version": "2.21.1",
4
4
  "packageManager": "npm@11.19.1",
5
5
  "license": "MIT",
6
6
  "linkedPackage": true,
@@ -43,13 +43,13 @@
43
43
  "LICENSE"
44
44
  ],
45
45
  "scripts": {
46
- "build": "npx rimraf ./lib && npx tsc -p tsconfig-esm.json",
47
- "compile": "echo '💫 Compiling ESM' && npx tsc -p tsconfig-esm.json",
46
+ "build": "rimraf ./lib && tsc -p tsconfig-esm.json",
47
+ "compile": "echo '💫 Compiling ESM' && tsc -p tsconfig-esm.json",
48
48
  "sync:agents": "node packages/skills/sync.mjs",
49
49
  "setup": "npx semantu-agents",
50
- "typecheck": "npx tsc -p tsconfig-tests.json",
51
- "test": "NODE_OPTIONS=--experimental-vm-modules npx jest --config jest.config.cjs && npm run typecheck",
52
- "test:fuseki": "docker compose -f src/tests/docker-compose.test.yml up -d --wait && NODE_OPTIONS=--experimental-vm-modules npx jest --config jest.config.cjs --runInBand --testPathPattern='sparql-fuseki' --verbose; EXIT=$?; docker compose -f src/tests/docker-compose.test.yml down; exit $EXIT"
50
+ "typecheck": "tsc -p tsconfig-tests.json",
51
+ "test": "NODE_OPTIONS=--experimental-vm-modules jest --config jest.config.cjs && npm run typecheck",
52
+ "test:fuseki": "docker compose -f src/tests/docker-compose.test.yml up -d --wait && NODE_OPTIONS=--experimental-vm-modules jest --config jest.config.cjs --runInBand --testPathPattern='sparql-fuseki' --verbose; EXIT=$?; docker compose -f src/tests/docker-compose.test.yml down; exit $EXIT"
53
53
  },
54
54
  "devDependencies": {
55
55
  "@changesets/changelog-github": "^0.5.2",