@liquidmetal-ai/raindrop 0.9.1 → 0.9.2

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 (159) hide show
  1. package/README.md +111 -85
  2. package/bundle/{chunk-ZHYJWVIA.js → chunk-33VVNTZ7.js} +2 -2
  3. package/bundle/{chunk-SP4Q3T7T.js → chunk-3EXF5SKZ.js} +1 -1
  4. package/bundle/{chunk-JXNZYHAI.js → chunk-3TJC2HRW.js} +89 -105
  5. package/bundle/{chunk-HBDFBL3W.js → chunk-44MKXST7.js} +1 -1
  6. package/bundle/{chunk-GDYEPR67.js → chunk-4RZFURCF.js} +1 -1
  7. package/bundle/{chunk-67CBWZ7Y.js → chunk-4UNXUMLE.js} +3 -3
  8. package/bundle/chunk-4VJ2X7ZI.js +48 -0
  9. package/bundle/{chunk-IMQTVYRB.js → chunk-4WGY3ATR.js} +1 -1
  10. package/bundle/{chunk-ORPX7FPP.js → chunk-5TPOE7P2.js} +1 -5
  11. package/bundle/chunk-7JFKALLH.js +133 -0
  12. package/bundle/chunk-7O6U3ZAR.js +75 -0
  13. package/bundle/chunk-AWUA3C2V.js +114 -0
  14. package/bundle/{chunk-QKHN66ZN.js → chunk-BEN3KZQU.js} +1 -1
  15. package/bundle/{chunk-JDMAG4KE.js → chunk-BPZWIRQS.js} +2 -2
  16. package/bundle/chunk-C7G6I3MQ.js +292 -0
  17. package/bundle/chunk-D23L4WLL.js +502 -0
  18. package/bundle/chunk-E2TCXKAT.js +48 -0
  19. package/bundle/{chunk-FTG32FZ4.js → chunk-E7K6Y6GO.js} +1 -1
  20. package/bundle/chunk-EBK2SJTZ.js +805 -0
  21. package/bundle/chunk-FTH4A227.js +46 -0
  22. package/bundle/chunk-HBWEGYBW.js +4486 -0
  23. package/bundle/chunk-HFEVZZHW.js +46 -0
  24. package/bundle/chunk-I5M6WZPS.js +384 -0
  25. package/bundle/chunk-J44ZDCXF.js +44 -0
  26. package/bundle/{chunk-D5TOYPUE.js → chunk-J6XV5EH5.js} +1 -1
  27. package/bundle/chunk-KE7CMLHP.js +292 -0
  28. package/bundle/{chunk-ZLRYUJ5P.js → chunk-KHYRZQSK.js} +4 -4
  29. package/bundle/chunk-KOYRAC7N.js +74 -0
  30. package/bundle/chunk-KQ3F5KG7.js +231 -0
  31. package/bundle/chunk-KSXGB4ZG.js +4539 -0
  32. package/bundle/{chunk-7ERI6IFL.js → chunk-LP3LXBGR.js} +1 -1
  33. package/bundle/chunk-MH3BACIP.js +238722 -0
  34. package/bundle/chunk-MM7BYDBJ.js +238725 -0
  35. package/bundle/chunk-MQUFNQI5.js +231 -0
  36. package/bundle/{chunk-4RVUC2XX.js → chunk-N3LTFUBJ.js} +1 -1
  37. package/bundle/chunk-NWYJJVCF.js +22452 -0
  38. package/bundle/chunk-OAMLVMOY.js +133 -0
  39. package/bundle/chunk-PBVMMANP.js +4480 -0
  40. package/bundle/chunk-PT6CYFBD.js +74 -0
  41. package/bundle/chunk-QAG6TIB7.js +12148 -0
  42. package/bundle/chunk-RSLQIAJB.js +12148 -0
  43. package/bundle/chunk-SAU2NEDC.js +147 -0
  44. package/bundle/chunk-SZ6TMVT4.js +22452 -0
  45. package/bundle/chunk-T3MAVQWW.js +292 -0
  46. package/bundle/chunk-TCGZNSBY.js +4539 -0
  47. package/bundle/chunk-TRIIBQDR.js +4480 -0
  48. package/bundle/chunk-UUTXTOE3.js +231 -0
  49. package/bundle/chunk-VMKGSIXK.js +75 -0
  50. package/bundle/chunk-XDCRA7Y2.js +805 -0
  51. package/bundle/chunk-XEMONOX2.js +384 -0
  52. package/bundle/chunk-YAPQ2CKV.js +115 -0
  53. package/bundle/chunk-YDDBYUDC.js +502 -0
  54. package/bundle/chunk-ZGLCW5YO.js +380 -0
  55. package/bundle/chunk-ZQ6BFQSX.js +44 -0
  56. package/bundle/chunk-ZZTNAQSE.js +147 -0
  57. package/bundle/commands/annotation/get.js +3 -3
  58. package/bundle/commands/annotation/list.js +3 -3
  59. package/bundle/commands/annotation/put.js +3 -3
  60. package/bundle/commands/auth/list.js +2 -2
  61. package/bundle/commands/auth/login.js +3 -3
  62. package/bundle/commands/auth/logout.js +2 -2
  63. package/bundle/commands/auth/select.js +3 -3
  64. package/bundle/commands/bucket/create-credential.js +2 -2
  65. package/bundle/commands/bucket/delete-credential.js +2 -2
  66. package/bundle/commands/bucket/get-credential.js +2 -2
  67. package/bundle/commands/bucket/list-credentials.js +2 -2
  68. package/bundle/commands/build/branch.js +9 -9
  69. package/bundle/commands/build/checkout.js +6 -5
  70. package/bundle/commands/build/clone.js +5 -5
  71. package/bundle/commands/build/delete.js +6 -5
  72. package/bundle/commands/build/deploy.js +9 -9
  73. package/bundle/commands/build/env/get.js +2 -2
  74. package/bundle/commands/build/env/set.js +2 -2
  75. package/bundle/commands/build/find.js +7 -3
  76. package/bundle/commands/build/generate.js +3 -3
  77. package/bundle/commands/build/init-workspace.js +102 -0
  78. package/bundle/commands/build/init.js +3 -3
  79. package/bundle/commands/build/list.js +5 -4
  80. package/bundle/commands/build/sandbox.js +7 -7
  81. package/bundle/commands/build/start.js +2 -2
  82. package/bundle/commands/build/status.js +8 -4
  83. package/bundle/commands/build/stop.js +2 -2
  84. package/bundle/commands/build/tools/check.js +2 -2
  85. package/bundle/commands/build/tools/fmt.js +2 -2
  86. package/bundle/commands/build/unsandbox.js +7 -7
  87. package/bundle/commands/build/upload.js +5 -5
  88. package/bundle/commands/build/validate.js +4 -4
  89. package/bundle/commands/build/workos/delete.js +4 -4
  90. package/bundle/commands/build/workos/env/attach.js +3 -3
  91. package/bundle/commands/build/workos/env/create.js +3 -3
  92. package/bundle/commands/build/workos/env/delete.js +3 -3
  93. package/bundle/commands/build/workos/env/detach.js +3 -3
  94. package/bundle/commands/build/workos/env/get.js +3 -3
  95. package/bundle/commands/build/workos/env/list.js +3 -3
  96. package/bundle/commands/build/workos/env/set.js +3 -3
  97. package/bundle/commands/build/workos/invite.js +3 -3
  98. package/bundle/commands/build/workos/setup.js +3 -3
  99. package/bundle/commands/build/workos/status.js +3 -3
  100. package/bundle/commands/dns/create.js +2 -2
  101. package/bundle/commands/dns/delete.js +4 -4
  102. package/bundle/commands/dns/get.js +4 -4
  103. package/bundle/commands/dns/list.js +3 -3
  104. package/bundle/commands/dns/records/create.js +2 -2
  105. package/bundle/commands/dns/records/delete.js +3 -3
  106. package/bundle/commands/dns/records/get.js +2 -2
  107. package/bundle/commands/dns/records/list.js +2 -2
  108. package/bundle/commands/dns/records/update.js +2 -2
  109. package/bundle/commands/logs/query.js +3 -3
  110. package/bundle/commands/logs/tail.js +3 -3
  111. package/bundle/commands/mcp/install-claude.js +2 -2
  112. package/bundle/commands/mcp/install-gemini.js +2 -2
  113. package/bundle/commands/mcp/install-goose.js +2 -2
  114. package/bundle/commands/mcp/status.js +2 -2
  115. package/bundle/commands/object/delete.js +2 -2
  116. package/bundle/commands/object/get.js +2 -2
  117. package/bundle/commands/object/list.js +2 -2
  118. package/bundle/commands/object/put.js +2 -2
  119. package/bundle/commands/query/chunk-search.js +3 -3
  120. package/bundle/commands/query/document.js +3 -3
  121. package/bundle/commands/query/events.js +2 -2
  122. package/bundle/commands/query/reindex.js +2 -2
  123. package/bundle/commands/query/search.js +3 -3
  124. package/bundle/commands/tail.js +2 -2
  125. package/bundle/index.js +1 -1
  126. package/dist/commands/build/find.d.ts.map +1 -1
  127. package/dist/commands/build/find.js +3 -0
  128. package/dist/commands/build/init-workspace.d.ts +16 -0
  129. package/dist/commands/build/init-workspace.d.ts.map +1 -0
  130. package/dist/commands/build/init-workspace.js +95 -0
  131. package/dist/commands/build/list.d.ts.map +1 -1
  132. package/dist/commands/build/list.js +3 -0
  133. package/dist/commands/build/status.d.ts.map +1 -1
  134. package/dist/commands/build/status.js +3 -0
  135. package/dist/killswitch-utils.d.ts +30 -0
  136. package/dist/killswitch-utils.d.ts.map +1 -0
  137. package/dist/killswitch-utils.js +83 -0
  138. package/oclif.manifest.json +2114 -2007
  139. package/package.json +3 -3
  140. package/templates/claude-code/debug-raindrop-app.md +12 -39
  141. package/templates/claude-code/update-raindrop-app.md +5 -6
  142. package/templates/db/node_modules/.bin/prisma +2 -2
  143. package/templates/db/node_modules/.bin/prisma-kysely +2 -2
  144. package/templates/db/node_modules/.bin/tsc +2 -2
  145. package/templates/db/node_modules/.bin/tsserver +2 -2
  146. package/templates/db/node_modules/.bin/zx +2 -2
  147. package/templates/gemini-code/debug-raindrop-app.toml +12 -39
  148. package/templates/gemini-code/update-raindrop-app.toml +5 -6
  149. package/templates/goose/debug-raindrop-app.yaml +12 -39
  150. package/templates/goose/update-raindrop-app.yaml +5 -6
  151. package/templates/workspace/.gitignore.hbs +40 -0
  152. package/templates/workspace/package.json.hbs +22 -0
  153. package/dist/commands/killswitch.d.ts +0 -20
  154. package/dist/commands/killswitch.d.ts.map +0 -1
  155. package/dist/commands/killswitch.js +0 -58
  156. package/dist/tsconfig.tsbuildinfo +0 -1
  157. package/dist/utils/mixpanel.d.ts +0 -10
  158. package/dist/utils/mixpanel.d.ts.map +0 -1
  159. package/dist/utils/mixpanel.js +0 -43
@@ -0,0 +1,133 @@
1
+ import {
2
+ init_cjs_shims,
3
+ timestampMs
4
+ } from "./chunk-MH3BACIP.js";
5
+
6
+ // src/log-helpers.ts
7
+ init_cjs_shims();
8
+ function formatLogAttribute(key, value, displayValue) {
9
+ if (key === "http.status") {
10
+ const statusCode = parseInt(value);
11
+ const statusEmoji = statusCode >= 200 && statusCode < 300 ? "\u2705" : statusCode >= 400 ? "\u274C" : "\u26A0\uFE0F";
12
+ return `${key}: ${statusEmoji} ${value}`;
13
+ } else if (key === "http.method" || key === "http.url") {
14
+ return `${key}: ${value}`;
15
+ } else if (key === "query") {
16
+ return `\u{1F5C4}\uFE0F SQL Query: ${value}`;
17
+ } else if (key === "rows_read") {
18
+ return `\u{1F4CA} Rows Read: ${value}`;
19
+ } else if (key === "rows_written") {
20
+ return `\u270D\uFE0F Rows Written: ${value}`;
21
+ } else if (key === "db") {
22
+ return `\u{1F3E6} Database: ${value}`;
23
+ } else if (key === "error") {
24
+ if (value && value !== "undefined") {
25
+ return `\u274C Error: ${value}`;
26
+ }
27
+ return null;
28
+ } else if (key === "fields" || key === "meta") {
29
+ try {
30
+ const parsed = JSON.parse(displayValue);
31
+ if (key === "meta" && parsed) {
32
+ const metrics = [];
33
+ if (parsed.duration) metrics.push(`${parsed.duration}ms`);
34
+ if (parsed.rows_read) metrics.push(`${parsed.rows_read} rows read`);
35
+ if (parsed.rows_written && parsed.rows_written > 0) metrics.push(`${parsed.rows_written} rows written`);
36
+ if (parsed.served_by_region) metrics.push(`${parsed.served_by_region}`);
37
+ if (parsed.size_after) metrics.push(`DB: ${(parsed.size_after / 1024).toFixed(1)}KB`);
38
+ if (metrics.length > 0) {
39
+ return `\u{1F4CA} ${key}: ${metrics.join(", ")}`;
40
+ } else {
41
+ return `${key}: ${JSON.stringify(parsed, (_, v) => typeof v === "bigint" ? v.toString() : v)}`;
42
+ }
43
+ } else {
44
+ return `${key}: ${JSON.stringify(parsed, (_, v) => typeof v === "bigint" ? v.toString() : v)}`;
45
+ }
46
+ } catch {
47
+ return `${key}: ${displayValue}`;
48
+ }
49
+ } else {
50
+ return `${key}: ${displayValue}`;
51
+ }
52
+ }
53
+ function displayEventAttributes(event, logger, indentLevel = " ") {
54
+ if (event.attributes && Object.keys(event.attributes).length > 0) {
55
+ Object.entries(event.attributes).forEach(([key, value]) => {
56
+ if (value !== void 0 && value !== null) {
57
+ let displayValue = value;
58
+ try {
59
+ const parsed = JSON.parse(value);
60
+ if (typeof parsed === "object" && parsed !== null) {
61
+ displayValue = JSON.stringify(parsed, (_, v) => {
62
+ if (typeof v === "bigint") {
63
+ return v.toString();
64
+ }
65
+ return v;
66
+ }, 2);
67
+ }
68
+ } catch {
69
+ }
70
+ const formattedAttribute = formatLogAttribute(key, value, displayValue);
71
+ if (formattedAttribute) {
72
+ logger.log(`${indentLevel}${formattedAttribute}`);
73
+ }
74
+ }
75
+ });
76
+ }
77
+ }
78
+ function displayTraceGroupedEvents(events, logger) {
79
+ const eventsByTrace = /* @__PURE__ */ new Map();
80
+ events.forEach((event) => {
81
+ const traceId = event.trace?.eventId || "unknown";
82
+ if (!eventsByTrace.has(traceId)) {
83
+ eventsByTrace.set(traceId, []);
84
+ }
85
+ const traceEvents = eventsByTrace.get(traceId);
86
+ if (traceEvents) {
87
+ traceEvents.push(event);
88
+ }
89
+ });
90
+ for (const [traceId, traceEvents] of eventsByTrace) {
91
+ if (traceEvents.length === 0) continue;
92
+ traceEvents.sort((a, b) => {
93
+ if (a.eventOrder !== void 0 && b.eventOrder !== void 0) {
94
+ return a.eventOrder - b.eventOrder;
95
+ }
96
+ const aTime = a.trace?.startTime ? timestampMs(a.trace.startTime) : 0;
97
+ const bTime = b.trace?.startTime ? timestampMs(b.trace.startTime) : 0;
98
+ return aTime - bTime;
99
+ });
100
+ const firstEvent = traceEvents[0];
101
+ const lastEvent = traceEvents[traceEvents.length - 1];
102
+ const startTime = firstEvent.trace?.startTime ? timestampMs(firstEvent.trace.startTime) : 0;
103
+ const endTime = lastEvent.trace?.endTime ? timestampMs(lastEvent.trace.endTime) : lastEvent.trace?.startTime ? timestampMs(lastEvent.trace.startTime) : 0;
104
+ const traceDuration = endTime > startTime ? ` (${endTime - startTime}ms total)` : "";
105
+ const timestamp = firstEvent.trace?.startTime ? new Date(timestampMs(firstEvent.trace.startTime)).toLocaleString() : "Unknown time";
106
+ logger.log(`[${timestamp}] \u{1F517} Trace: ${traceId}${traceDuration}`);
107
+ if (firstEvent.organization?.id || firstEvent.application?.name) {
108
+ const contextParts = [];
109
+ if (firstEvent.organization?.id) contextParts.push(`Org: ${firstEvent.organization.id}`);
110
+ if (firstEvent.application?.name) contextParts.push(`App: ${firstEvent.application.name}`);
111
+ if (firstEvent.application?.version?.id) contextParts.push(`v${firstEvent.application.version.id}`);
112
+ if (firstEvent.script?.name) contextParts.push(`Script: ${firstEvent.script.name}`);
113
+ logger.log(` ${contextParts.join(", ")}`);
114
+ }
115
+ traceEvents.forEach((event, index) => {
116
+ const eventName = event.name || "Event";
117
+ const status = event.status || "ok";
118
+ const statusEmoji = status === "error" ? "\u274C" : "\u2705";
119
+ let duration = "";
120
+ if (event.trace?.endTime && event.trace?.startTime) {
121
+ const durationMs = timestampMs(event.trace.endTime) - timestampMs(event.trace.startTime);
122
+ duration = ` (${durationMs}ms)`;
123
+ }
124
+ logger.log(` ${index + 1}. ${statusEmoji} ${eventName}${duration}`);
125
+ displayEventAttributes(event, logger, " ");
126
+ });
127
+ logger.log("");
128
+ }
129
+ }
130
+
131
+ export {
132
+ displayTraceGroupedEvents
133
+ };