homegraph 1.5.3 → 1.5.4

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.
Files changed (132) hide show
  1. package/CHANGELOG.md +26 -1
  2. package/README.md +51 -5
  3. package/dist/addons/dynamic-import.d.ts +18 -0
  4. package/dist/addons/dynamic-import.d.ts.map +1 -0
  5. package/dist/addons/dynamic-import.js +25 -0
  6. package/dist/addons/dynamic-import.js.map +1 -0
  7. package/dist/addons/init-template.d.ts +15 -0
  8. package/dist/addons/init-template.d.ts.map +1 -0
  9. package/dist/addons/init-template.js +290 -0
  10. package/dist/addons/init-template.js.map +1 -0
  11. package/dist/addons/loader.d.ts +18 -0
  12. package/dist/addons/loader.d.ts.map +1 -0
  13. package/dist/addons/loader.js +88 -0
  14. package/dist/addons/loader.js.map +1 -0
  15. package/dist/addons/manager.d.ts +106 -0
  16. package/dist/addons/manager.d.ts.map +1 -0
  17. package/dist/addons/manager.js +437 -0
  18. package/dist/addons/manager.js.map +1 -0
  19. package/dist/addons/paths.d.ts +22 -0
  20. package/dist/addons/paths.d.ts.map +1 -0
  21. package/dist/addons/paths.js +65 -0
  22. package/dist/addons/paths.js.map +1 -0
  23. package/dist/addons/registry.d.ts +38 -0
  24. package/dist/addons/registry.d.ts.map +1 -0
  25. package/dist/addons/registry.js +160 -0
  26. package/dist/addons/registry.js.map +1 -0
  27. package/dist/addons/semver.d.ts +21 -0
  28. package/dist/addons/semver.d.ts.map +1 -0
  29. package/dist/addons/semver.js +79 -0
  30. package/dist/addons/semver.js.map +1 -0
  31. package/dist/addons/types.d.ts +51 -0
  32. package/dist/addons/types.d.ts.map +1 -0
  33. package/dist/addons/types.js +14 -0
  34. package/dist/addons/types.js.map +1 -0
  35. package/dist/addons/validate.d.ts +38 -0
  36. package/dist/addons/validate.d.ts.map +1 -0
  37. package/dist/addons/validate.js +165 -0
  38. package/dist/addons/validate.js.map +1 -0
  39. package/dist/arkui/migrate-snapshot.d.ts.map +1 -1
  40. package/dist/arkui/migrate-snapshot.js +58 -34
  41. package/dist/arkui/migrate-snapshot.js.map +1 -1
  42. package/dist/bin/addon-commands.d.ts +27 -0
  43. package/dist/bin/addon-commands.d.ts.map +1 -0
  44. package/dist/bin/addon-commands.js +254 -0
  45. package/dist/bin/addon-commands.js.map +1 -0
  46. package/dist/bin/homegraph.js +6 -1
  47. package/dist/bin/homegraph.js.map +1 -1
  48. package/dist/bin/node-version-check.d.ts +1 -1
  49. package/dist/bin/node-version-check.js +1 -1
  50. package/dist/db/sqlite-adapter.d.ts +2 -3
  51. package/dist/db/sqlite-adapter.d.ts.map +1 -1
  52. package/dist/db/sqlite-adapter.js +2 -3
  53. package/dist/db/sqlite-adapter.js.map +1 -1
  54. package/dist/extraction/languages/arkts.d.ts +14 -0
  55. package/dist/extraction/languages/arkts.d.ts.map +1 -1
  56. package/dist/extraction/languages/arkts.js +78 -32
  57. package/dist/extraction/languages/arkts.js.map +1 -1
  58. package/dist/index.d.ts +1 -0
  59. package/dist/index.d.ts.map +1 -1
  60. package/dist/index.js.map +1 -1
  61. package/dist/mcp/explore-repeat-guard.d.ts +123 -0
  62. package/dist/mcp/explore-repeat-guard.d.ts.map +1 -0
  63. package/dist/mcp/explore-repeat-guard.js +503 -0
  64. package/dist/mcp/explore-repeat-guard.js.map +1 -0
  65. package/dist/mcp/explore-session-state.d.ts +20 -0
  66. package/dist/mcp/explore-session-state.d.ts.map +1 -1
  67. package/dist/mcp/explore-session-state.js +31 -0
  68. package/dist/mcp/explore-session-state.js.map +1 -1
  69. package/dist/mcp/proxy.d.ts.map +1 -1
  70. package/dist/mcp/proxy.js +15 -4
  71. package/dist/mcp/proxy.js.map +1 -1
  72. package/dist/mcp/query-pool.d.ts.map +1 -1
  73. package/dist/mcp/query-pool.js +10 -13
  74. package/dist/mcp/query-pool.js.map +1 -1
  75. package/dist/mcp/server-instructions.d.ts +5 -7
  76. package/dist/mcp/server-instructions.d.ts.map +1 -1
  77. package/dist/mcp/server-instructions.js +36 -101
  78. package/dist/mcp/server-instructions.js.map +1 -1
  79. package/dist/mcp/tools.d.ts +33 -2
  80. package/dist/mcp/tools.d.ts.map +1 -1
  81. package/dist/mcp/tools.js +1403 -266
  82. package/dist/mcp/tools.js.map +1 -1
  83. package/dist/resolution/callback-synthesizer.d.ts.map +1 -1
  84. package/dist/resolution/callback-synthesizer.js +166 -0
  85. package/dist/resolution/callback-synthesizer.js.map +1 -1
  86. package/dist/search/query-utils.d.ts +47 -7
  87. package/dist/search/query-utils.d.ts.map +1 -1
  88. package/dist/search/query-utils.js +335 -109
  89. package/dist/search/query-utils.js.map +1 -1
  90. package/dist/spec/build/scan.js +1 -1
  91. package/dist/spec/build/scan.js.map +1 -1
  92. package/dist/spec/build/scope-resolver.d.ts +24 -5
  93. package/dist/spec/build/scope-resolver.d.ts.map +1 -1
  94. package/dist/spec/build/scope-resolver.js +76 -10
  95. package/dist/spec/build/scope-resolver.js.map +1 -1
  96. package/dist/spec/config.d.ts +8 -0
  97. package/dist/spec/config.d.ts.map +1 -1
  98. package/dist/spec/config.js +3 -0
  99. package/dist/spec/config.js.map +1 -1
  100. package/dist/spec/evolve/pipeline.d.ts.map +1 -1
  101. package/dist/spec/evolve/pipeline.js +2 -1
  102. package/dist/spec/evolve/pipeline.js.map +1 -1
  103. package/dist/spec/git/commits.d.ts +8 -3
  104. package/dist/spec/git/commits.d.ts.map +1 -1
  105. package/dist/spec/git/commits.js +12 -11
  106. package/dist/spec/git/commits.js.map +1 -1
  107. package/dist/spec/mine/addon/adapter.d.ts +45 -0
  108. package/dist/spec/mine/addon/adapter.d.ts.map +1 -0
  109. package/dist/spec/mine/addon/adapter.js +118 -0
  110. package/dist/spec/mine/addon/adapter.js.map +1 -0
  111. package/dist/spec/mine/addon/render.d.ts +20 -0
  112. package/dist/spec/mine/addon/render.d.ts.map +1 -0
  113. package/dist/spec/mine/addon/render.js +41 -0
  114. package/dist/spec/mine/addon/render.js.map +1 -0
  115. package/dist/spec/mine/addon/types.d.ts +70 -0
  116. package/dist/spec/mine/addon/types.d.ts.map +1 -0
  117. package/dist/spec/mine/addon/types.js +14 -0
  118. package/dist/spec/mine/addon/types.js.map +1 -0
  119. package/dist/spec/mine/generator.d.ts +5 -1
  120. package/dist/spec/mine/generator.d.ts.map +1 -1
  121. package/dist/spec/mine/generator.js +69 -7
  122. package/dist/spec/mine/generator.js.map +1 -1
  123. package/dist/spec/mine/pipeline.d.ts.map +1 -1
  124. package/dist/spec/mine/pipeline.js +5 -1
  125. package/dist/spec/mine/pipeline.js.map +1 -1
  126. package/dist/spec/mine/scanner.d.ts +1 -0
  127. package/dist/spec/mine/scanner.d.ts.map +1 -1
  128. package/dist/spec/mine/scanner.js +1 -1
  129. package/dist/spec/mine/scanner.js.map +1 -1
  130. package/dist/spec/types.d.ts +1 -1
  131. package/dist/spec/types.d.ts.map +1 -1
  132. package/package.json +6 -6
@@ -189,49 +189,73 @@ function collectKeyChannels(graph, stateVars, componentIds) {
189
189
  participants: [...g.participants],
190
190
  }));
191
191
  }
192
+ function isObservedClassOrStruct(n) {
193
+ if (n.kind !== 'class' && n.kind !== 'struct')
194
+ return false;
195
+ const { kinds } = (0, migrate_semantics_1.decodeDecorators)(n.decorators);
196
+ return kinds.some((k) => migrate_semantics_1.OBSERVATION_DECORATORS.has(k));
197
+ }
198
+ function isObservedRefEdge(e) {
199
+ return e.kind === 'references' && e.metadata?.via === 'observed-ref';
200
+ }
201
+ function observedClassProperties(graph, clsId) {
202
+ const properties = [];
203
+ for (const e of graph.getOutgoingEdges(clsId)) {
204
+ if (e.kind !== 'contains')
205
+ continue;
206
+ const field = graph.getNode(e.target);
207
+ if (!field || (field.kind !== 'property' && field.kind !== 'field'))
208
+ continue;
209
+ const { kinds: fk } = (0, migrate_semantics_1.decodeDecorators)(field.decorators);
210
+ const traceDecorator = fk.find((k) => migrate_semantics_1.TRACE_DECORATORS.has(k));
211
+ properties.push({
212
+ name: field.name,
213
+ type: field.signature,
214
+ hasTrace: !!traceDecorator,
215
+ ...(traceDecorator ? { traceDecorator } : {}),
216
+ });
217
+ }
218
+ return properties;
219
+ }
220
+ /**
221
+ * Collect @Observed/@ObservedV2 classes for a migrate scope without scanning
222
+ * the whole graph (spec 0013): reverse from stateVar observed-ref edges, plus
223
+ * Observed types that live in scoped component files.
224
+ */
192
225
  function collectObserved(graph, scopeNodes, stateVarIds) {
193
226
  const fileSet = new Set(scopeNodes.map((n) => normalizePath(n.filePath)));
194
- const candidates = [
195
- ...graph.getNodesByKind('class'),
196
- ...graph.getNodesByKind('struct'),
197
- ].filter((n) => {
198
- const { kinds } = (0, migrate_semantics_1.decodeDecorators)(n.decorators);
199
- return kinds.some((k) => migrate_semantics_1.OBSERVATION_DECORATORS.has(k));
200
- });
201
- const out = [];
202
- for (const cls of candidates) {
203
- // Include if in scoped files OR referenced by a scoped state var
204
- const refs = graph
205
- .getIncomingEdges(cls.id)
206
- .filter((e) => e.metadata?.via === 'observed-ref' || e.metadata?.synthesizedBy === 'arkui-migrate');
207
- const referencedBy = refs.map((e) => e.source).filter((id) => stateVarIds.has(id));
208
- const inScopeFile = fileSet.has(normalizePath(cls.filePath));
209
- if (!inScopeFile && referencedBy.length === 0)
210
- continue;
211
- const { kinds } = (0, migrate_semantics_1.decodeDecorators)(cls.decorators);
212
- const observationDecorator = kinds.includes('ObservedV2') ? 'ObservedV2' : 'Observed';
213
- const properties = [];
214
- for (const e of graph.getOutgoingEdges(cls.id)) {
215
- if (e.kind !== 'contains')
227
+ const referencedByMap = new Map();
228
+ const classes = new Map();
229
+ for (const stateVarId of stateVarIds) {
230
+ for (const e of graph.getOutgoingEdges(stateVarId)) {
231
+ if (!isObservedRefEdge(e))
216
232
  continue;
217
- const field = graph.getNode(e.target);
218
- if (!field || (field.kind !== 'property' && field.kind !== 'field'))
233
+ const cls = graph.getNode(e.target);
234
+ if (!cls || !isObservedClassOrStruct(cls))
219
235
  continue;
220
- const { kinds: fk } = (0, migrate_semantics_1.decodeDecorators)(field.decorators);
221
- const traceDecorator = fk.find((k) => migrate_semantics_1.TRACE_DECORATORS.has(k));
222
- properties.push({
223
- name: field.name,
224
- type: field.signature,
225
- hasTrace: !!traceDecorator,
226
- ...(traceDecorator ? { traceDecorator } : {}),
227
- });
236
+ classes.set(cls.id, cls);
237
+ const refs = referencedByMap.get(cls.id) ?? new Set();
238
+ refs.add(stateVarId);
239
+ referencedByMap.set(cls.id, refs);
228
240
  }
241
+ }
242
+ for (const filePath of fileSet) {
243
+ for (const n of graph.getNodesInFile(filePath)) {
244
+ if (!isObservedClassOrStruct(n))
245
+ continue;
246
+ classes.set(n.id, n);
247
+ }
248
+ }
249
+ const out = [];
250
+ for (const cls of classes.values()) {
251
+ const { kinds } = (0, migrate_semantics_1.decodeDecorators)(cls.decorators);
252
+ const observationDecorator = kinds.includes('ObservedV2') ? 'ObservedV2' : 'Observed';
229
253
  out.push({
230
254
  id: cls.id,
231
255
  name: cls.name,
232
256
  observationDecorator,
233
- properties,
234
- referencedBy,
257
+ properties: observedClassProperties(graph, cls.id),
258
+ referencedBy: [...(referencedByMap.get(cls.id) ?? [])],
235
259
  });
236
260
  }
237
261
  return out;
@@ -1 +1 @@
1
- {"version":3,"file":"migrate-snapshot.js","sourceRoot":"","sources":["../../src/arkui/migrate-snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrate-snapshot.js","sourceRoot":"","sources":["../../src/arkui/migrate-snapshot.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * HomeGraph addon command group (`homegraph addon …`).
3
+ *
4
+ * Top-level (sibling of `spec`) because the addon store is repository-level
5
+ * generic infrastructure, not spec-feature state: the registry lives in
6
+ * `.homegraph/addons.json`, separate from the spec feature's configs.json.
7
+ *
8
+ * Repo resolution walks up to the git work-tree root (`git rev-parse
9
+ * --show-toplevel`), falling back to the given path itself when not inside
10
+ * a git repo — the same "fall back to start path" behavior as
11
+ * `resolveSpecProjectPath`.
12
+ *
13
+ * @module bin/addon-commands
14
+ */
15
+ import { Command } from 'commander';
16
+ /** Minimal logger surface — injected by the CLI so homegraph.ts owns styling. */
17
+ export interface AddonLog {
18
+ success(message: string): void;
19
+ info(message: string): void;
20
+ warn(message: string): void;
21
+ error(message: string): void;
22
+ }
23
+ /**
24
+ * Register the `addon` command group on the top-level program.
25
+ */
26
+ export declare function registerAddonCommands(program: Command, log: AddonLog): void;
27
+ //# sourceMappingURL=addon-commands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addon-commands.d.ts","sourceRoot":"","sources":["../../src/bin/addon-commands.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,iFAAiF;AACjF,MAAM,WAAW,QAAQ;IACvB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAmCD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CA8L3E"}
@@ -0,0 +1,254 @@
1
+ "use strict";
2
+ /**
3
+ * HomeGraph addon command group (`homegraph addon …`).
4
+ *
5
+ * Top-level (sibling of `spec`) because the addon store is repository-level
6
+ * generic infrastructure, not spec-feature state: the registry lives in
7
+ * `.homegraph/addons.json`, separate from the spec feature's configs.json.
8
+ *
9
+ * Repo resolution walks up to the git work-tree root (`git rev-parse
10
+ * --show-toplevel`), falling back to the given path itself when not inside
11
+ * a git repo — the same "fall back to start path" behavior as
12
+ * `resolveSpecProjectPath`.
13
+ *
14
+ * @module bin/addon-commands
15
+ */
16
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
17
+ if (k2 === undefined) k2 = k;
18
+ var desc = Object.getOwnPropertyDescriptor(m, k);
19
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
20
+ desc = { enumerable: true, get: function() { return m[k]; } };
21
+ }
22
+ Object.defineProperty(o, k2, desc);
23
+ }) : (function(o, m, k, k2) {
24
+ if (k2 === undefined) k2 = k;
25
+ o[k2] = m[k];
26
+ }));
27
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
28
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
29
+ }) : function(o, v) {
30
+ o["default"] = v;
31
+ });
32
+ var __importStar = (this && this.__importStar) || (function () {
33
+ var ownKeys = function(o) {
34
+ ownKeys = Object.getOwnPropertyNames || function (o) {
35
+ var ar = [];
36
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
37
+ return ar;
38
+ };
39
+ return ownKeys(o);
40
+ };
41
+ return function (mod) {
42
+ if (mod && mod.__esModule) return mod;
43
+ var result = {};
44
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
45
+ __setModuleDefault(result, mod);
46
+ return result;
47
+ };
48
+ })();
49
+ Object.defineProperty(exports, "__esModule", { value: true });
50
+ exports.registerAddonCommands = registerAddonCommands;
51
+ const path = __importStar(require("path"));
52
+ const child_process_1 = require("child_process");
53
+ const dynamic_import_1 = require("../addons/dynamic-import");
54
+ /** npm package name validation (scoped or unscoped, lower-case per npm rules). */
55
+ const PKG_NAME_RE = /^(@[a-z0-9-~][a-z0-9-._~]*\/)?[a-z0-9-~][a-z0-9-._~]*$/;
56
+ /**
57
+ * Resolve the repository root for addon operations: the git work-tree root
58
+ * containing `startPath`, or `startPath` itself when not inside a repo.
59
+ */
60
+ function resolveAddonRoot(startPath) {
61
+ const resolved = path.resolve(startPath);
62
+ try {
63
+ const topLevel = (0, child_process_1.execFileSync)('git', ['rev-parse', '--show-toplevel'], {
64
+ cwd: resolved,
65
+ encoding: 'utf8',
66
+ stdio: ['ignore', 'pipe', 'ignore'],
67
+ }).trim();
68
+ if (topLevel)
69
+ return topLevel;
70
+ }
71
+ catch {
72
+ // Not a git work tree — use the path as-is.
73
+ }
74
+ return resolved;
75
+ }
76
+ async function confirm(_log, message, yes) {
77
+ if (yes || !process.stdin.isTTY)
78
+ return true;
79
+ const clack = (await (0, dynamic_import_1.importESM)('@clack/prompts'));
80
+ const answer = await clack.confirm({ message });
81
+ return answer === true;
82
+ }
83
+ /**
84
+ * Register the `addon` command group on the top-level program.
85
+ */
86
+ function registerAddonCommands(program, log) {
87
+ const addonCommand = program
88
+ .command('addon')
89
+ .description('Manage HomeGraph addons (plugins that enrich spec-mine prompts)');
90
+ addonCommand
91
+ .command('init <name>')
92
+ .description('Scaffold a new addon package')
93
+ .option('--path <dir>', 'Directory to create the addon in', '.')
94
+ .option('--lang <js|ts>', 'Scaffold language (js is published as-is; ts builds to dist/)', 'js')
95
+ .action(async (name, options) => {
96
+ try {
97
+ if (!PKG_NAME_RE.test(name)) {
98
+ log.error(`Invalid addon package name: "${name}"`);
99
+ process.exit(1);
100
+ }
101
+ const lang = options.lang === 'ts' ? 'ts' : 'js';
102
+ const parentDir = path.resolve(options.path || '.');
103
+ const { createAddonScaffold } = await Promise.resolve().then(() => __importStar(require('../addons/init-template')));
104
+ const created = createAddonScaffold(name, parentDir, lang);
105
+ log.success(`Addon scaffold created at ${path.join(parentDir, name)}`);
106
+ log.info(`Created: ${created.map((f) => path.basename(f)).join(', ')}`);
107
+ if (lang === 'ts') {
108
+ log.info('TypeScript scaffold: cd into it, run "npm i -D homegraph" then "npm run build".');
109
+ }
110
+ log.info('Implement enrich() (see examples/jira.mjs), then install with:');
111
+ log.info(` homegraph addon install ${path.join(parentDir, name)}`);
112
+ }
113
+ catch (err) {
114
+ log.error(`Scaffold failed: ${err instanceof Error ? err.message : String(err)}`);
115
+ process.exit(1);
116
+ }
117
+ });
118
+ addonCommand
119
+ .command('install <pkg>')
120
+ .description('Install an addon package and register it for runtime loading')
121
+ .option('-p, --path <path>', 'Repository root')
122
+ .option('-y, --yes', 'Skip the confirmation prompt')
123
+ .option('--no-enable', 'Install but do not enable (enable later with "addon enable")')
124
+ .action(async (pkg, options) => {
125
+ try {
126
+ const repoRoot = resolveAddonRoot(options.path || process.cwd());
127
+ const { resolvePackageName, installAddon } = await Promise.resolve().then(() => __importStar(require('../addons/manager')));
128
+ const { readRegistry } = await Promise.resolve().then(() => __importStar(require('../addons/registry')));
129
+ const preResolvedName = resolvePackageName(pkg);
130
+ const isUpdate = preResolvedName
131
+ ? readRegistry(repoRoot).addons.some((e) => e.name === preResolvedName)
132
+ : false;
133
+ if (!isUpdate) {
134
+ const ok = await confirm(log, `Install addon "${pkg}" and register it for this repository?`, !!options.yes);
135
+ if (!ok)
136
+ process.exit(1);
137
+ }
138
+ const result = await installAddon(repoRoot, pkg, {
139
+ enable: options.enable !== false,
140
+ name: preResolvedName ?? undefined,
141
+ });
142
+ log.success(`${isUpdate ? 'Updated' : 'Installed'} ${result.name}@${result.version}` +
143
+ ` (${options.enable !== false ? 'enabled' : 'disabled'})`);
144
+ log.info(`Registry: .homegraph/addons.json — loaded by the next "spec mine" run.`);
145
+ }
146
+ catch (err) {
147
+ log.error(`Install failed: ${err instanceof Error ? err.message : String(err)}`);
148
+ process.exit(1);
149
+ }
150
+ });
151
+ addonCommand
152
+ .command('list')
153
+ .description('List registered addons')
154
+ .option('-p, --path <path>', 'Repository root')
155
+ .action(async (options) => {
156
+ const repoRoot = resolveAddonRoot(options.path || process.cwd());
157
+ const { listAddons } = await Promise.resolve().then(() => __importStar(require('../addons/manager')));
158
+ const addons = listAddons(repoRoot);
159
+ if (addons.length === 0) {
160
+ log.info('No addons registered. Install one with: homegraph addon install <pkg>');
161
+ return;
162
+ }
163
+ log.info('NAME VERSION ENABLED STATUS');
164
+ for (const addon of addons) {
165
+ log.info(`${addon.name.padEnd(30)} ${addon.version.padEnd(8)} ` +
166
+ `${(addon.enabled ? 'yes' : 'no').padEnd(5)} ${addon.installed ? 'installed' : 'missing'}`);
167
+ }
168
+ });
169
+ addonCommand
170
+ .command('remove <name>')
171
+ .description('Unregister an addon (use --purge to also delete its files)')
172
+ .option('-p, --path <path>', 'Repository root')
173
+ .option('-y, --yes', 'Skip the confirmation prompt')
174
+ .option('--purge', 'Also delete the installed files')
175
+ .action(async (name, options) => {
176
+ try {
177
+ const repoRoot = resolveAddonRoot(options.path || process.cwd());
178
+ const { readRegistry } = await Promise.resolve().then(() => __importStar(require('../addons/registry')));
179
+ const { removeAddon } = await Promise.resolve().then(() => __importStar(require('../addons/manager')));
180
+ const entry = readRegistry(repoRoot).addons.find((e) => e.name === name);
181
+ if (!entry) {
182
+ log.error(`Addon not registered: ${name}`);
183
+ log.info('Run "homegraph addon list" to see registered addons.');
184
+ process.exit(1);
185
+ }
186
+ if (entry.enabled) {
187
+ const ok = await confirm(log, `Remove enabled addon ${name}@${entry.version}?`, !!options.yes);
188
+ if (!ok)
189
+ process.exit(1);
190
+ }
191
+ if (removeAddon(repoRoot, name, { purge: !!options.purge })) {
192
+ log.success(`Removed ${name}${options.purge ? ' (files purged)' : ''}`);
193
+ }
194
+ }
195
+ catch (err) {
196
+ log.error(`Remove failed: ${err instanceof Error ? err.message : String(err)}`);
197
+ process.exit(1);
198
+ }
199
+ });
200
+ addonCommand
201
+ .command('enable <name>')
202
+ .description('Enable a registered addon')
203
+ .option('-p, --path <path>', 'Repository root')
204
+ .action(async (name, options) => {
205
+ const repoRoot = resolveAddonRoot(options.path || process.cwd());
206
+ const { setEntryEnabled } = await Promise.resolve().then(() => __importStar(require('../addons/registry')));
207
+ if (!setEntryEnabled(repoRoot, name, true)) {
208
+ log.error(`Addon not registered: ${name}`);
209
+ process.exit(1);
210
+ }
211
+ log.success(`Enabled ${name}`);
212
+ });
213
+ addonCommand
214
+ .command('disable <name>')
215
+ .description('Disable a registered addon (keep it installed)')
216
+ .option('-p, --path <path>', 'Repository root')
217
+ .action(async (name, options) => {
218
+ const repoRoot = resolveAddonRoot(options.path || process.cwd());
219
+ const { setEntryEnabled } = await Promise.resolve().then(() => __importStar(require('../addons/registry')));
220
+ if (!setEntryEnabled(repoRoot, name, false)) {
221
+ log.error(`Addon not registered: ${name}`);
222
+ process.exit(1);
223
+ }
224
+ log.success(`Disabled ${name}`);
225
+ });
226
+ addonCommand
227
+ .command('update [name]')
228
+ .description('Update registered addon(s) — default: latest within the recorded range; --latest: newest published version')
229
+ .option('-p, --path <path>', 'Repository root')
230
+ .option('-l, --latest', 'Update to the newest published version (registry packages only)')
231
+ .action(async (name, options) => {
232
+ try {
233
+ const repoRoot = resolveAddonRoot(options.path || process.cwd());
234
+ const { updateAddon } = await Promise.resolve().then(() => __importStar(require('../addons/manager')));
235
+ const results = await updateAddon(repoRoot, name, { latest: !!options.latest });
236
+ const changed = results.filter((r) => r.from !== r.to);
237
+ const unchanged = results.filter((r) => r.from === r.to);
238
+ if (changed.length > 0) {
239
+ log.success(`Updated: ${changed.map((r) => `${r.name}@${r.from} -> ${r.to}`).join(', ')}`);
240
+ }
241
+ if (unchanged.length > 0) {
242
+ log.info(`Already up to date: ${unchanged.map((r) => `${r.name}@${r.to}`).join(', ')}`);
243
+ }
244
+ if (changed.length === 0 && unchanged.length === 0) {
245
+ log.info(name ? `No update performed for ${name}` : 'No registered addons to update.');
246
+ }
247
+ }
248
+ catch (err) {
249
+ log.error(`Update failed: ${err instanceof Error ? err.message : String(err)}`);
250
+ process.exit(1);
251
+ }
252
+ });
253
+ }
254
+ //# sourceMappingURL=addon-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addon-commands.js","sourceRoot":"","sources":["../../src/bin/addon-commands.ts"],"names":[],"mappings":"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"}
@@ -71,6 +71,7 @@ const fatal_handler_1 = require("./fatal-handler");
71
71
  const wasm_runtime_flags_1 = require("../extraction/wasm-runtime-flags");
72
72
  const command_supervision_1 = require("./command-supervision");
73
73
  const extraction_version_1 = require("../extraction/extraction-version");
74
+ const addon_commands_1 = require("./addon-commands");
74
75
  // Lazy-load heavy modules (HomeGraph, runInstaller) to keep CLI startup fast.
75
76
  async function loadHomeGraph() {
76
77
  try {
@@ -2289,7 +2290,7 @@ function main() {
2289
2290
  for (const r of results) {
2290
2291
  console.log(chalk.bold(r.title));
2291
2292
  for (const commit of r.commits) {
2292
- console.log(` ${chalk.yellow(commit.hash.slice(0, 7))} ${commit.message}`);
2293
+ console.log(` ${chalk.yellow(commit.hash.slice(0, 7))} ${commit.message.split('\n', 1)[0] ?? ''}`);
2293
2294
  if (includeFragments && commit.fragments && commit.fragments.length > 0) {
2294
2295
  for (const fragment of commit.fragments.slice(0, profile.maxFragments || 3)) {
2295
2296
  console.log(chalk.dim(` ${fragment.file_path}:${fragment.start_line}-${fragment.end_line} [${fragment.change_type}]`));
@@ -2959,6 +2960,10 @@ function main() {
2959
2960
  catch { /* best effort */ }
2960
2961
  }
2961
2962
  });
2963
+ // =============================================================================
2964
+ // Addon commands (HomeGraph addon management)
2965
+ // =============================================================================
2966
+ (0, addon_commands_1.registerAddonCommands)(program, { success, info, warn, error });
2962
2967
  /**
2963
2968
  * homegraph index-api <input> [version]
2964
2969
  * Build a standalone OHOS API database from command-line-tools SDK.