sparkecoder 0.1.30 → 0.1.31

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 (85) hide show
  1. package/dist/agent/index.js.map +1 -1
  2. package/dist/cli.js +23 -16
  3. package/dist/cli.js.map +1 -1
  4. package/dist/db/index.d.ts +12 -0
  5. package/dist/db/index.js +6 -0
  6. package/dist/db/index.js.map +1 -1
  7. package/dist/index.js.map +1 -1
  8. package/dist/server/index.js.map +1 -1
  9. package/dist/tools/index.js.map +1 -1
  10. package/package.json +1 -1
  11. package/web/.next/BUILD_ID +1 -1
  12. package/web/.next/standalone/web/.next/BUILD_ID +1 -1
  13. package/web/.next/standalone/web/.next/build-manifest.json +2 -2
  14. package/web/.next/standalone/web/.next/prerender-manifest.json +3 -3
  15. package/web/.next/standalone/web/.next/server/app/_global-error.html +2 -2
  16. package/web/.next/standalone/web/.next/server/app/_global-error.rsc +1 -1
  17. package/web/.next/standalone/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  18. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  19. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  20. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  21. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  22. package/web/.next/standalone/web/.next/server/app/_not-found.html +1 -1
  23. package/web/.next/standalone/web/.next/server/app/_not-found.rsc +1 -1
  24. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  25. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  26. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  27. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  28. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  29. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  30. package/web/.next/standalone/web/.next/server/app/docs/installation.html +2 -2
  31. package/web/.next/standalone/web/.next/server/app/docs/installation.rsc +1 -1
  32. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_full.segment.rsc +1 -1
  33. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_head.segment.rsc +1 -1
  34. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_index.segment.rsc +1 -1
  35. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_tree.segment.rsc +1 -1
  36. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation/__PAGE__.segment.rsc +1 -1
  37. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation.segment.rsc +1 -1
  38. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs.segment.rsc +1 -1
  39. package/web/.next/standalone/web/.next/server/app/docs/skills.html +2 -2
  40. package/web/.next/standalone/web/.next/server/app/docs/skills.rsc +1 -1
  41. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_full.segment.rsc +1 -1
  42. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_head.segment.rsc +1 -1
  43. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_index.segment.rsc +1 -1
  44. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_tree.segment.rsc +1 -1
  45. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills/__PAGE__.segment.rsc +1 -1
  46. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills.segment.rsc +1 -1
  47. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs.segment.rsc +1 -1
  48. package/web/.next/standalone/web/.next/server/app/docs/tools.html +2 -2
  49. package/web/.next/standalone/web/.next/server/app/docs/tools.rsc +1 -1
  50. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_full.segment.rsc +1 -1
  51. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_head.segment.rsc +1 -1
  52. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_index.segment.rsc +1 -1
  53. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_tree.segment.rsc +1 -1
  54. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools/__PAGE__.segment.rsc +1 -1
  55. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools.segment.rsc +1 -1
  56. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs.segment.rsc +1 -1
  57. package/web/.next/standalone/web/.next/server/app/docs.html +2 -2
  58. package/web/.next/standalone/web/.next/server/app/docs.rsc +1 -1
  59. package/web/.next/standalone/web/.next/server/app/docs.segments/_full.segment.rsc +1 -1
  60. package/web/.next/standalone/web/.next/server/app/docs.segments/_head.segment.rsc +1 -1
  61. package/web/.next/standalone/web/.next/server/app/docs.segments/_index.segment.rsc +1 -1
  62. package/web/.next/standalone/web/.next/server/app/docs.segments/_tree.segment.rsc +1 -1
  63. package/web/.next/standalone/web/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
  64. package/web/.next/standalone/web/.next/server/app/docs.segments/docs.segment.rsc +1 -1
  65. package/web/.next/standalone/web/.next/server/app/index.html +1 -1
  66. package/web/.next/standalone/web/.next/server/app/index.rsc +1 -1
  67. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p/__PAGE__.segment.rsc +1 -1
  68. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p.segment.rsc +1 -1
  69. package/web/.next/standalone/web/.next/server/app/index.segments/_full.segment.rsc +1 -1
  70. package/web/.next/standalone/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
  71. package/web/.next/standalone/web/.next/server/app/index.segments/_index.segment.rsc +1 -1
  72. package/web/.next/standalone/web/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  73. package/web/.next/standalone/web/.next/server/pages/404.html +1 -1
  74. package/web/.next/standalone/web/.next/server/pages/500.html +2 -2
  75. package/web/.next/standalone/web/.next/server/server-reference-manifest.js +1 -1
  76. package/web/.next/standalone/web/.next/server/server-reference-manifest.json +1 -1
  77. /package/web/.next/standalone/web/.next/static/{AWkAhe384Z20h3cIEUXi6 → FSNZXTnxdYh33x-oK2uMY}/_buildManifest.js +0 -0
  78. /package/web/.next/standalone/web/.next/static/{AWkAhe384Z20h3cIEUXi6 → FSNZXTnxdYh33x-oK2uMY}/_clientMiddlewareManifest.json +0 -0
  79. /package/web/.next/standalone/web/.next/static/{AWkAhe384Z20h3cIEUXi6 → FSNZXTnxdYh33x-oK2uMY}/_ssgManifest.js +0 -0
  80. /package/web/.next/standalone/web/.next/static/static/{AWkAhe384Z20h3cIEUXi6 → FSNZXTnxdYh33x-oK2uMY}/_buildManifest.js +0 -0
  81. /package/web/.next/standalone/web/.next/static/static/{AWkAhe384Z20h3cIEUXi6 → FSNZXTnxdYh33x-oK2uMY}/_clientMiddlewareManifest.json +0 -0
  82. /package/web/.next/standalone/web/.next/static/static/{AWkAhe384Z20h3cIEUXi6 → FSNZXTnxdYh33x-oK2uMY}/_ssgManifest.js +0 -0
  83. /package/web/.next/static/{AWkAhe384Z20h3cIEUXi6 → FSNZXTnxdYh33x-oK2uMY}/_buildManifest.js +0 -0
  84. /package/web/.next/static/{AWkAhe384Z20h3cIEUXi6 → FSNZXTnxdYh33x-oK2uMY}/_clientMiddlewareManifest.json +0 -0
  85. /package/web/.next/static/{AWkAhe384Z20h3cIEUXi6 → FSNZXTnxdYh33x-oK2uMY}/_ssgManifest.js +0 -0
package/dist/cli.js CHANGED
@@ -765,6 +765,12 @@ var remoteIndexedChunkQueries = {
765
765
  upsert(_db, data) {
766
766
  return api("/indexed-chunks", { method: "POST", body: data });
767
767
  },
768
+ batchUpsert(_db, chunks) {
769
+ return api("/indexed-chunks/batch", {
770
+ method: "POST",
771
+ body: { chunks }
772
+ });
773
+ },
768
774
  getById(_db, id) {
769
775
  return api(`/indexed-chunks/${id}`).catch(() => void 0);
770
776
  },
@@ -4650,23 +4656,24 @@ async function indexRepository(options) {
4650
4656
  const embedTime = Date.now() - batchStartTime;
4651
4657
  console.log(`[indexer] Batch ${batchNum}: embed completed in ${embedTime}ms - processed: ${result.processedCount}, failed: ${result.failedCount}`);
4652
4658
  failedChunks += result.failedCount;
4653
- console.log(`[indexer] Batch ${batchNum}: recording ${batch.length} chunks to DB...`);
4654
- const dbStartTime = Date.now();
4655
- for (const chunk of batch) {
4656
- if (!result.errors?.find((e) => e.id === chunk.id)) {
4657
- await indexedChunkQueries.upsert(db, {
4658
- id: chunk.id,
4659
- contentHash: chunk.contentHash,
4660
- filePath: chunk.metadata.filePath,
4661
- repoNamespace: namespace,
4662
- startLine: chunk.metadata.startLine,
4663
- endLine: chunk.metadata.endLine,
4664
- language: chunk.metadata.language
4665
- });
4666
- }
4659
+ const successfulChunks = batch.filter(
4660
+ (chunk) => !result.errors?.find((e) => e.id === chunk.id)
4661
+ );
4662
+ if (successfulChunks.length > 0) {
4663
+ console.log(`[indexer] Batch ${batchNum}: recording ${successfulChunks.length} chunks to DB...`);
4664
+ const dbStartTime = Date.now();
4665
+ await indexedChunkQueries.batchUpsert(db, successfulChunks.map((chunk) => ({
4666
+ id: chunk.id,
4667
+ contentHash: chunk.contentHash,
4668
+ filePath: chunk.metadata.filePath,
4669
+ repoNamespace: namespace,
4670
+ startLine: chunk.metadata.startLine,
4671
+ endLine: chunk.metadata.endLine,
4672
+ language: chunk.metadata.language
4673
+ })));
4674
+ const dbTime = Date.now() - dbStartTime;
4675
+ console.log(`[indexer] Batch ${batchNum}: DB batch upsert completed in ${dbTime}ms`);
4667
4676
  }
4668
- const dbTime = Date.now() - dbStartTime;
4669
- console.log(`[indexer] Batch ${batchNum}: DB upserts completed in ${dbTime}ms`);
4670
4677
  if (result.errors) {
4671
4678
  for (const err of result.errors) {
4672
4679
  const chunk = batch.find((c) => c.id === err.id);