@oml/cli 0.13.0 → 0.14.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 +28 -21
- package/out/{auth.d.ts → auth/auth.d.ts} +7 -0
- package/out/{auth.js → auth/auth.js} +42 -3
- package/out/auth/auth.js.map +1 -0
- package/out/{platform-constants.js → auth/constants.js} +1 -1
- package/out/auth/constants.js.map +1 -0
- package/out/{platform.d.ts → auth/platform.d.ts} +5 -7
- package/out/{platform.js → auth/platform.js} +13 -19
- package/out/auth/platform.js.map +1 -0
- package/out/cli.d.ts +6 -0
- package/out/cli.js +175 -62
- package/out/cli.js.map +1 -1
- package/out/commands/export.d.ts +8 -0
- package/out/commands/export.js +27 -0
- package/out/commands/export.js.map +1 -0
- package/out/commands/lint.d.ts +22 -2
- package/out/commands/lint.js +64 -18
- package/out/commands/lint.js.map +1 -1
- package/out/commands/reason.d.ts +2 -9
- package/out/commands/reason.js +52 -48
- package/out/commands/reason.js.map +1 -1
- package/out/commands/render.d.ts +1 -9
- package/out/commands/render.js +15 -726
- package/out/commands/render.js.map +1 -1
- package/out/commands/server/actions.d.ts +22 -0
- package/out/commands/server/actions.js +394 -0
- package/out/commands/server/actions.js.map +1 -0
- package/out/commands/server/require.d.ts +1 -0
- package/out/commands/server/require.js +89 -0
- package/out/commands/server/require.js.map +1 -0
- package/out/commands/server/rest.d.ts +2 -0
- package/out/commands/server/rest.js +117 -0
- package/out/commands/server/rest.js.map +1 -0
- package/out/commands/validate.d.ts +3 -3
- package/out/commands/validate.js +35 -171
- package/out/commands/validate.js.map +1 -1
- package/package.json +5 -7
- package/src/{auth.ts → auth/auth.ts} +54 -3
- package/src/{platform.ts → auth/platform.ts} +13 -19
- package/src/cli.ts +207 -63
- package/src/commands/export.ts +54 -0
- package/src/commands/lint.ts +88 -18
- package/src/commands/reason.ts +69 -56
- package/src/commands/render.ts +23 -995
- package/src/commands/server/actions.ts +480 -0
- package/src/commands/server/require.ts +99 -0
- package/src/commands/server/rest.ts +135 -0
- package/src/commands/validate.ts +46 -207
- package/out/auth.js.map +0 -1
- package/out/backend/backend-types.d.ts +0 -21
- package/out/backend/backend-types.js +0 -3
- package/out/backend/backend-types.js.map +0 -1
- package/out/backend/create-backend.d.ts +0 -2
- package/out/backend/create-backend.js +0 -6
- package/out/backend/create-backend.js.map +0 -1
- package/out/backend/direct-backend.d.ts +0 -20
- package/out/backend/direct-backend.js +0 -150
- package/out/backend/direct-backend.js.map +0 -1
- package/out/backend/reasoned-output.d.ts +0 -38
- package/out/backend/reasoned-output.js +0 -568
- package/out/backend/reasoned-output.js.map +0 -1
- package/out/commands/closure.d.ts +0 -33
- package/out/commands/closure.js +0 -537
- package/out/commands/closure.js.map +0 -1
- package/out/commands/compile.d.ts +0 -11
- package/out/commands/compile.js +0 -63
- package/out/commands/compile.js.map +0 -1
- package/out/platform-constants.js.map +0 -1
- package/out/platform.js.map +0 -1
- package/src/backend/backend-types.ts +0 -27
- package/src/backend/create-backend.ts +0 -8
- package/src/backend/direct-backend.ts +0 -169
- package/src/backend/reasoned-output.ts +0 -697
- package/src/commands/closure.ts +0 -624
- package/src/commands/compile.ts +0 -88
- /package/out/{platform-constants.d.ts → auth/constants.d.ts} +0 -0
- /package/src/{platform-constants.ts → auth/constants.ts} +0 -0
package/out/cli.js
CHANGED
|
@@ -4,17 +4,47 @@ import { Command } from 'commander';
|
|
|
4
4
|
import * as fs from 'node:fs/promises';
|
|
5
5
|
import * as path from 'node:path';
|
|
6
6
|
import * as url from 'node:url';
|
|
7
|
-
import { OmlCliAuthService } from './auth.js';
|
|
8
|
-
import {
|
|
7
|
+
import { OmlCliAuthService } from './auth/auth.js';
|
|
8
|
+
import { exchangeApiToken } from '@oml/platform';
|
|
9
|
+
import { DEFAULT_API_BASE_URL } from './auth/constants.js';
|
|
10
|
+
import { exportAction } from './commands/export.js';
|
|
9
11
|
import { lintAction } from './commands/lint.js';
|
|
10
12
|
import { renderAction } from './commands/render.js';
|
|
13
|
+
import { serverStartAction, serverRunAction, serverStatusAction, serverStopAction } from './commands/server/actions.js';
|
|
14
|
+
import { assertServerRunning } from './commands/server/require.js';
|
|
11
15
|
import { notifyIfCliUpdateAvailable } from './update.js';
|
|
12
16
|
import { validateAction } from './commands/validate.js';
|
|
13
17
|
import { CliExitError } from './cli-error.js';
|
|
14
|
-
import { initializePlatform, disposePlatform, trackCommand } from './platform.js';
|
|
18
|
+
import { initializePlatform, disposePlatform, trackCommand } from './auth/platform.js';
|
|
15
19
|
const __dirname = url.fileURLToPath(new URL('.', import.meta.url));
|
|
16
20
|
let debugEnabled = false;
|
|
21
|
+
export function getWorkspaceCommands() {
|
|
22
|
+
return [
|
|
23
|
+
{ name: 'lint', description: 'lints OML files and prints any syntax or validation errors' },
|
|
24
|
+
{
|
|
25
|
+
name: 'render [options]',
|
|
26
|
+
description: 'lint the workspace, then render markdown files to static html',
|
|
27
|
+
usage: 'render -m <input-folder> -b <output-folder> [-c <ontology-iri>] [--only]'
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: 'export [options]',
|
|
31
|
+
description: 'export OWL files including reasoned entailments',
|
|
32
|
+
usage: 'export [-o <dir>] [-f <ext>] [--clean] [--pretty] [--only]'
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: 'reason [options]',
|
|
36
|
+
description: 'run workspace consistency checks via /v0/reason (check-only)',
|
|
37
|
+
usage: 'reason [-e <true|false>] [--only]'
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
name: 'validate [options]',
|
|
41
|
+
description: 'validate table-editor SHACL blocks in workspace markdown files',
|
|
42
|
+
usage: 'validate [--only]'
|
|
43
|
+
},
|
|
44
|
+
];
|
|
45
|
+
}
|
|
17
46
|
export async function runCli(argv = process.argv) {
|
|
47
|
+
assertNoMalformedShortFlags(argv);
|
|
18
48
|
debugEnabled = hasDebugFlag(argv);
|
|
19
49
|
if (debugEnabled) {
|
|
20
50
|
process.env.OML_PLATFORM_DEBUG = '1';
|
|
@@ -24,8 +54,8 @@ export async function runCli(argv = process.argv) {
|
|
|
24
54
|
const packageJson = JSON.parse(packageContent);
|
|
25
55
|
const updateCheck = notifyIfCliUpdateAvailable(packageJson.version);
|
|
26
56
|
const program = new Command();
|
|
27
|
-
program.version(packageJson.version);
|
|
28
|
-
program.option('--debug', 'print detailed error diagnostics (stack traces and nested causes)');
|
|
57
|
+
program.version(packageJson.version, '-v, --version', 'output the version number');
|
|
58
|
+
program.option('-d, --debug', 'print detailed error diagnostics (stack traces and nested causes)');
|
|
29
59
|
const authService = new OmlCliAuthService();
|
|
30
60
|
program
|
|
31
61
|
.command('login')
|
|
@@ -47,12 +77,15 @@ export async function runCli(argv = process.argv) {
|
|
|
47
77
|
});
|
|
48
78
|
program
|
|
49
79
|
.command('lint')
|
|
50
|
-
.option('-w, --workspace <dir>', 'workspace root used to resolve cross-file references', '.')
|
|
51
80
|
.description('lints OML files and prints any syntax or validation errors')
|
|
52
81
|
.action(async (...args) => {
|
|
53
82
|
const done = trackCommand('oml-lint');
|
|
54
83
|
try {
|
|
55
|
-
await
|
|
84
|
+
const authToken = await resolveServerRequestToken(authService);
|
|
85
|
+
await lintAction({
|
|
86
|
+
...(args[0] ?? {}),
|
|
87
|
+
authToken,
|
|
88
|
+
});
|
|
56
89
|
done();
|
|
57
90
|
}
|
|
58
91
|
catch (err) {
|
|
@@ -62,23 +95,18 @@ export async function runCli(argv = process.argv) {
|
|
|
62
95
|
});
|
|
63
96
|
program
|
|
64
97
|
.command('render')
|
|
65
|
-
.
|
|
66
|
-
.requiredOption('-
|
|
67
|
-
.
|
|
68
|
-
.
|
|
69
|
-
.option('-f, --format <ext>', 'RDF format extension for compile/reason output: ttl, trig, nt, nq, or n3', 'ttl')
|
|
70
|
-
.option('-c, --context <model-uri>', 'default model URI/path used for markdown files without contextUri; also enables wikilink template page generation')
|
|
71
|
-
.option('--clean', 'remove output folders before rebuilding')
|
|
72
|
-
.option('--only', 'skip reason/compile/lint and render from the existing owl output folder')
|
|
73
|
-
.option('--pretty', 'pretty-print Turtle/TriG output with blank lines between top-level blocks')
|
|
74
|
-
.option('-u, --unique-names-assumption [value]', 'enable or disable the unique names assumption', parseBooleanOption, true)
|
|
75
|
-
.option('-e, --explanations [value]', 'enable or disable inconsistency explanations', parseBooleanOption, true)
|
|
76
|
-
.option('-p, --profile [value]', 'include phase timings in the reasoner result', parseBooleanOption, false)
|
|
77
|
-
.description('reason the workspace, then render markdown files under the selected markdown folder to static html and copy referenced non-markdown assets')
|
|
98
|
+
.requiredOption('-m, --md <input-folder>', 'folder containing markdown files to render')
|
|
99
|
+
.requiredOption('-b, --web <output-folder>', 'folder where rendered static site files are written')
|
|
100
|
+
.option('-c, --context <ontology-iri>', 'ontology IRI used as default navigation context for wikilinks')
|
|
101
|
+
.description('lint the workspace, then render markdown files to static html')
|
|
78
102
|
.action(async (...args) => {
|
|
79
103
|
const done = trackCommand('oml-render');
|
|
80
104
|
try {
|
|
81
|
-
await
|
|
105
|
+
const authToken = await resolveServerRequestToken(authService);
|
|
106
|
+
await renderAction({
|
|
107
|
+
...(args[0] ?? {}),
|
|
108
|
+
authToken,
|
|
109
|
+
});
|
|
82
110
|
done();
|
|
83
111
|
}
|
|
84
112
|
catch (err) {
|
|
@@ -87,18 +115,20 @@ export async function runCli(argv = process.argv) {
|
|
|
87
115
|
}
|
|
88
116
|
});
|
|
89
117
|
program
|
|
90
|
-
.command('
|
|
91
|
-
.option('-
|
|
92
|
-
.option('-owl, --owl <dir>', 'folder where compiled RDF files are written')
|
|
118
|
+
.command('export')
|
|
119
|
+
.option('-o, --owl <dir>', 'folder where RDF output files are written')
|
|
93
120
|
.option('-f, --format <ext>', 'RDF format extension: ttl, trig, nt, nq, or n3', 'ttl')
|
|
94
|
-
.option('--clean', 'remove output folder before
|
|
95
|
-
.option('--only', 'skip lint and compile from the current workspace state')
|
|
121
|
+
.option('--clean', 'remove output folder before export')
|
|
96
122
|
.option('--pretty', 'pretty-print Turtle/TriG output with blank lines between top-level blocks')
|
|
97
|
-
.description('
|
|
123
|
+
.description('export OWL files including reasoned entailments')
|
|
98
124
|
.action(async (...args) => {
|
|
99
|
-
const done = trackCommand('oml-
|
|
125
|
+
const done = trackCommand('oml-export');
|
|
100
126
|
try {
|
|
101
|
-
await
|
|
127
|
+
const authToken = await resolveServerRequestToken(authService);
|
|
128
|
+
await exportAction({
|
|
129
|
+
...(args[0] ?? {}),
|
|
130
|
+
authToken,
|
|
131
|
+
});
|
|
102
132
|
done();
|
|
103
133
|
}
|
|
104
134
|
catch (err) {
|
|
@@ -108,22 +138,15 @@ export async function runCli(argv = process.argv) {
|
|
|
108
138
|
});
|
|
109
139
|
program
|
|
110
140
|
.command('reason')
|
|
111
|
-
.option('-
|
|
112
|
-
.option('
|
|
113
|
-
.
|
|
114
|
-
.option('--clean', 'remove output folder before compiling')
|
|
115
|
-
.option('--only', 'skip compile/lint and reason from the existing owl output folder')
|
|
116
|
-
.option('--pretty', 'pretty-print Turtle/TriG output with blank lines between top-level blocks')
|
|
117
|
-
.option('-c, --check-only', 'only check consistency; skip entailment materialization and file output')
|
|
118
|
-
.option('-u, --unique-names-assumption [value]', 'enable or disable the unique names assumption', parseBooleanOption, true)
|
|
119
|
-
.option('-e, --explanations [value]', 'enable or disable inconsistency explanations', parseBooleanOption, true)
|
|
120
|
-
.option('-p, --profile [value]', 'include phase timings in the reasoner result', parseBooleanOption, false)
|
|
121
|
-
.description('compile OML files, then run consistency checking for every ontology in dependency order')
|
|
141
|
+
.option('-e, --explanation [value]', 'enable or disable inconsistency explanations', parseBooleanOption, true)
|
|
142
|
+
.option('--only', 'skip lint and reason from the current server workspace state')
|
|
143
|
+
.description('run workspace consistency checks via /v0/reason (check-only)')
|
|
122
144
|
.action(async (opts) => {
|
|
123
145
|
const done = trackCommand('oml-reason');
|
|
124
146
|
try {
|
|
125
147
|
const { reasonAction } = await import('./commands/reason.js');
|
|
126
|
-
await
|
|
148
|
+
const authToken = await resolveServerRequestToken(authService);
|
|
149
|
+
await reasonAction({ ...opts, authToken });
|
|
127
150
|
done();
|
|
128
151
|
}
|
|
129
152
|
catch (err) {
|
|
@@ -133,21 +156,16 @@ export async function runCli(argv = process.argv) {
|
|
|
133
156
|
});
|
|
134
157
|
program
|
|
135
158
|
.command('validate')
|
|
136
|
-
.
|
|
137
|
-
.
|
|
138
|
-
.option('-owl, --owl <dir>', 'folder where compiled RDF and entailment files are written')
|
|
139
|
-
.option('-f, --format <ext>', 'RDF format extension for compile output: ttl, trig, nt, nq, or n3', 'ttl')
|
|
140
|
-
.option('--clean', 'remove output folder before compiling')
|
|
141
|
-
.option('--only', 'skip compile/lint and reason from the existing owl output folder')
|
|
142
|
-
.option('--pretty', 'pretty-print Turtle/TriG output with blank lines between top-level blocks')
|
|
143
|
-
.option('-u, --unique-names-assumption [value]', 'enable or disable the unique names assumption', parseBooleanOption, true)
|
|
144
|
-
.option('-e, --explanations [value]', 'enable or disable inconsistency explanations', parseBooleanOption, true)
|
|
145
|
-
.option('-p, --profile [value]', 'include phase timings in the reasoner result', parseBooleanOption, false)
|
|
146
|
-
.description('compile and reason the workspace, then validate nested markdown table-editor SHACL blocks against their context models')
|
|
159
|
+
.option('--only', 'skip lint and validate markdown blocks only')
|
|
160
|
+
.description('validate table-editor SHACL blocks in workspace markdown files')
|
|
147
161
|
.action(async (...args) => {
|
|
148
162
|
const done = trackCommand('oml-validate');
|
|
149
163
|
try {
|
|
150
|
-
await
|
|
164
|
+
const authToken = await resolveServerRequestToken(authService);
|
|
165
|
+
await validateAction({
|
|
166
|
+
...(args[0] ?? {}),
|
|
167
|
+
authToken,
|
|
168
|
+
});
|
|
151
169
|
done();
|
|
152
170
|
}
|
|
153
171
|
catch (err) {
|
|
@@ -155,10 +173,48 @@ export async function runCli(argv = process.argv) {
|
|
|
155
173
|
throw err;
|
|
156
174
|
}
|
|
157
175
|
});
|
|
176
|
+
const server = program
|
|
177
|
+
.command('server')
|
|
178
|
+
.description('manage the standalone OML language server daemon');
|
|
179
|
+
server
|
|
180
|
+
.command('start [port]')
|
|
181
|
+
.option('-p, --port <port>', 'bind port (default: auto-select free port)')
|
|
182
|
+
.option('--workspace <workspace>', 'workspace root used by REST facade initialize (default: cwd)')
|
|
183
|
+
.description('start the OML server as a background daemon (CI/CD, requires OML_PLATFORM_API_KEY)')
|
|
184
|
+
.action(async (port, options) => {
|
|
185
|
+
await serverStartAction(port, { ...options, auth: await resolveServerStartAuth() });
|
|
186
|
+
});
|
|
187
|
+
server
|
|
188
|
+
.command('run [port]')
|
|
189
|
+
.option('-p, --port <port>', 'bind port (default: auto-select free port)')
|
|
190
|
+
.option('--workspace <workspace>', 'workspace root (default: cwd)')
|
|
191
|
+
.description('run the OML server in the foreground with interactive authentication (Ctrl-C to stop)')
|
|
192
|
+
.action(async (port, options) => {
|
|
193
|
+
await serverRunAction(port, { ...options, auth: await resolveServerRunAuth(authService) });
|
|
194
|
+
});
|
|
195
|
+
server
|
|
196
|
+
.command('stop')
|
|
197
|
+
.description('stop the OML language server daemon')
|
|
198
|
+
.action(async () => {
|
|
199
|
+
await serverStopAction();
|
|
200
|
+
});
|
|
201
|
+
server
|
|
202
|
+
.command('status')
|
|
203
|
+
.description('print server daemon status')
|
|
204
|
+
.action(async () => {
|
|
205
|
+
await serverStatusAction();
|
|
206
|
+
});
|
|
158
207
|
program.hook('preAction', async (_thisCommand, actionCommand) => {
|
|
159
|
-
if (actionCommand.name() === 'login'
|
|
208
|
+
if (actionCommand.name() === 'login'
|
|
209
|
+
|| actionCommand.name() === 'logout'
|
|
210
|
+
|| actionCommand.name() === 'whoami'
|
|
211
|
+
|| actionCommand.name() === 'start'
|
|
212
|
+
|| actionCommand.name() === 'run'
|
|
213
|
+
|| actionCommand.name() === 'stop'
|
|
214
|
+
|| actionCommand.name() === 'status') {
|
|
160
215
|
return;
|
|
161
216
|
}
|
|
217
|
+
await assertServerRunning();
|
|
162
218
|
// Require either GitHub auth or API key, then connect to platform
|
|
163
219
|
if (!process.env.OML_PLATFORM_API_KEY) {
|
|
164
220
|
await authService.ensureAuthenticated('OML CLI');
|
|
@@ -173,6 +229,29 @@ export async function runCli(argv = process.argv) {
|
|
|
173
229
|
}
|
|
174
230
|
await updateCheck;
|
|
175
231
|
}
|
|
232
|
+
function assertNoMalformedShortFlags(argv) {
|
|
233
|
+
// Enforce explicit short-flag syntax (`-m value`) and long flags (`--md`).
|
|
234
|
+
// This prevents accidental typos like `-md`, which Commander interprets as `-m d`.
|
|
235
|
+
let stopOptionParsing = false;
|
|
236
|
+
for (const token of argv.slice(2)) {
|
|
237
|
+
if (stopOptionParsing) {
|
|
238
|
+
continue;
|
|
239
|
+
}
|
|
240
|
+
if (token === '--') {
|
|
241
|
+
stopOptionParsing = true;
|
|
242
|
+
continue;
|
|
243
|
+
}
|
|
244
|
+
if (token.startsWith('---')) {
|
|
245
|
+
throw new Error(`Malformed flag '${token}'. Use long flags as '--name <value>' or '--name=<value>'.`);
|
|
246
|
+
}
|
|
247
|
+
if (token === '--=' || token.startsWith('--=')) {
|
|
248
|
+
throw new Error(`Malformed flag '${token}'. Use long flags as '--name <value>' or '--name=<value>'.`);
|
|
249
|
+
}
|
|
250
|
+
if (/^-[^-].+/.test(token) && token.length > 2) {
|
|
251
|
+
throw new Error(`Malformed flag '${token}'. Use short flags as '-x <value>' or long flags as '--name <value>'.`);
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
}
|
|
176
255
|
export function reportCliError(error) {
|
|
177
256
|
const exitCode = error instanceof CliExitError ? error.exitCode : 1;
|
|
178
257
|
const message = debugEnabled
|
|
@@ -183,6 +262,13 @@ export function reportCliError(error) {
|
|
|
183
262
|
}
|
|
184
263
|
return exitCode;
|
|
185
264
|
}
|
|
265
|
+
process.on('unhandledRejection', (error) => {
|
|
266
|
+
const message = debugEnabled
|
|
267
|
+
? formatDetailedError(error)
|
|
268
|
+
: (error instanceof Error ? error.message : String(error));
|
|
269
|
+
console.error(chalk.red(message));
|
|
270
|
+
process.exitCode = 1;
|
|
271
|
+
});
|
|
186
272
|
function parseBooleanOption(value) {
|
|
187
273
|
if (typeof value === 'boolean') {
|
|
188
274
|
return value;
|
|
@@ -196,15 +282,42 @@ function parseBooleanOption(value) {
|
|
|
196
282
|
}
|
|
197
283
|
throw new Error(`Expected a boolean value, received '${value}'.`);
|
|
198
284
|
}
|
|
199
|
-
process.on('unhandledRejection', (error) => {
|
|
200
|
-
const message = debugEnabled
|
|
201
|
-
? formatDetailedError(error)
|
|
202
|
-
: (error instanceof Error ? error.message : String(error));
|
|
203
|
-
console.error(chalk.red(message));
|
|
204
|
-
process.exitCode = 1;
|
|
205
|
-
});
|
|
206
285
|
function hasDebugFlag(argv) {
|
|
207
|
-
return argv.includes('--debug');
|
|
286
|
+
return argv.includes('--debug') || argv.includes('-d');
|
|
287
|
+
}
|
|
288
|
+
async function resolveServerRequestToken(authService) {
|
|
289
|
+
const apiKey = process.env.OML_PLATFORM_API_KEY?.trim();
|
|
290
|
+
if (apiKey && apiKey.length > 0) {
|
|
291
|
+
return apiKey;
|
|
292
|
+
}
|
|
293
|
+
const snapshot = await authService.getServerAuthSnapshot();
|
|
294
|
+
return snapshot.accessToken;
|
|
295
|
+
}
|
|
296
|
+
async function resolveServerStartAuth() {
|
|
297
|
+
const apiKey = process.env.OML_PLATFORM_API_KEY?.trim();
|
|
298
|
+
if (!apiKey) {
|
|
299
|
+
throw new CliExitError('OML_PLATFORM_API_KEY is not set. oml server start requires an API key for non-interactive use. ' +
|
|
300
|
+
'For interactive use, run \'oml server run\' instead.');
|
|
301
|
+
}
|
|
302
|
+
const oidcToken = process.env.OML_CI_TOKEN?.trim();
|
|
303
|
+
const apiBaseUrl = process.env.OML_PLATFORM_API_URL?.trim() ?? DEFAULT_API_BASE_URL;
|
|
304
|
+
const result = await exchangeApiToken(apiBaseUrl, apiKey, oidcToken || undefined);
|
|
305
|
+
return { accessToken: result.accessToken };
|
|
306
|
+
}
|
|
307
|
+
async function resolveServerRunAuth(authService) {
|
|
308
|
+
await authService.ensureAuthenticated('oml server run');
|
|
309
|
+
const snapshot = await authService.getServerAuthSnapshot();
|
|
310
|
+
if (!snapshot.refreshToken || snapshot.expiresAtMs === undefined) {
|
|
311
|
+
throw new CliExitError('Authentication session is incomplete. Run oml login again.');
|
|
312
|
+
}
|
|
313
|
+
return {
|
|
314
|
+
accessToken: snapshot.accessToken,
|
|
315
|
+
refreshToken: snapshot.refreshToken,
|
|
316
|
+
expiresAtMs: snapshot.expiresAtMs,
|
|
317
|
+
onRefresh: async (newAccessToken, newRefreshToken, newExpiresAtMs) => {
|
|
318
|
+
await authService.storeRefreshedTokens(newAccessToken, newRefreshToken, newExpiresAtMs);
|
|
319
|
+
},
|
|
320
|
+
};
|
|
208
321
|
}
|
|
209
322
|
function formatDetailedError(error) {
|
|
210
323
|
if (!(error instanceof Error)) {
|
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":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// Copyright (c) 2026 Modelware. All rights reserved.
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import * as path from 'node:path';
|
|
4
|
+
import { failCli } from '../cli-error.js';
|
|
5
|
+
import { formatDuration } from '../util.js';
|
|
6
|
+
import { restPost } from './server/rest.js';
|
|
7
|
+
import { lintAction } from './lint.js';
|
|
8
|
+
export const exportAction = async (opts) => {
|
|
9
|
+
await lintAction({ authToken: opts.authToken });
|
|
10
|
+
const startedAt = Date.now();
|
|
11
|
+
const result = await restPost('/v0/export', {
|
|
12
|
+
...opts,
|
|
13
|
+
only: true,
|
|
14
|
+
}, opts.authToken);
|
|
15
|
+
if (!result.success) {
|
|
16
|
+
failCli(chalk.red(result.error?.trim() || result.assertedExport?.error?.trim() || 'export failed.'));
|
|
17
|
+
}
|
|
18
|
+
const written = Number(result.assertedExport?.filesWritten ?? 0);
|
|
19
|
+
if (written === 0) {
|
|
20
|
+
console.log(chalk.yellow('No .oml files found in server workspace.'));
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const outputDir = result.assertedExport?.outputDir ?? opts.owl ?? path.join(process.cwd(), 'build', 'owl');
|
|
24
|
+
const reasoned = Number(result.reason?.ontologiesReasoned ?? written);
|
|
25
|
+
console.log(chalk.green(`export: ${written} OML file(s) exported with entailments (${reasoned} ontology checks) in ${path.relative(process.cwd(), outputDir) || outputDir} [${formatDuration(Date.now() - startedAt)}]`));
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=export.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAErD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAUvC,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,IAAmB,EAAiB,EAAE;IACrE,MAAM,UAAU,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAgB1B,YAAY,EAAE;QACb,GAAG,IAAI;QACP,IAAI,EAAE,IAAI;KACyB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAEzD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,gBAAgB,CAAC,CAAC,CAAC;IACzG,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,YAAY,IAAI,CAAC,CAAC,CAAC;IACjE,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,0CAA0C,CAAC,CAAC,CAAC;QACtE,OAAO;IACX,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,EAAE,SAAS,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC3G,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,IAAI,OAAO,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,OAAO,2CAA2C,QAAQ,wBAAwB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,IAAI,SAAS,KAAK,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;AAC9N,CAAC,CAAC"}
|
package/out/commands/lint.d.ts
CHANGED
|
@@ -1,5 +1,25 @@
|
|
|
1
|
+
export type LintProblem = {
|
|
2
|
+
uri: string;
|
|
3
|
+
line: number;
|
|
4
|
+
column: number;
|
|
5
|
+
kind: 'error' | 'warning' | 'information' | 'hint' | 'unknown';
|
|
6
|
+
message: string;
|
|
7
|
+
};
|
|
8
|
+
export type LintPayload = {
|
|
9
|
+
success: boolean;
|
|
10
|
+
filesChecked: number;
|
|
11
|
+
errors: number;
|
|
12
|
+
warnings: number;
|
|
13
|
+
elapsedMs?: number;
|
|
14
|
+
returnedProblems?: number;
|
|
15
|
+
totalProblems?: number;
|
|
16
|
+
truncated?: boolean;
|
|
17
|
+
problems?: LintProblem[];
|
|
18
|
+
error?: string;
|
|
19
|
+
};
|
|
1
20
|
export type LintOptions = {
|
|
2
|
-
|
|
3
|
-
workspaceRoot?: string;
|
|
21
|
+
authToken?: string;
|
|
4
22
|
};
|
|
23
|
+
export declare function printLintDiagnostics(result: LintPayload): void;
|
|
24
|
+
export declare function formatLintSummary(result: LintPayload, elapsedMs: number): string;
|
|
5
25
|
export declare const lintAction: (opts: LintOptions) => Promise<void>;
|
package/out/commands/lint.js
CHANGED
|
@@ -1,27 +1,73 @@
|
|
|
1
1
|
// Copyright (c) 2026 Modelware. All rights reserved.
|
|
2
2
|
import chalk from 'chalk';
|
|
3
|
-
import
|
|
3
|
+
import * as path from 'node:path';
|
|
4
|
+
import { fileURLToPath } from 'node:url';
|
|
4
5
|
import { failCli } from '../cli-error.js';
|
|
5
6
|
import { formatDuration } from '../util.js';
|
|
7
|
+
import { restPost } from './server/rest.js';
|
|
8
|
+
export function printLintDiagnostics(result) {
|
|
9
|
+
const problems = Array.isArray(result.problems) ? result.problems : [];
|
|
10
|
+
if (problems.length === 0) {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
for (const problem of problems) {
|
|
14
|
+
const location = `${formatProblemUri(problem.uri)}:${Math.max(1, Number(problem.line ?? 1))}:${Math.max(1, Number(problem.column ?? 1))}`;
|
|
15
|
+
const kind = String(problem.kind ?? 'unknown').toLowerCase();
|
|
16
|
+
const kindLabel = kind === 'error'
|
|
17
|
+
? chalk.red(kind)
|
|
18
|
+
: (kind === 'warning'
|
|
19
|
+
? chalk.yellow(kind)
|
|
20
|
+
: chalk.cyan(kind));
|
|
21
|
+
console.log(`${location} ${kindLabel} ${String(problem.message ?? '').trim()}`);
|
|
22
|
+
}
|
|
23
|
+
if (result.truncated) {
|
|
24
|
+
const returned = Number(result.returnedProblems ?? problems.length);
|
|
25
|
+
const total = Number(result.totalProblems ?? returned);
|
|
26
|
+
console.log(chalk.yellow(`lint: showing ${returned} of ${total} problem(s); increase lint limit to see all.`));
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export function formatLintSummary(result, elapsedMs) {
|
|
30
|
+
if (result.errors > 0 || result.warnings > 0) {
|
|
31
|
+
return `lint: ${result.filesChecked} OML file(s) checked with ${result.errors} error(s) and ${result.warnings} warning(s). [${formatDuration(elapsedMs)}]`;
|
|
32
|
+
}
|
|
33
|
+
return `lint: ${result.filesChecked} OML file(s) checked. [${formatDuration(elapsedMs)}]`;
|
|
34
|
+
}
|
|
6
35
|
export const lintAction = async (opts) => {
|
|
7
36
|
const startedAt = Date.now();
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
finally {
|
|
24
|
-
await backend.dispose();
|
|
37
|
+
const result = await restPost('/v0/lint', {}, opts.authToken);
|
|
38
|
+
if (result.error && result.error.trim().length > 0) {
|
|
39
|
+
failCli(chalk.red(result.error.trim()));
|
|
40
|
+
}
|
|
41
|
+
if (result.filesChecked === 0) {
|
|
42
|
+
console.log(chalk.yellow('No .oml files found in server workspace.'));
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
printLintDiagnostics(result);
|
|
46
|
+
const elapsedMs = typeof result.elapsedMs === 'number' && Number.isFinite(result.elapsedMs) && result.elapsedMs >= 0
|
|
47
|
+
? result.elapsedMs
|
|
48
|
+
: Date.now() - startedAt;
|
|
49
|
+
if (result.errors > 0) {
|
|
50
|
+
failCli(chalk.red(formatLintSummary(result, elapsedMs)));
|
|
25
51
|
}
|
|
52
|
+
if (result.warnings > 0) {
|
|
53
|
+
failCli(chalk.yellow(formatLintSummary(result, elapsedMs)));
|
|
54
|
+
}
|
|
55
|
+
console.log(chalk.green(formatLintSummary(result, elapsedMs)));
|
|
26
56
|
};
|
|
57
|
+
function formatProblemUri(uri) {
|
|
58
|
+
const text = String(uri ?? '').trim();
|
|
59
|
+
if (!text) {
|
|
60
|
+
return '<unknown>';
|
|
61
|
+
}
|
|
62
|
+
if (!text.startsWith('file://')) {
|
|
63
|
+
return text;
|
|
64
|
+
}
|
|
65
|
+
try {
|
|
66
|
+
const filePath = fileURLToPath(text);
|
|
67
|
+
return path.relative(process.cwd(), filePath) || '.';
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
return text;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
27
73
|
//# sourceMappingURL=lint.js.map
|
package/out/commands/lint.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../../src/commands/lint.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAErD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../../src/commands/lint.ts"],"names":[],"mappings":"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"}
|
package/out/commands/reason.d.ts
CHANGED
|
@@ -1,13 +1,6 @@
|
|
|
1
1
|
export type ReasonOptions = {
|
|
2
|
-
workspace?: string;
|
|
3
|
-
owl?: string;
|
|
4
|
-
format?: string;
|
|
5
|
-
clean?: boolean;
|
|
6
|
-
pretty?: boolean;
|
|
7
2
|
only?: boolean;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
explanations?: boolean;
|
|
11
|
-
profile?: boolean;
|
|
3
|
+
explanation?: boolean;
|
|
4
|
+
authToken?: string;
|
|
12
5
|
};
|
|
13
6
|
export declare const reasonAction: (opts: ReasonOptions) => Promise<void>;
|