@oml/cli 0.11.0 → 0.13.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.
package/README.md CHANGED
@@ -71,6 +71,7 @@ node ./packages/cli/bin/cli.js render -w . -md src/md -web build/web -owl build/
71
71
 
72
72
  ### Notes
73
73
 
74
+ - Pass `--debug` with any command (for example `oml login --debug`) to print stack traces and nested error causes.
74
75
  - The CLI uses `OML_PLATFORM_API_KEY` when it is set. Otherwise, operational commands use the token from `oml login` for platform authorization.
75
76
  - OAuth login refresh uses built-in Supabase defaults. Set `OML_SUPABASE_URL` or `OML_SUPABASE_ANON_KEY` to override them.
76
77
  - GitHub device-flow login requires `OML_AUTH_GITHUB_CLIENT_ID`, unless you embed `DEFAULT_GITHUB_CLIENT_ID` in [`src/auth.ts`](./src/auth.ts).
@@ -2,6 +2,7 @@
2
2
  import { createOwlServices } from '@oml/owl';
3
3
  import { MarkdownHandlerRegistry, MarkdownPreviewRuntime } from '@oml/markdown';
4
4
  import { MarkdownExecutor } from '@oml/markdown';
5
+ import { getOntologyModelIndex } from '@oml/language';
5
6
  import { NodeFileSystem } from 'langium/node';
6
7
  import { URI } from 'langium';
7
8
  import * as fs from 'node:fs/promises';
@@ -41,11 +42,31 @@ export class DirectBackend {
41
42
  const services = await this.ensureServices(workspaceRoot);
42
43
  await this.ensurePreparedDataset(workspaceRoot, services);
43
44
  const reasoningService = services.reasoning.ReasoningService;
45
+ const ontologyIndex = getOntologyModelIndex(services.shared);
46
+ const knownNamespaceCache = new Map();
47
+ const isKnownOntologyIriNamespace = (ontologyIri) => {
48
+ const normalized = ontologyIri.trim().replace(/[\/#]+$/, '');
49
+ if (!normalized) {
50
+ return false;
51
+ }
52
+ const cached = knownNamespaceCache.get(normalized);
53
+ if (cached !== undefined) {
54
+ return cached;
55
+ }
56
+ if (ontologyIndex.resolveModelUri(normalized)) {
57
+ knownNamespaceCache.set(normalized, true);
58
+ return true;
59
+ }
60
+ const exists = ontologyIndex.getDuplicateWorkspaceModelUris(normalized).length > 0;
61
+ knownNamespaceCache.set(normalized, exists);
62
+ return exists;
63
+ };
44
64
  const executor = new MarkdownExecutor({
45
65
  ensureContext: (modelUri) => reasoningService.ensureQueryContext(modelUri),
46
66
  resolveContextIri: (modelUri) => reasoningService.getContextIri(modelUri),
47
67
  query: (modelUri, sparql) => reasoningService.getSparqlService().query(modelUri, sparql),
48
68
  construct: (modelUri, sparql) => reasoningService.getSparqlService().construct(modelUri, sparql),
69
+ isKnownOntologyIriNamespace,
49
70
  });
50
71
  return executor.executeBlocks(params);
51
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"direct-backend.js","sourceRoot":"","sources":["../../src/backend/direct-backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"direct-backend.js","sourceRoot":"","sources":["../../src/backend/direct-backend.ts"],"names":[],"mappings":"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"}
package/out/cli.js CHANGED
@@ -13,13 +13,19 @@ import { validateAction } from './commands/validate.js';
13
13
  import { CliExitError } from './cli-error.js';
14
14
  import { initializePlatform, disposePlatform, trackCommand } from './platform.js';
15
15
  const __dirname = url.fileURLToPath(new URL('.', import.meta.url));
16
+ let debugEnabled = false;
16
17
  export async function runCli(argv = process.argv) {
18
+ debugEnabled = hasDebugFlag(argv);
19
+ if (debugEnabled) {
20
+ process.env.OML_PLATFORM_DEBUG = '1';
21
+ }
17
22
  const packagePath = path.resolve(__dirname, '..', 'package.json');
18
23
  const packageContent = await fs.readFile(packagePath, 'utf-8');
19
24
  const packageJson = JSON.parse(packageContent);
20
25
  const updateCheck = notifyIfCliUpdateAvailable(packageJson.version);
21
26
  const program = new Command();
22
27
  program.version(packageJson.version);
28
+ program.option('--debug', 'print detailed error diagnostics (stack traces and nested causes)');
23
29
  const authService = new OmlCliAuthService();
24
30
  program
25
31
  .command('login')
@@ -169,7 +175,9 @@ export async function runCli(argv = process.argv) {
169
175
  }
170
176
  export function reportCliError(error) {
171
177
  const exitCode = error instanceof CliExitError ? error.exitCode : 1;
172
- const message = error instanceof Error ? error.message : String(error);
178
+ const message = debugEnabled
179
+ ? formatDetailedError(error)
180
+ : (error instanceof Error ? error.message : String(error));
173
181
  if (message) {
174
182
  console.error(message);
175
183
  }
@@ -189,8 +197,42 @@ function parseBooleanOption(value) {
189
197
  throw new Error(`Expected a boolean value, received '${value}'.`);
190
198
  }
191
199
  process.on('unhandledRejection', (error) => {
192
- const message = error instanceof Error ? error.message : String(error);
200
+ const message = debugEnabled
201
+ ? formatDetailedError(error)
202
+ : (error instanceof Error ? error.message : String(error));
193
203
  console.error(chalk.red(message));
194
204
  process.exitCode = 1;
195
205
  });
206
+ function hasDebugFlag(argv) {
207
+ return argv.includes('--debug');
208
+ }
209
+ function formatDetailedError(error) {
210
+ if (!(error instanceof Error)) {
211
+ return String(error);
212
+ }
213
+ const lines = [];
214
+ let current = error;
215
+ let depth = 0;
216
+ while (current instanceof Error && depth < 8) {
217
+ const prefix = depth === 0 ? 'Error' : `Caused by (${depth})`;
218
+ const code = getErrorCode(current);
219
+ lines.push(`${prefix}: ${code ? `[${code}] ` : ''}${current.name}: ${current.message}`);
220
+ if (current.stack) {
221
+ lines.push(current.stack);
222
+ }
223
+ current = getErrorCause(current);
224
+ depth += 1;
225
+ }
226
+ if (current !== undefined && current !== null) {
227
+ lines.push(`Caused by (${depth}): ${String(current)}`);
228
+ }
229
+ return lines.join('\n');
230
+ }
231
+ function getErrorCode(error) {
232
+ const code = error.code;
233
+ return typeof code === 'string' ? code : undefined;
234
+ }
235
+ function getErrorCause(error) {
236
+ return error.cause;
237
+ }
196
238
  //# sourceMappingURL=cli.js.map
package/out/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAErD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElF,MAAM,SAAS,GAAG,GAAG,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACnE,IAAI,YAAY,GAAG,KAAK,CAAC;AAEzB,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAAiB,OAAO,CAAC,IAAI;IACtD,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,YAAY,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,GAAG,CAAC;IACzC,CAAC;IACD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IAClE,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAwB,CAAC;IACtE,MAAM,WAAW,GAAG,0BAA0B,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAEpE,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACrC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,mEAAmE,CAAC,CAAC;IAC/F,MAAM,WAAW,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAE5C,OAAO;SACF,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,2CAA2C,CAAC;SACxD,MAAM,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IAEP,OAAO;SACF,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,kCAAkC,CAAC;SAC/C,MAAM,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,WAAW,CAAC,MAAM,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEP,OAAO;SACF,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,mCAAmC,CAAC;SAChD,MAAM,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,WAAW,CAAC,MAAM,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEP,OAAO;SACF,OAAO,CAAC,MAAM,CAAC;SACf,MAAM,CAAC,uBAAuB,EAAE,sDAAsD,EAAE,GAAG,CAAC;SAC5F,WAAW,CAAC,4DAA4D,CAAC;SACzE,MAAM,CAAC,KAAK,EAAE,GAAG,IAAe,EAAE,EAAE;QACjC,MAAM,IAAI,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;QACtC,IAAI,CAAC;YACD,MAAM,UAAU,CAAC,GAAG,IAAqC,CAAC,CAAC;YAC3D,IAAI,EAAE,CAAC;QACX,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC,CAAC,CAAC;IAEP,OAAO;SACF,OAAO,CAAC,QAAQ,CAAC;SACjB,MAAM,CAAC,oCAAoC,EAAE,+EAA+E,CAAC;SAC7H,cAAc,CAAC,0BAA0B,EAAE,4CAA4C,CAAC;SACxF,cAAc,CAAC,6BAA6B,EAAE,qDAAqD,CAAC;SACpG,MAAM,CAAC,mBAAmB,EAAE,4DAA4D,CAAC;SACzF,MAAM,CAAC,oBAAoB,EAAE,0EAA0E,EAAE,KAAK,CAAC;SAC/G,MAAM,CAAC,2BAA2B,EAAE,mHAAmH,CAAC;SACxJ,MAAM,CAAC,SAAS,EAAE,yCAAyC,CAAC;SAC5D,MAAM,CAAC,QAAQ,EAAE,yEAAyE,CAAC;SAC3F,MAAM,CAAC,UAAU,EAAE,2EAA2E,CAAC;SAC/F,MAAM,CAAC,uCAAuC,EAAE,+CAA+C,EAAE,kBAAkB,EAAE,IAAI,CAAC;SAC1H,MAAM,CAAC,4BAA4B,EAAE,8CAA8C,EAAE,kBAAkB,EAAE,IAAI,CAAC;SAC9G,MAAM,CAAC,uBAAuB,EAAE,8CAA8C,EAAE,kBAAkB,EAAE,KAAK,CAAC;SAC1G,WAAW,CAAC,4IAA4I,CAAC;SACzJ,MAAM,CAAC,KAAK,EAAE,GAAG,IAAe,EAAE,EAAE;QACjC,MAAM,IAAI,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;QACxC,IAAI,CAAC;YACD,MAAM,YAAY,CAAC,GAAG,IAAuC,CAAC,CAAC;YAC/D,IAAI,EAAE,CAAC;QACX,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC,CAAC,CAAC;IAEP,OAAO;SACF,OAAO,CAAC,SAAS,CAAC;SAClB,MAAM,CAAC,uBAAuB,EAAE,sDAAsD,EAAE,GAAG,CAAC;SAC5F,MAAM,CAAC,mBAAmB,EAAE,6CAA6C,CAAC;SAC1E,MAAM,CAAC,oBAAoB,EAAE,gDAAgD,EAAE,KAAK,CAAC;SACrF,MAAM,CAAC,SAAS,EAAE,uCAAuC,CAAC;SAC1D,MAAM,CAAC,QAAQ,EAAE,wDAAwD,CAAC;SAC1E,MAAM,CAAC,UAAU,EAAE,2EAA2E,CAAC;SAC/F,WAAW,CAAC,6DAA6D,CAAC;SAC1E,MAAM,CAAC,KAAK,EAAE,GAAG,IAAe,EAAE,EAAE;QACjC,MAAM,IAAI,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;QACzC,IAAI,CAAC;YACD,MAAM,aAAa,CAAC,GAAG,IAAwC,CAAC,CAAC;YACjE,IAAI,EAAE,CAAC;QACX,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC,CAAC,CAAC;IAEP,OAAO;SACF,OAAO,CAAC,QAAQ,CAAC;SACjB,MAAM,CAAC,uBAAuB,EAAE,sDAAsD,EAAE,GAAG,CAAC;SAC5F,MAAM,CAAC,mBAAmB,EAAE,4DAA4D,CAAC;SACzF,MAAM,CAAC,oBAAoB,EAAE,mEAAmE,EAAE,KAAK,CAAC;SACxG,MAAM,CAAC,SAAS,EAAE,uCAAuC,CAAC;SAC1D,MAAM,CAAC,QAAQ,EAAE,kEAAkE,CAAC;SACpF,MAAM,CAAC,UAAU,EAAE,2EAA2E,CAAC;SAC/F,MAAM,CAAC,kBAAkB,EAAE,yEAAyE,CAAC;SACrG,MAAM,CAAC,uCAAuC,EAAE,+CAA+C,EAAE,kBAAkB,EAAE,IAAI,CAAC;SAC1H,MAAM,CAAC,4BAA4B,EAAE,8CAA8C,EAAE,kBAAkB,EAAE,IAAI,CAAC;SAC9G,MAAM,CAAC,uBAAuB,EAAE,8CAA8C,EAAE,kBAAkB,EAAE,KAAK,CAAC;SAC1G,WAAW,CAAC,yFAAyF,CAAC;SACtG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACnB,MAAM,IAAI,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;QACxC,IAAI,CAAC;YACD,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC9D,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,EAAE,CAAC;QACX,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC,CAAC,CAAC;IAEP,OAAO;SACF,OAAO,CAAC,UAAU,CAAC;SACnB,cAAc,CAAC,0BAA0B,EAAE,0DAA0D,CAAC;SACtG,MAAM,CAAC,uBAAuB,EAAE,sDAAsD,EAAE,GAAG,CAAC;SAC5F,MAAM,CAAC,mBAAmB,EAAE,4DAA4D,CAAC;SACzF,MAAM,CAAC,oBAAoB,EAAE,mEAAmE,EAAE,KAAK,CAAC;SACxG,MAAM,CAAC,SAAS,EAAE,uCAAuC,CAAC;SAC1D,MAAM,CAAC,QAAQ,EAAE,kEAAkE,CAAC;SACpF,MAAM,CAAC,UAAU,EAAE,2EAA2E,CAAC;SAC/F,MAAM,CAAC,uCAAuC,EAAE,+CAA+C,EAAE,kBAAkB,EAAE,IAAI,CAAC;SAC1H,MAAM,CAAC,4BAA4B,EAAE,8CAA8C,EAAE,kBAAkB,EAAE,IAAI,CAAC;SAC9G,MAAM,CAAC,uBAAuB,EAAE,8CAA8C,EAAE,kBAAkB,EAAE,KAAK,CAAC;SAC1G,WAAW,CAAC,wHAAwH,CAAC;SACrI,MAAM,CAAC,KAAK,EAAE,GAAG,IAAe,EAAE,EAAE;QACjC,MAAM,IAAI,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;QAC1C,IAAI,CAAC;YACD,MAAM,cAAc,CAAC,GAAG,IAAyC,CAAC,CAAC;YACnE,IAAI,EAAE,CAAC;QACX,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC,CAAC,CAAC;IAEP,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,EAAE;QAC5D,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,QAAQ,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC;YAC7G,OAAO;QACX,CAAC;QACD,kEAAkE;QAClE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC;YACpC,MAAM,WAAW,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;QACrD,CAAC;QACD,MAAM,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC;QACD,MAAM,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;YAAS,CAAC;QACP,MAAM,eAAe,EAAE,CAAC;IAC5B,CAAC;IACD,MAAM,WAAW,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAc;IACzC,MAAM,QAAQ,GAAG,KAAK,YAAY,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,MAAM,OAAO,GAAG,YAAY;QACxB,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC;QAC5B,CAAC,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/D,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAuB;IAC/C,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,uCAAuC,KAAK,IAAI,CAAC,CAAC;AACtE,CAAC;AAED,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,EAAE;IACvC,MAAM,OAAO,GAAG,YAAY;QACxB,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC;QAC5B,CAAC,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/D,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACzB,CAAC,CAAC,CAAC;AAEH,SAAS,YAAY,CAAC,IAAc;IAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IACvC,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IACD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,GAAY,KAAK,CAAC;IAC7B,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,OAAO,OAAO,YAAY,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,KAAK,GAAG,CAAC;QAC9D,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACxF,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;QACjC,KAAK,IAAI,CAAC,CAAC;IACf,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,YAAY,CAAC,KAAY;IAC9B,MAAM,IAAI,GAAI,KAAoC,CAAC,IAAI,CAAC;IACxD,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC;AAED,SAAS,aAAa,CAAC,KAAY;IAC/B,OAAQ,KAAqC,CAAC,KAAK,CAAC;AACxD,CAAC"}
package/out/platform.js CHANGED
@@ -10,6 +10,7 @@ import { OmlClient, FileStorageAdapter, installNodeShutdownHandlers } from '@oml
10
10
  import chalk from 'chalk';
11
11
  import { DEFAULT_API_BASE_URL } from './platform-constants.js';
12
12
  const API_BASE_URL_ENV = 'OML_PLATFORM_API_URL';
13
+ const PLATFORM_DEBUG_ENV = 'OML_PLATFORM_DEBUG';
13
14
  let client = null;
14
15
  let shutdownHandle = null;
15
16
  /**
@@ -81,8 +82,35 @@ export function trackCommand(featureId, metadata) {
81
82
  function toGenericPlatformErrorMessage(error) {
82
83
  const message = error instanceof Error ? error.message.trim() : String(error).trim();
83
84
  if (!message || message === 'fetch failed') {
85
+ if (isDebugEnabled()) {
86
+ const detailed = formatErrorChain(error);
87
+ if (detailed) {
88
+ return detailed;
89
+ }
90
+ }
84
91
  return 'Check your network connection or sign in again with \'oml login\'.';
85
92
  }
86
93
  return message;
87
94
  }
95
+ function isDebugEnabled() {
96
+ return process.env[PLATFORM_DEBUG_ENV] === '1';
97
+ }
98
+ function formatErrorChain(error) {
99
+ if (!(error instanceof Error)) {
100
+ return String(error);
101
+ }
102
+ const parts = [];
103
+ let current = error;
104
+ let depth = 0;
105
+ while (current instanceof Error && depth < 8) {
106
+ const code = current.code;
107
+ parts.push(code ? `${current.name}[${String(code)}]: ${current.message}` : `${current.name}: ${current.message}`);
108
+ current = current.cause;
109
+ depth += 1;
110
+ }
111
+ if (current !== undefined && current !== null) {
112
+ parts.push(String(current));
113
+ }
114
+ return parts.join(' | ');
115
+ }
88
116
  //# sourceMappingURL=platform.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@oml/cli",
3
3
  "description": "The cli specific package",
4
- "version": "0.11.0",
4
+ "version": "0.13.0",
5
5
  "type": "module",
6
6
  "engines": {
7
7
  "node": ">=20.10.0",
@@ -21,9 +21,9 @@
21
21
  "build:clean": "npm run clean && npm run build"
22
22
  },
23
23
  "dependencies": {
24
- "@oml/language": "0.11.0",
25
- "@oml/markdown": "0.11.0",
26
- "@oml/owl": "0.11.0",
24
+ "@oml/language": "0.13.0",
25
+ "@oml/markdown": "0.13.0",
26
+ "@oml/owl": "0.13.0",
27
27
  "@oml/platform": "^0.4.0",
28
28
  "@oml/reasoner": "^0.3.0",
29
29
  "chalk": "~5.3.0",
@@ -3,6 +3,7 @@
3
3
  import { createOwlServices } from '@oml/owl';
4
4
  import { MarkdownHandlerRegistry, MarkdownPreviewRuntime } from '@oml/markdown';
5
5
  import { MarkdownExecutor, type MdExecuteBlocksParams, type MdExecuteBlocksResult } from '@oml/markdown';
6
+ import { getOntologyModelIndex } from '@oml/language';
6
7
  import { NodeFileSystem } from 'langium/node';
7
8
  import { URI } from 'langium';
8
9
  import * as fs from 'node:fs/promises';
@@ -55,11 +56,31 @@ export class DirectBackend implements CliBackend {
55
56
  const services = await this.ensureServices(workspaceRoot);
56
57
  await this.ensurePreparedDataset(workspaceRoot, services);
57
58
  const reasoningService = services.reasoning.ReasoningService as any;
59
+ const ontologyIndex = getOntologyModelIndex(services.shared as any);
60
+ const knownNamespaceCache = new Map<string, boolean>();
61
+ const isKnownOntologyIriNamespace = (ontologyIri: string): boolean => {
62
+ const normalized = ontologyIri.trim().replace(/[\/#]+$/, '');
63
+ if (!normalized) {
64
+ return false;
65
+ }
66
+ const cached = knownNamespaceCache.get(normalized);
67
+ if (cached !== undefined) {
68
+ return cached;
69
+ }
70
+ if (ontologyIndex.resolveModelUri(normalized)) {
71
+ knownNamespaceCache.set(normalized, true);
72
+ return true;
73
+ }
74
+ const exists = ontologyIndex.getDuplicateWorkspaceModelUris(normalized).length > 0;
75
+ knownNamespaceCache.set(normalized, exists);
76
+ return exists;
77
+ };
58
78
  const executor = new MarkdownExecutor({
59
79
  ensureContext: (modelUri) => reasoningService.ensureQueryContext(modelUri),
60
80
  resolveContextIri: (modelUri) => reasoningService.getContextIri(modelUri),
61
81
  query: (modelUri, sparql) => reasoningService.getSparqlService().query(modelUri, sparql),
62
82
  construct: (modelUri, sparql) => reasoningService.getSparqlService().construct(modelUri, sparql),
83
+ isKnownOntologyIriNamespace,
63
84
  });
64
85
  return executor.executeBlocks(params);
65
86
  }
package/src/cli.ts CHANGED
@@ -15,8 +15,13 @@ import { CliExitError } from './cli-error.js';
15
15
  import { initializePlatform, disposePlatform, trackCommand } from './platform.js';
16
16
 
17
17
  const __dirname = url.fileURLToPath(new URL('.', import.meta.url));
18
+ let debugEnabled = false;
18
19
 
19
20
  export async function runCli(argv: string[] = process.argv): Promise<void> {
21
+ debugEnabled = hasDebugFlag(argv);
22
+ if (debugEnabled) {
23
+ process.env.OML_PLATFORM_DEBUG = '1';
24
+ }
20
25
  const packagePath = path.resolve(__dirname, '..', 'package.json');
21
26
  const packageContent = await fs.readFile(packagePath, 'utf-8');
22
27
  const packageJson = JSON.parse(packageContent) as { version: string };
@@ -24,6 +29,7 @@ export async function runCli(argv: string[] = process.argv): Promise<void> {
24
29
 
25
30
  const program = new Command();
26
31
  program.version(packageJson.version);
32
+ program.option('--debug', 'print detailed error diagnostics (stack traces and nested causes)');
27
33
  const authService = new OmlCliAuthService();
28
34
 
29
35
  program
@@ -178,7 +184,9 @@ export async function runCli(argv: string[] = process.argv): Promise<void> {
178
184
 
179
185
  export function reportCliError(error: unknown): number {
180
186
  const exitCode = error instanceof CliExitError ? error.exitCode : 1;
181
- const message = error instanceof Error ? error.message : String(error);
187
+ const message = debugEnabled
188
+ ? formatDetailedError(error)
189
+ : (error instanceof Error ? error.message : String(error));
182
190
  if (message) {
183
191
  console.error(message);
184
192
  }
@@ -200,7 +208,45 @@ function parseBooleanOption(value: string | boolean): boolean {
200
208
  }
201
209
 
202
210
  process.on('unhandledRejection', (error) => {
203
- const message = error instanceof Error ? error.message : String(error);
211
+ const message = debugEnabled
212
+ ? formatDetailedError(error)
213
+ : (error instanceof Error ? error.message : String(error));
204
214
  console.error(chalk.red(message));
205
215
  process.exitCode = 1;
206
216
  });
217
+
218
+ function hasDebugFlag(argv: string[]): boolean {
219
+ return argv.includes('--debug');
220
+ }
221
+
222
+ function formatDetailedError(error: unknown): string {
223
+ if (!(error instanceof Error)) {
224
+ return String(error);
225
+ }
226
+ const lines: string[] = [];
227
+ let current: unknown = error;
228
+ let depth = 0;
229
+ while (current instanceof Error && depth < 8) {
230
+ const prefix = depth === 0 ? 'Error' : `Caused by (${depth})`;
231
+ const code = getErrorCode(current);
232
+ lines.push(`${prefix}: ${code ? `[${code}] ` : ''}${current.name}: ${current.message}`);
233
+ if (current.stack) {
234
+ lines.push(current.stack);
235
+ }
236
+ current = getErrorCause(current);
237
+ depth += 1;
238
+ }
239
+ if (current !== undefined && current !== null) {
240
+ lines.push(`Caused by (${depth}): ${String(current)}`);
241
+ }
242
+ return lines.join('\n');
243
+ }
244
+
245
+ function getErrorCode(error: Error): string | undefined {
246
+ const code = (error as Error & { code?: unknown }).code;
247
+ return typeof code === 'string' ? code : undefined;
248
+ }
249
+
250
+ function getErrorCause(error: Error): unknown {
251
+ return (error as Error & { cause?: unknown }).cause;
252
+ }
package/src/platform.ts CHANGED
@@ -15,6 +15,7 @@ import chalk from 'chalk';
15
15
  import { DEFAULT_API_BASE_URL } from './platform-constants.js';
16
16
  import { OmlCliAuthService } from './auth.js';
17
17
  const API_BASE_URL_ENV = 'OML_PLATFORM_API_URL';
18
+ const PLATFORM_DEBUG_ENV = 'OML_PLATFORM_DEBUG';
18
19
 
19
20
  let client: OmlClient | null = null;
20
21
  let shutdownHandle: NodeShutdownHandle | null = null;
@@ -105,7 +106,36 @@ export function trackCommand(
105
106
  function toGenericPlatformErrorMessage(error: unknown): string {
106
107
  const message = error instanceof Error ? error.message.trim() : String(error).trim();
107
108
  if (!message || message === 'fetch failed') {
109
+ if (isDebugEnabled()) {
110
+ const detailed = formatErrorChain(error);
111
+ if (detailed) {
112
+ return detailed;
113
+ }
114
+ }
108
115
  return 'Check your network connection or sign in again with \'oml login\'.';
109
116
  }
110
117
  return message;
111
118
  }
119
+
120
+ function isDebugEnabled(): boolean {
121
+ return process.env[PLATFORM_DEBUG_ENV] === '1';
122
+ }
123
+
124
+ function formatErrorChain(error: unknown): string {
125
+ if (!(error instanceof Error)) {
126
+ return String(error);
127
+ }
128
+ const parts: string[] = [];
129
+ let current: unknown = error;
130
+ let depth = 0;
131
+ while (current instanceof Error && depth < 8) {
132
+ const code = (current as Error & { code?: unknown }).code;
133
+ parts.push(code ? `${current.name}[${String(code)}]: ${current.message}` : `${current.name}: ${current.message}`);
134
+ current = (current as Error & { cause?: unknown }).cause;
135
+ depth += 1;
136
+ }
137
+ if (current !== undefined && current !== null) {
138
+ parts.push(String(current));
139
+ }
140
+ return parts.join(' | ');
141
+ }