@happyvertical/smrt-cli 0.38.2 → 0.38.3

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.
@@ -379,7 +379,7 @@ async function loadManifestFile(manifestPath) {
379
379
  */
380
380
  async function loadManifest(manifestPath) {
381
381
  const manifest = await loadManifestFile(manifestPath);
382
- if (!manifest || !manifest.objects) return;
382
+ if (!manifest?.objects) return;
383
383
  for (const [name, objectDef] of Object.entries(manifest.objects)) ObjectRegistry.registerFromManifest(name, objectDef, manifest.packageName);
384
384
  }
385
385
  /**
@@ -6019,7 +6019,7 @@ async function loadDependencyManifests(rootManifest, projectRoot, findings) {
6019
6019
  }));
6020
6020
  while (queue.length > 0) {
6021
6021
  const next = queue.shift();
6022
- if (!next || !next.dependency || loaded.has(next.dependency)) continue;
6022
+ if (!next?.dependency || loaded.has(next.dependency)) continue;
6023
6023
  const loadedDependency = await loadDependencyManifest(next.dependency, next.issuerResolverPath);
6024
6024
  if (!loadedDependency) {
6025
6025
  addFinding(findings, "error", "missing-dependency-manifest", `Declared SMRT dependency "${next.dependency}" does not expose a runtime manifest.`);
package/dist/index.js CHANGED
@@ -36,56 +36,56 @@ var _docsCommands = null;
36
36
  var _playgroundCommands = null;
37
37
  async function getGnodeCommands() {
38
38
  if (!_gnodeCommands) {
39
- const { gnodeCommands } = await import("./commands-gnJG0EIL.js");
39
+ const { gnodeCommands } = await import("./commands-BS3AEVpd.js");
40
40
  _gnodeCommands = gnodeCommands;
41
41
  }
42
42
  return _gnodeCommands;
43
43
  }
44
44
  async function getGitCommands() {
45
45
  if (!_gitCommands) {
46
- const { gitCommands } = await import("./commands-gnJG0EIL.js");
46
+ const { gitCommands } = await import("./commands-BS3AEVpd.js");
47
47
  _gitCommands = gitCommands;
48
48
  }
49
49
  return _gitCommands;
50
50
  }
51
51
  async function getGenerateCommands() {
52
52
  if (!_generateCommands) {
53
- const { generateCommands } = await import("./commands-gnJG0EIL.js");
53
+ const { generateCommands } = await import("./commands-BS3AEVpd.js");
54
54
  _generateCommands = generateCommands;
55
55
  }
56
56
  return _generateCommands;
57
57
  }
58
58
  async function getInitCommands() {
59
59
  if (!_initCommands) {
60
- const { initCommands } = await import("./commands-gnJG0EIL.js");
60
+ const { initCommands } = await import("./commands-BS3AEVpd.js");
61
61
  _initCommands = initCommands;
62
62
  }
63
63
  return _initCommands;
64
64
  }
65
65
  async function getUtilityCommands() {
66
66
  if (!_utilityCommands) {
67
- const { utilityCommands } = await import("./commands-gnJG0EIL.js");
67
+ const { utilityCommands } = await import("./commands-BS3AEVpd.js");
68
68
  _utilityCommands = utilityCommands;
69
69
  }
70
70
  return _utilityCommands;
71
71
  }
72
72
  async function getDispatchCommands() {
73
73
  if (!_dispatchCommands) {
74
- const { dispatchCommands } = await import("./commands-gnJG0EIL.js");
74
+ const { dispatchCommands } = await import("./commands-BS3AEVpd.js");
75
75
  _dispatchCommands = dispatchCommands;
76
76
  }
77
77
  return _dispatchCommands;
78
78
  }
79
79
  async function getDocsCommands() {
80
80
  if (!_docsCommands) {
81
- const { docsCommands } = await import("./commands-gnJG0EIL.js");
81
+ const { docsCommands } = await import("./commands-BS3AEVpd.js");
82
82
  _docsCommands = docsCommands;
83
83
  }
84
84
  return _docsCommands;
85
85
  }
86
86
  async function getPlaygroundCommands() {
87
87
  if (!_playgroundCommands) {
88
- const { playgroundCommands } = await import("./commands-gnJG0EIL.js");
88
+ const { playgroundCommands } = await import("./commands-BS3AEVpd.js");
89
89
  _playgroundCommands = playgroundCommands;
90
90
  }
91
91
  return _playgroundCommands;
@@ -607,7 +607,7 @@ var CLIGenerator = class {
607
607
  await this.showHelp(allCommands);
608
608
  return;
609
609
  }
610
- let command = commands.find((cmd) => cmd.name === parsed.command || parsed.command && cmd.aliases && cmd.aliases.includes(parsed.command));
610
+ let command = commands.find((cmd) => cmd.name === parsed.command || parsed.command && cmd.aliases?.includes(parsed.command));
611
611
  if (!command && parsed.command) command = await this.findObjectCommand(parsed.command);
612
612
  if (command) {
613
613
  const requiredArgCount = countRequiredArgs(command.args);
@@ -1168,7 +1168,7 @@ var CLIGenerator = class {
1168
1168
  async handleSingletonMethod(objectName, methodName, options, methodDef) {
1169
1169
  try {
1170
1170
  const classInfo = ObjectRegistry.getClass(objectName);
1171
- if (!classInfo || !classInfo.constructor) {
1171
+ if (!classInfo?.constructor) {
1172
1172
  const availableObjects = Array.from(ObjectRegistry.getAllClasses().values()).map((info) => info.name);
1173
1173
  const availableList = availableObjects.length > 0 ? `Available objects:\n ${availableObjects.join("\n ")}` : "No objects registered. Run \"npm run build\" to generate registrations.";
1174
1174
  this.exitWithError(`Object class '${objectName}' not found.\n\n${availableList}\n\nTroubleshooting:\n1. Run "npm run build" to generate .smrt/register.js\n2. Ensure package exports classes correctly\n3. Run "smrt doctor" for diagnostics`);
@@ -1280,7 +1280,7 @@ var CLIGenerator = class {
1280
1280
  async getCollection(objectName) {
1281
1281
  if (!this.collections.has(objectName)) {
1282
1282
  const classInfo = ObjectRegistry.getClass(objectName);
1283
- if (!classInfo || !classInfo.collectionConstructor) {
1283
+ if (!classInfo?.collectionConstructor) {
1284
1284
  const availableObjects = Array.from(ObjectRegistry.getAllClasses().values()).map((info) => info.name);
1285
1285
  throw new Error(`Object '${objectName}' not found or has no collection constructor.\n\nAvailable objects:\n ${availableObjects.join("\n ")}\n\nTroubleshooting:\n1. If from external package, ensure it's installed:\n npm install <package-name>\n\n2. Rebuild your project to regenerate manifest:\n npm run build\n\n3. Check .smrt/manifest.json contains the object\n\n4. Verify package exports classes correctly\n5. Run with verbose mode for more details:\n SMRT_CLI_VERBOSE=true npx smrt ${objectName}:list\n`);
1286
1286
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@happyvertical/smrt-cli",
3
- "version": "0.38.2",
3
+ "version": "0.38.3",
4
4
  "description": "Developer CLI for SMRT framework - introspection, testing, and project management",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -24,26 +24,26 @@
24
24
  }
25
25
  },
26
26
  "dependencies": {
27
- "@happyvertical/ai": "^0.74.11",
28
- "@happyvertical/files": "^0.74.11",
29
- "@happyvertical/logger": "^0.74.11",
30
- "@happyvertical/sql": "^0.74.11",
31
- "@happyvertical/utils": "^0.74.11",
27
+ "@happyvertical/ai": "^0.76.2",
28
+ "@happyvertical/files": "^0.76.2",
29
+ "@happyvertical/logger": "^0.76.2",
30
+ "@happyvertical/sql": "^0.76.2",
31
+ "@happyvertical/utils": "^0.76.2",
32
32
  "acorn": "^8.17.0",
33
33
  "fast-glob": "3.3.3",
34
34
  "tar": "^7.5.19",
35
- "@happyvertical/smrt-agents": "0.38.2",
36
- "@happyvertical/smrt-config": "0.38.2",
37
- "@happyvertical/smrt-core": "0.38.2",
38
- "@happyvertical/smrt-dev-mcp": "0.38.2",
39
- "@happyvertical/smrt-playground": "0.38.2",
40
- "@happyvertical/smrt-types": "0.38.2"
35
+ "@happyvertical/smrt-agents": "0.38.3",
36
+ "@happyvertical/smrt-config": "0.38.3",
37
+ "@happyvertical/smrt-core": "0.38.3",
38
+ "@happyvertical/smrt-dev-mcp": "0.38.3",
39
+ "@happyvertical/smrt-playground": "0.38.3",
40
+ "@happyvertical/smrt-types": "0.38.3"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@types/node": "24.13.2",
44
- "tsx": "^4.22.4",
44
+ "tsx": "^4.23.0",
45
45
  "typescript": "^5.9.3",
46
- "vite": "^8.1.2",
46
+ "vite": "^8.1.3",
47
47
  "vite-plugin-dts": "4.5.4",
48
48
  "vitest": "^4.1.9"
49
49
  },
@@ -426,7 +426,7 @@ function collectMissingTypeImports(packageRoot, typeEntryFiles) {
426
426
 
427
427
  for (const match of source.matchAll(importPattern)) {
428
428
  const specifier = match[1] || match[2];
429
- if (!specifier || !specifier.startsWith('.')) {
429
+ if (!specifier?.startsWith('.')) {
430
430
  continue;
431
431
  }
432
432