@telorun/ide-support 0.16.0 → 0.17.0

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.
@@ -1,3 +1,5 @@
1
1
  export { buildCompletions } from "./build.js";
2
2
  export type { CompletionCtx } from "./detect-context.js";
3
+ export { celCompletions } from "./cel-completions.js";
4
+ export type { CelCompletionTarget } from "./cel-completions.js";
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/completions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/completions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAKzD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,YAAY,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1 +1,6 @@
1
1
  export { buildCompletions } from "./build.js";
2
+ // The CEL half on its own, for a host completing an expression that is not in a
3
+ // YAML document: studio's schema form edits a `!cel` body in a field, so it has
4
+ // the site's address directly and nothing to detect a context from.
5
+ // `buildCompletions` stays the entry point for a document plus a cursor.
6
+ export { celCompletions } from "./cel-completions.js";
@@ -9,7 +9,7 @@ export const CAPABILITY_VALUES = [
9
9
  /** One-line role summary per capability, surfaced on hover. Kept in sync with
10
10
  * the capability list in `CLAUDE.md` / the kernel builtins. */
11
11
  export const CAPABILITY_DOCS = {
12
- "Telo.Service": "Long-lived resource: `init()` + optional `teardown()` (servers, pools).",
12
+ "Telo.Service": "Long-lived resource: `init()` + `run()`, returning what undoes them (servers, pools).",
13
13
  "Telo.Runnable": "One-shot task: `run()` (pipelines, boot steps).",
14
14
  "Telo.Invocable": "Request handler: `invoke(inputs)` (scripts, endpoints).",
15
15
  "Telo.Provider": "Value-flow source: `init()` + optional `provide()` (config, secrets).",
@@ -12,7 +12,7 @@ import { type AnalysisDiagnostic, type LoadedGraph } from "@telorun/analyzer";
12
12
  * Both surface a coded parse / import diagnostic of their own (kept, always);
13
13
  * their *analysis* diagnostics are what a host suppresses so the real cause is
14
14
  * not buried. Every host computes this set from the one function, so the CLI,
15
- * VS Code, and telo-editor agree on exactly what is compromised.
15
+ * VS Code, and telo studio agree on exactly what is compromised.
16
16
  */
17
17
  export declare function compromisedFiles(graph: LoadedGraph): Set<string>;
18
18
  /**
@@ -33,7 +33,7 @@ export declare function compromisedFiles(graph: LoadedGraph): Set<string>;
33
33
  * parse-failed file) — then the entry source.
34
34
  *
35
35
  * Single-closure hosts (CLI, VS Code) call this directly. The multi-closure
36
- * telo-editor drives analysis per closure with bespoke routing, so it consumes
36
+ * telo studio drives analysis per closure with bespoke routing, so it consumes
37
37
  * {@link compromisedFiles} and {@link importResolutionDiagnostics} on their own
38
38
  * — but through the same shared policy, never a private reimplementation.
39
39
  */
@@ -13,7 +13,7 @@ import { findPositions } from "./find-positions.js";
13
13
  * Both surface a coded parse / import diagnostic of their own (kept, always);
14
14
  * their *analysis* diagnostics are what a host suppresses so the real cause is
15
15
  * not buried. Every host computes this set from the one function, so the CLI,
16
- * VS Code, and telo-editor agree on exactly what is compromised.
16
+ * VS Code, and telo studio agree on exactly what is compromised.
17
17
  */
18
18
  export function compromisedFiles(graph) {
19
19
  const entrySource = graph.entry.owner.source;
@@ -45,7 +45,7 @@ export function compromisedFiles(graph) {
45
45
  * parse-failed file) — then the entry source.
46
46
  *
47
47
  * Single-closure hosts (CLI, VS Code) call this directly. The multi-closure
48
- * telo-editor drives analysis per closure with bespoke routing, so it consumes
48
+ * telo studio drives analysis per closure with bespoke routing, so it consumes
49
49
  * {@link compromisedFiles} and {@link importResolutionDiagnostics} on their own
50
50
  * — but through the same shared policy, never a private reimplementation.
51
51
  */
package/dist/index.d.ts CHANGED
@@ -6,4 +6,5 @@ export * from "./semantic-tokens/index.js";
6
6
  export * from "./definition/index.js";
7
7
  export * from "./rename/index.js";
8
8
  export * from "./import-upgrades/index.js";
9
+ export { walkCel, flattenChain, chainAt, type ChainPart } from "./cel-chain.js";
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC;AAI3C,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC"}
package/dist/index.js CHANGED
@@ -6,3 +6,7 @@ export * from "./semantic-tokens/index.js";
6
6
  export * from "./definition/index.js";
7
7
  export * from "./rename/index.js";
8
8
  export * from "./import-upgrades/index.js";
9
+ // The repo's single CEL-tree walk. Exported because every host that has to
10
+ // answer "where is this name read" needs it and a second copy would be a second
11
+ // answer — the editor asks it before deleting a resource.
12
+ export { walkCel, flattenChain, chainAt } from "./cel-chain.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telorun/ide-support",
3
- "version": "0.16.0",
3
+ "version": "0.17.0",
4
4
  "description": "Editor-host-agnostic IDE support (completions, diagnostic normalization) for Telo manifests.",
5
5
  "keywords": [
6
6
  "telo",
@@ -36,7 +36,7 @@
36
36
  "src/**"
37
37
  ],
38
38
  "dependencies": {
39
- "@telorun/analyzer": "0.64.0"
39
+ "@telorun/analyzer": "0.66.0"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@types/node": "^20.0.0",
@@ -1,2 +1,8 @@
1
1
  export { buildCompletions } from "./build.js";
2
2
  export type { CompletionCtx } from "./detect-context.js";
3
+ // The CEL half on its own, for a host completing an expression that is not in a
4
+ // YAML document: studio's schema form edits a `!cel` body in a field, so it has
5
+ // the site's address directly and nothing to detect a context from.
6
+ // `buildCompletions` stays the entry point for a document plus a cursor.
7
+ export { celCompletions } from "./cel-completions.js";
8
+ export type { CelCompletionTarget } from "./cel-completions.js";
@@ -10,7 +10,7 @@ export const CAPABILITY_VALUES = [
10
10
  /** One-line role summary per capability, surfaced on hover. Kept in sync with
11
11
  * the capability list in `CLAUDE.md` / the kernel builtins. */
12
12
  export const CAPABILITY_DOCS: Record<string, string> = {
13
- "Telo.Service": "Long-lived resource: `init()` + optional `teardown()` (servers, pools).",
13
+ "Telo.Service": "Long-lived resource: `init()` + `run()`, returning what undoes them (servers, pools).",
14
14
  "Telo.Runnable": "One-shot task: `run()` (pipelines, boot steps).",
15
15
  "Telo.Invocable": "Request handler: `invoke(inputs)` (scripts, endpoints).",
16
16
  "Telo.Provider": "Value-flow source: `init()` + optional `provide()` (config, secrets).",
@@ -19,7 +19,7 @@ import { findPositions } from "./find-positions.js";
19
19
  * Both surface a coded parse / import diagnostic of their own (kept, always);
20
20
  * their *analysis* diagnostics are what a host suppresses so the real cause is
21
21
  * not buried. Every host computes this set from the one function, so the CLI,
22
- * VS Code, and telo-editor agree on exactly what is compromised.
22
+ * VS Code, and telo studio agree on exactly what is compromised.
23
23
  */
24
24
  export function compromisedFiles(graph: LoadedGraph): Set<string> {
25
25
  const entrySource = graph.entry.owner.source;
@@ -50,7 +50,7 @@ export function compromisedFiles(graph: LoadedGraph): Set<string> {
50
50
  * parse-failed file) — then the entry source.
51
51
  *
52
52
  * Single-closure hosts (CLI, VS Code) call this directly. The multi-closure
53
- * telo-editor drives analysis per closure with bespoke routing, so it consumes
53
+ * telo studio drives analysis per closure with bespoke routing, so it consumes
54
54
  * {@link compromisedFiles} and {@link importResolutionDiagnostics} on their own
55
55
  * — but through the same shared policy, never a private reimplementation.
56
56
  */
package/src/index.ts CHANGED
@@ -6,3 +6,7 @@ export * from "./semantic-tokens/index.js";
6
6
  export * from "./definition/index.js";
7
7
  export * from "./rename/index.js";
8
8
  export * from "./import-upgrades/index.js";
9
+ // The repo's single CEL-tree walk. Exported because every host that has to
10
+ // answer "where is this name read" needs it and a second copy would be a second
11
+ // answer — the editor asks it before deleting a resource.
12
+ export { walkCel, flattenChain, chainAt, type ChainPart } from "./cel-chain.js";