docdex 0.2.46 → 0.2.47

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/CHANGELOG.md CHANGED
@@ -1,5 +1,8 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.2.47
4
+ - Bump release metadata to 0.2.47.
5
+
3
6
  ## 0.2.46
4
7
  - Bump release metadata to 0.2.46.
5
8
 
package/assets/agents.md CHANGED
@@ -1,4 +1,4 @@
1
- ---- START OF DOCDEX INFO V0.2.46 ----
1
+ ---- START OF DOCDEX INFO V0.2.47 ----
2
2
  Docdex URL: http://127.0.0.1:28491
3
3
  Use this base URL for Docdex HTTP endpoints.
4
4
  Health check endpoint: `GET /healthz` (not `/v1/health`).
@@ -2475,8 +2475,27 @@ function registerStartup({ binaryPath, port, repoRoot, logger, distBaseDir, star
2475
2475
  return { ok: false, reason: "unsupported_platform" };
2476
2476
  }
2477
2477
 
2478
- async function startDaemonWithHealthCheck({ binaryPath, port, host, logger, distBaseDir, startNow = true }) {
2479
- const startup = registerStartup({
2478
+ async function startDaemonWithHealthCheck({
2479
+ binaryPath,
2480
+ port,
2481
+ host,
2482
+ logger,
2483
+ distBaseDir,
2484
+ startNow = true,
2485
+ deps
2486
+ }) {
2487
+ const helpers = {
2488
+ registerStartup,
2489
+ waitForDaemonHealthy,
2490
+ stopDaemonService,
2491
+ stopDaemonFromLock,
2492
+ stopDaemonByName,
2493
+ clearDaemonLocks
2494
+ };
2495
+ if (deps && typeof deps === "object") {
2496
+ Object.assign(helpers, deps);
2497
+ }
2498
+ const startup = helpers.registerStartup({
2480
2499
  binaryPath,
2481
2500
  port,
2482
2501
  repoRoot: daemonRootPath(),
@@ -2491,16 +2510,18 @@ async function startDaemonWithHealthCheck({ binaryPath, port, host, logger, dist
2491
2510
  if (!startNow) {
2492
2511
  return { ok: true, reason: "registered" };
2493
2512
  }
2494
- startDaemonService({ logger });
2495
- const healthy = await waitForDaemonHealthy({ host, port });
2513
+ // `registerStartup(..., startNow: true)` already starts the service on all
2514
+ // supported platforms. Starting it again here can interrupt the first boot
2515
+ // and leave the daemon stuck behind its own lock file.
2516
+ const healthy = await helpers.waitForDaemonHealthy({ host, port });
2496
2517
  if (healthy) {
2497
2518
  return { ok: true, reason: "healthy" };
2498
2519
  }
2499
2520
  logger?.warn?.(`[docdex] daemon failed health check on ${host}:${port}`);
2500
- stopDaemonService({ logger });
2501
- stopDaemonFromLock({ logger });
2502
- stopDaemonByName({ logger });
2503
- clearDaemonLocks();
2521
+ helpers.stopDaemonService({ logger });
2522
+ helpers.stopDaemonFromLock({ logger });
2523
+ helpers.stopDaemonByName({ logger });
2524
+ helpers.clearDaemonLocks();
2504
2525
  return { ok: false, reason: "health_failed" };
2505
2526
  }
2506
2527
 
@@ -2858,6 +2879,7 @@ module.exports = {
2858
2879
  applyAgentInstructions,
2859
2880
  buildDaemonEnv,
2860
2881
  buildLaunchAgentPlist,
2882
+ startDaemonWithHealthCheck,
2861
2883
  resolveDaemonPortState,
2862
2884
  normalizeVersion
2863
2885
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "docdex",
3
- "version": "0.2.46",
3
+ "version": "0.2.47",
4
4
  "mcpName": "io.github.bekirdag/docdex",
5
5
  "description": "Local-first documentation and code indexer with HTTP/MCP search, AST, and agent memory.",
6
6
  "bin": {