@volter/twin-sentry 0.1.37 → 1.0.1

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 (189) hide show
  1. package/README.md +28 -140
  2. package/api/spec/SOURCE.md +32 -0
  3. package/api/spec/doc-examples.json +12 -0
  4. package/api/spec/openapi.json.gz +0 -0
  5. package/api/spec/patches.json +5350 -0
  6. package/api/spec/sources.json +122 -0
  7. package/api/src/fetch.ts +18 -0
  8. package/api/src/generated/surface.gen.json +1 -0
  9. package/api/src/generated/ui.gen.json +1 -0
  10. package/api/src/index.ts +3 -0
  11. package/api/src/manifest.ts +137 -0
  12. package/api/src/semantics/api.ts +247 -0
  13. package/api/src/semantics/around.ts +36 -0
  14. package/api/src/semantics/doors.ts +76 -0
  15. package/api/src/semantics/index.ts +19 -0
  16. package/api/src/semantics/shared.ts +31 -0
  17. package/api/src/semantics/states.ts +17 -0
  18. package/dist/api/spec/SOURCE.md +32 -0
  19. package/dist/api/spec/doc-examples.json +12 -0
  20. package/dist/api/spec/openapi.json.gz +0 -0
  21. package/dist/api/spec/patches.json +5350 -0
  22. package/dist/api/spec/sources.json +122 -0
  23. package/dist/api/src/fetch.d.ts +2 -0
  24. package/dist/api/src/fetch.js +17 -0
  25. package/dist/api/src/fetch.ts +18 -0
  26. package/dist/api/src/generated/surface.gen.json +1 -0
  27. package/dist/api/src/generated/ui.gen.json +1 -0
  28. package/dist/api/src/index.d.ts +2 -0
  29. package/dist/api/src/index.js +3 -0
  30. package/dist/api/src/index.ts +3 -0
  31. package/dist/api/src/manifest.d.ts +2 -0
  32. package/dist/api/src/manifest.js +136 -0
  33. package/dist/api/src/manifest.ts +137 -0
  34. package/dist/api/src/semantics/api.d.ts +13 -0
  35. package/dist/api/src/semantics/api.js +269 -0
  36. package/dist/api/src/semantics/api.ts +247 -0
  37. package/dist/api/src/semantics/around.d.ts +2 -0
  38. package/dist/api/src/semantics/around.js +41 -0
  39. package/dist/api/src/semantics/around.ts +36 -0
  40. package/dist/api/src/semantics/doors.d.ts +5 -0
  41. package/dist/api/src/semantics/doors.js +71 -0
  42. package/dist/api/src/semantics/doors.ts +76 -0
  43. package/dist/api/src/semantics/index.d.ts +2 -0
  44. package/dist/api/src/semantics/index.js +15 -0
  45. package/dist/api/src/semantics/index.ts +19 -0
  46. package/dist/api/src/semantics/shared.d.ts +14 -0
  47. package/dist/api/src/semantics/shared.js +26 -0
  48. package/dist/api/src/semantics/shared.ts +31 -0
  49. package/dist/api/src/semantics/states.d.ts +24 -0
  50. package/dist/api/src/semantics/states.js +17 -0
  51. package/dist/api/src/semantics/states.ts +17 -0
  52. package/dist/ingest/spec/SOURCE.md +30 -0
  53. package/dist/ingest/spec/authentication.mdx.gz +0 -0
  54. package/dist/ingest/spec/compression.mdx.gz +0 -0
  55. package/dist/ingest/spec/doc-examples.json +216 -0
  56. package/dist/ingest/spec/envelope-items.mdx.gz +0 -0
  57. package/dist/ingest/spec/envelopes.mdx.gz +0 -0
  58. package/dist/ingest/spec/openapi.json +178 -0
  59. package/dist/ingest/spec/rate-limiting.mdx.gz +0 -0
  60. package/dist/ingest/spec/sources.json +25 -0
  61. package/dist/ingest/spec/transport.mdx.gz +0 -0
  62. package/dist/ingest/spec/write-spec.ts +192 -0
  63. package/dist/ingest/src/fetch.d.ts +2 -0
  64. package/dist/ingest/src/fetch.js +15 -0
  65. package/dist/ingest/src/fetch.ts +16 -0
  66. package/dist/ingest/src/generated/surface.gen.json +1 -0
  67. package/dist/ingest/src/generated/ui.gen.json +1 -0
  68. package/dist/ingest/src/index.d.ts +2 -0
  69. package/dist/ingest/src/index.js +3 -0
  70. package/dist/ingest/src/index.ts +3 -0
  71. package/dist/ingest/src/manifest.d.ts +2 -0
  72. package/dist/ingest/src/manifest.js +37 -0
  73. package/dist/ingest/src/manifest.ts +42 -0
  74. package/dist/ingest/src/semantics/api.d.ts +2 -0
  75. package/dist/ingest/src/semantics/api.js +240 -0
  76. package/dist/ingest/src/semantics/api.ts +188 -0
  77. package/dist/ingest/src/semantics/around.d.ts +2 -0
  78. package/dist/ingest/src/semantics/around.js +6 -0
  79. package/dist/ingest/src/semantics/around.ts +7 -0
  80. package/dist/ingest/src/semantics/index.d.ts +2 -0
  81. package/dist/ingest/src/semantics/index.js +4 -0
  82. package/dist/ingest/src/semantics/index.ts +8 -0
  83. package/dist/ingest/src/semantics/shared.d.ts +4 -0
  84. package/dist/ingest/src/semantics/shared.js +2 -0
  85. package/dist/ingest/src/semantics/shared.ts +7 -0
  86. package/dist/ingest/src/semantics/states.d.ts +1 -0
  87. package/dist/ingest/src/semantics/states.js +2 -0
  88. package/dist/ingest/src/semantics/states.ts +2 -0
  89. package/dist/journeys/coverage.json +205 -0
  90. package/dist/journeys/customer-life.json +921 -0
  91. package/dist/journeys/customer-life.outline.md +51 -0
  92. package/dist/journeys/decisions.json +170 -0
  93. package/dist/journeys/demand.json +92 -0
  94. package/dist/journeys/first-use.json +22 -0
  95. package/dist/journeys/score.json +231 -0
  96. package/dist/journeys/unreachable.json +29 -0
  97. package/dist/journeys/vendor-examples.json +474 -0
  98. package/dist/spec/sources.json +76 -0
  99. package/dist/src/cli.js +12 -27
  100. package/dist/src/fetch.d.ts +2 -0
  101. package/dist/src/fetch.js +9 -0
  102. package/dist/src/index.d.ts +5 -15
  103. package/dist/src/index.js +13 -75
  104. package/dist/src/manifest.d.ts +2 -0
  105. package/dist/src/manifest.js +35 -0
  106. package/dist/src/semantics/shared.d.ts +88 -0
  107. package/dist/src/semantics/shared.js +407 -0
  108. package/dist/src/server.d.ts +7 -0
  109. package/dist/src/server.js +7 -0
  110. package/generated/pack-facts.json +101 -0
  111. package/ingest/spec/SOURCE.md +30 -0
  112. package/ingest/spec/authentication.mdx.gz +0 -0
  113. package/ingest/spec/compression.mdx.gz +0 -0
  114. package/ingest/spec/doc-examples.json +216 -0
  115. package/ingest/spec/envelope-items.mdx.gz +0 -0
  116. package/ingest/spec/envelopes.mdx.gz +0 -0
  117. package/ingest/spec/openapi.json +178 -0
  118. package/ingest/spec/rate-limiting.mdx.gz +0 -0
  119. package/ingest/spec/sources.json +25 -0
  120. package/ingest/spec/transport.mdx.gz +0 -0
  121. package/ingest/spec/write-spec.ts +192 -0
  122. package/ingest/src/fetch.ts +16 -0
  123. package/ingest/src/generated/surface.gen.json +1 -0
  124. package/ingest/src/generated/ui.gen.json +1 -0
  125. package/ingest/src/index.ts +3 -0
  126. package/ingest/src/manifest.ts +42 -0
  127. package/ingest/src/semantics/api.ts +188 -0
  128. package/ingest/src/semantics/around.ts +7 -0
  129. package/ingest/src/semantics/index.ts +8 -0
  130. package/ingest/src/semantics/shared.ts +7 -0
  131. package/ingest/src/semantics/states.ts +2 -0
  132. package/journeys/coverage.json +205 -0
  133. package/journeys/customer-life.json +921 -0
  134. package/journeys/customer-life.outline.md +51 -0
  135. package/journeys/decisions.json +170 -0
  136. package/journeys/demand.json +92 -0
  137. package/journeys/first-use.json +22 -0
  138. package/journeys/score.json +231 -0
  139. package/journeys/unreachable.json +29 -0
  140. package/journeys/vendor-examples.json +474 -0
  141. package/package.json +22 -47
  142. package/spec/sources.json +76 -0
  143. package/src/cli.ts +12 -24
  144. package/src/fetch.ts +10 -0
  145. package/src/index.ts +13 -143
  146. package/src/manifest.ts +41 -0
  147. package/src/semantics/shared.ts +439 -0
  148. package/src/server.ts +8 -0
  149. package/client/sentry-mirror.css +0 -99
  150. package/client/sentry-mirror.tsx +0 -352
  151. package/dist/client/sentry-mirror.bundle.js +0 -388
  152. package/dist/client/sentry-mirror.css +0 -99
  153. package/dist/client/sentry-mirror.d.ts +0 -17
  154. package/dist/client/sentry-mirror.js +0 -156
  155. package/dist/client/sentry-mirror.tsx +0 -352
  156. package/dist/src/sentry-budget.d.ts +0 -50
  157. package/dist/src/sentry-budget.js +0 -145
  158. package/dist/src/sentry-capabilities.d.ts +0 -3
  159. package/dist/src/sentry-capabilities.js +0 -1180
  160. package/dist/src/sentry-conformance.d.ts +0 -22
  161. package/dist/src/sentry-conformance.js +0 -97
  162. package/dist/src/sentry-connector.d.ts +0 -77
  163. package/dist/src/sentry-connector.js +0 -226
  164. package/dist/src/sentry-events.d.ts +0 -54
  165. package/dist/src/sentry-events.js +0 -132
  166. package/dist/src/sentry-ingest.d.ts +0 -137
  167. package/dist/src/sentry-ingest.js +0 -387
  168. package/dist/src/sentry-mirror-ui.d.ts +0 -38
  169. package/dist/src/sentry-mirror-ui.js +0 -162
  170. package/dist/src/sentry-perform-harness.d.ts +0 -9
  171. package/dist/src/sentry-perform-harness.js +0 -20
  172. package/dist/src/sentry-server.d.ts +0 -14
  173. package/dist/src/sentry-server.js +0 -27
  174. package/dist/src/sentry-twin.d.ts +0 -17
  175. package/dist/src/sentry-twin.js +0 -1739
  176. package/dist/test-fixtures/sentry-openapi-operations.SOURCE.md +0 -24
  177. package/dist/test-fixtures/sentry-openapi-operations.json +0 -1837
  178. package/src/sentry-budget.ts +0 -171
  179. package/src/sentry-capabilities.ts +0 -1222
  180. package/src/sentry-conformance.ts +0 -110
  181. package/src/sentry-connector.ts +0 -260
  182. package/src/sentry-events.ts +0 -172
  183. package/src/sentry-ingest.ts +0 -471
  184. package/src/sentry-mirror-ui.ts +0 -162
  185. package/src/sentry-perform-harness.ts +0 -19
  186. package/src/sentry-server.ts +0 -35
  187. package/src/sentry-twin.ts +0 -1615
  188. package/test-fixtures/sentry-openapi-operations.SOURCE.md +0 -24
  189. package/test-fixtures/sentry-openapi-operations.json +0 -1837
@@ -1,35 +0,0 @@
1
- // Sentry twin HTTP server — serve the full Sentry twin handler over HTTP so the real
2
- // `@sentry/node` SDK (pointed at a twin DSN whose host is this server) POSTs captured
3
- // events to /api/:projectId/envelope/ and they become grouped issues, AND the Web API
4
- // (/api/0/...) answers reads/writes. Writable by default; pass readOnly to reject writes.
5
- // No real Sentry is ever contacted (D4) — fully local + offline.
6
- //
7
- // FETCH-FIRST (runtime contract R12b): the serve path is the plain fetch below, built from the
8
- // kernel's ONE adaptation (`createTwinFetchFromHandler`); this file contributes only VALUES. The
9
- // vendor's 204 deletes return `{ status: 204, body: null }`, which the adapter's null-body rule
10
- // serves as a genuinely empty response. The server is one line of Bun.serve around that closure.
11
- import { serveHttp } from '@volter/world-core';
12
- import { handleSentryTwinRequest } from './sentry-twin.ts';
13
- import { createTwinFetchFromHandler, statefulTwinManifest } from '@volter/world-core';
14
-
15
- /** Options every Sentry-twin HTTP surface needs, independent of who owns the socket. */
16
- export interface SentryTwinFetchOptions {
17
- root?: string;
18
- readOnly?: boolean;
19
- }
20
-
21
- export function createSentryTwinFetch(options: SentryTwinFetchOptions = {}): (request: Request) => Promise<Response> {
22
- return createTwinFetchFromHandler(handleSentryTwinRequest, {
23
- ...options,
24
- manifest: statefulTwinManifest({ vendor: 'sentry', twinOf: 'the Sentry error-monitoring API', stores: 'ingested error/transaction envelopes, readable back per project' }),
25
- });
26
- }
27
-
28
- export async function createSentryTwinServer(options: { root?: string; port?: number; readOnly?: boolean } = {}): Promise<{ port: number; stop: () => void }> {
29
- const server = await serveHttp({
30
- port: options.port ?? 0,
31
- idleTimeout: 60,
32
- fetch: createSentryTwinFetch(options),
33
- });
34
- return { port: server.port ?? options.port ?? 0, stop: () => server.stop(true) };
35
- }