sparkecoder 0.1.64 → 0.1.66

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 (151) hide show
  1. package/dist/agent/index.d.ts +3 -3
  2. package/dist/agent/index.js +815 -30
  3. package/dist/agent/index.js.map +1 -1
  4. package/dist/cli.js +1042 -165
  5. package/dist/cli.js.map +1 -1
  6. package/dist/db/index.d.ts +2 -2
  7. package/dist/db/index.js.map +1 -1
  8. package/dist/{index-Dn-eCGLe.d.ts → index-Db23cukG.d.ts} +35 -25
  9. package/dist/index.d.ts +5 -5
  10. package/dist/index.js +1058 -146
  11. package/dist/index.js.map +1 -1
  12. package/dist/{schema-XcP0dedO.d.ts → schema-C7Mm4Ykn.d.ts} +3 -3
  13. package/dist/{search-DINnDTgj.d.ts → search-CVVfuBPZ.d.ts} +6 -4
  14. package/dist/server/index.js +1058 -146
  15. package/dist/server/index.js.map +1 -1
  16. package/dist/skills/default/qa.md +317 -0
  17. package/dist/tools/index.d.ts +31 -4
  18. package/dist/tools/index.js +433 -7
  19. package/dist/tools/index.js.map +1 -1
  20. package/package.json +3 -1
  21. package/src/skills/default/qa.md +317 -0
  22. package/web/.next/BUILD_ID +1 -1
  23. package/web/.next/standalone/web/.next/BUILD_ID +1 -1
  24. package/web/.next/standalone/web/.next/build-manifest.json +2 -2
  25. package/web/.next/standalone/web/.next/prerender-manifest.json +3 -3
  26. package/web/.next/standalone/web/.next/server/app/(main)/page.js.nft.json +1 -1
  27. package/web/.next/standalone/web/.next/server/app/(main)/page_client-reference-manifest.js +1 -1
  28. package/web/.next/standalone/web/.next/server/app/(main)/session/[id]/page.js.nft.json +1 -1
  29. package/web/.next/standalone/web/.next/server/app/(main)/session/[id]/page_client-reference-manifest.js +1 -1
  30. package/web/.next/standalone/web/.next/server/app/_global-error.html +2 -2
  31. package/web/.next/standalone/web/.next/server/app/_global-error.rsc +1 -1
  32. package/web/.next/standalone/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  33. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  34. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  35. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  36. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  37. package/web/.next/standalone/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  38. package/web/.next/standalone/web/.next/server/app/_not-found.html +1 -1
  39. package/web/.next/standalone/web/.next/server/app/_not-found.rsc +2 -2
  40. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  41. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  42. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  43. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  44. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  45. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  46. package/web/.next/standalone/web/.next/server/app/api/config/route.js.nft.json +1 -1
  47. package/web/.next/standalone/web/.next/server/app/api/health/route.js.nft.json +1 -1
  48. package/web/.next/standalone/web/.next/server/app/docs/installation/page_client-reference-manifest.js +1 -1
  49. package/web/.next/standalone/web/.next/server/app/docs/installation.html +2 -2
  50. package/web/.next/standalone/web/.next/server/app/docs/installation.rsc +2 -2
  51. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_full.segment.rsc +2 -2
  52. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_head.segment.rsc +1 -1
  53. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_index.segment.rsc +2 -2
  54. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_tree.segment.rsc +2 -2
  55. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation/__PAGE__.segment.rsc +1 -1
  56. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation.segment.rsc +1 -1
  57. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs.segment.rsc +1 -1
  58. package/web/.next/standalone/web/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  59. package/web/.next/standalone/web/.next/server/app/docs/skills/page_client-reference-manifest.js +1 -1
  60. package/web/.next/standalone/web/.next/server/app/docs/skills.html +2 -2
  61. package/web/.next/standalone/web/.next/server/app/docs/skills.rsc +2 -2
  62. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_full.segment.rsc +2 -2
  63. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_head.segment.rsc +1 -1
  64. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_index.segment.rsc +2 -2
  65. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_tree.segment.rsc +2 -2
  66. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills/__PAGE__.segment.rsc +1 -1
  67. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills.segment.rsc +1 -1
  68. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs.segment.rsc +1 -1
  69. package/web/.next/standalone/web/.next/server/app/docs/tools/page_client-reference-manifest.js +1 -1
  70. package/web/.next/standalone/web/.next/server/app/docs/tools.html +2 -2
  71. package/web/.next/standalone/web/.next/server/app/docs/tools.rsc +2 -2
  72. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_full.segment.rsc +2 -2
  73. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_head.segment.rsc +1 -1
  74. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_index.segment.rsc +2 -2
  75. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_tree.segment.rsc +2 -2
  76. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools/__PAGE__.segment.rsc +1 -1
  77. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools.segment.rsc +1 -1
  78. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs.segment.rsc +1 -1
  79. package/web/.next/standalone/web/.next/server/app/docs.html +2 -2
  80. package/web/.next/standalone/web/.next/server/app/docs.rsc +2 -2
  81. package/web/.next/standalone/web/.next/server/app/docs.segments/_full.segment.rsc +2 -2
  82. package/web/.next/standalone/web/.next/server/app/docs.segments/_head.segment.rsc +1 -1
  83. package/web/.next/standalone/web/.next/server/app/docs.segments/_index.segment.rsc +2 -2
  84. package/web/.next/standalone/web/.next/server/app/docs.segments/_tree.segment.rsc +2 -2
  85. package/web/.next/standalone/web/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
  86. package/web/.next/standalone/web/.next/server/app/docs.segments/docs.segment.rsc +1 -1
  87. package/web/.next/standalone/web/.next/server/app/embed/[id]/page.js.nft.json +1 -1
  88. package/web/.next/standalone/web/.next/server/app/embed/[id]/page_client-reference-manifest.js +1 -1
  89. package/web/.next/standalone/web/.next/server/app/index.html +1 -1
  90. package/web/.next/standalone/web/.next/server/app/index.rsc +4 -4
  91. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p/__PAGE__.segment.rsc +2 -2
  92. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p.segment.rsc +2 -2
  93. package/web/.next/standalone/web/.next/server/app/index.segments/_full.segment.rsc +4 -4
  94. package/web/.next/standalone/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
  95. package/web/.next/standalone/web/.next/server/app/index.segments/_index.segment.rsc +2 -2
  96. package/web/.next/standalone/web/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  97. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_5c78460e._.js → 2374f_02a118f9._.js} +1 -1
  98. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_bfc8ef7d._.js → 2374f_0ed477f8._.js} +1 -1
  99. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_04a544c8._.js → 2374f_12bad06e._.js} +1 -1
  100. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_e366206f._.js → 2374f_2526ca80._.js} +1 -1
  101. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_45534372._.js → 2374f_3b51a934._.js} +1 -1
  102. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_d5f5b9ba._.js → 2374f_3e519469._.js} +1 -1
  103. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_5e9eb6da._.js → 2374f_5ebfcf1a._.js} +1 -1
  104. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_db790cfe._.js → 2374f_a0f483d1._.js} +1 -1
  105. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_c61a33b3._.js → 2374f_acf3dfe4._.js} +1 -1
  106. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_ab5b97d8._.js → 2374f_ad08e83a._.js} +1 -1
  107. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_68abddfe._.js → 2374f_c1d54c16._.js} +1 -1
  108. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_de60e6ea._.js → 2374f_db3e363b._.js} +1 -1
  109. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_72fb9db7._.js → 2374f_f0d7e130._.js} +1 -1
  110. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_5d0b3394._.js → 2374f_fc992d90._.js} +1 -1
  111. package/web/.next/standalone/web/.next/server/chunks/ssr/{[root-of-the-server]__aa788b85._.js → [root-of-the-server]__06818a54._.js} +2 -2
  112. package/web/.next/standalone/web/.next/server/chunks/ssr/{[root-of-the-server]__d04c460d._.js → [root-of-the-server]__c71f29f9._.js} +4 -4
  113. package/web/.next/standalone/web/.next/server/chunks/ssr/web_2b3a5919._.js +1 -1
  114. package/web/.next/standalone/web/.next/server/chunks/ssr/web_38156da8._.js +1 -1
  115. package/web/.next/standalone/web/.next/server/chunks/ssr/web_5cca707f._.js +7 -0
  116. package/web/.next/standalone/web/.next/server/chunks/ssr/web_935e81f5._.js +7 -0
  117. package/web/.next/standalone/web/.next/server/chunks/ssr/{web_6fb589ac._.js → web_cc5f7515._.js} +2 -2
  118. package/web/.next/standalone/web/.next/server/pages/404.html +1 -1
  119. package/web/.next/standalone/web/.next/server/pages/500.html +2 -2
  120. package/web/.next/standalone/web/.next/server/server-reference-manifest.js +1 -1
  121. package/web/.next/standalone/web/.next/server/server-reference-manifest.json +1 -1
  122. package/web/.next/standalone/web/.next/static/chunks/{eea48be65cdb3f4b.js → 31208ade542a0fcb.js} +3 -3
  123. package/web/.next/{static/chunks/054deec0c7b19894.js → standalone/web/.next/static/chunks/4e673433173ad456.js} +3 -3
  124. package/web/.next/standalone/web/.next/static/chunks/{7fb141141caa4fac.js → 515f0c0bd6087843.js} +5 -5
  125. package/web/.next/standalone/web/.next/static/chunks/fd39dd62879495e1.css +1 -0
  126. package/web/.next/{static/chunks/eea48be65cdb3f4b.js → standalone/web/.next/static/static/chunks/31208ade542a0fcb.js} +3 -3
  127. package/web/.next/standalone/web/.next/static/static/chunks/{054deec0c7b19894.js → 4e673433173ad456.js} +3 -3
  128. package/web/.next/standalone/web/.next/static/static/chunks/{7fb141141caa4fac.js → 515f0c0bd6087843.js} +5 -5
  129. package/web/.next/standalone/web/.next/static/static/chunks/fd39dd62879495e1.css +1 -0
  130. package/web/.next/standalone/web/src/components/ai-elements/browser-recording.tsx +100 -0
  131. package/web/.next/standalone/web/src/components/browser-preview.tsx +196 -0
  132. package/web/.next/standalone/web/src/components/chat-interface.tsx +188 -4
  133. package/web/.next/standalone/web/src/lib/api.ts +119 -0
  134. package/web/.next/{standalone/web/.next/static/static/chunks/eea48be65cdb3f4b.js → static/chunks/31208ade542a0fcb.js} +3 -3
  135. package/web/.next/{standalone/web/.next/static/chunks/054deec0c7b19894.js → static/chunks/4e673433173ad456.js} +3 -3
  136. package/web/.next/static/chunks/{7fb141141caa4fac.js → 515f0c0bd6087843.js} +5 -5
  137. package/web/.next/static/chunks/fd39dd62879495e1.css +1 -0
  138. package/web/.next/standalone/web/.next/server/chunks/ssr/web_08bbd8c8._.js +0 -7
  139. package/web/.next/standalone/web/.next/server/chunks/ssr/web_c729ad51._.js +0 -7
  140. package/web/.next/standalone/web/.next/static/chunks/1f42a42914068041.css +0 -1
  141. package/web/.next/standalone/web/.next/static/static/chunks/1f42a42914068041.css +0 -1
  142. package/web/.next/static/chunks/1f42a42914068041.css +0 -1
  143. /package/web/.next/standalone/web/.next/static/{9M2ys377uFtNH8BEy1_vL → UMGGmtMDTCI6fL-AIFkiM}/_buildManifest.js +0 -0
  144. /package/web/.next/standalone/web/.next/static/{9M2ys377uFtNH8BEy1_vL → UMGGmtMDTCI6fL-AIFkiM}/_clientMiddlewareManifest.json +0 -0
  145. /package/web/.next/standalone/web/.next/static/{9M2ys377uFtNH8BEy1_vL → UMGGmtMDTCI6fL-AIFkiM}/_ssgManifest.js +0 -0
  146. /package/web/.next/standalone/web/.next/static/static/{9M2ys377uFtNH8BEy1_vL → UMGGmtMDTCI6fL-AIFkiM}/_buildManifest.js +0 -0
  147. /package/web/.next/standalone/web/.next/static/static/{9M2ys377uFtNH8BEy1_vL → UMGGmtMDTCI6fL-AIFkiM}/_clientMiddlewareManifest.json +0 -0
  148. /package/web/.next/standalone/web/.next/static/static/{9M2ys377uFtNH8BEy1_vL → UMGGmtMDTCI6fL-AIFkiM}/_ssgManifest.js +0 -0
  149. /package/web/.next/static/{9M2ys377uFtNH8BEy1_vL → UMGGmtMDTCI6fL-AIFkiM}/_buildManifest.js +0 -0
  150. /package/web/.next/static/{9M2ys377uFtNH8BEy1_vL → UMGGmtMDTCI6fL-AIFkiM}/_clientMiddlewareManifest.json +0 -0
  151. /package/web/.next/static/{9M2ys377uFtNH8BEy1_vL → UMGGmtMDTCI6fL-AIFkiM}/_ssgManifest.js +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sparkecoder",
3
- "version": "0.1.64",
3
+ "version": "0.1.66",
4
4
  "description": "A powerful coding agent CLI with HTTP API for development environments",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -58,12 +58,14 @@
58
58
  "ora": "^8.1.1",
59
59
  "resumable-stream": "^2.2.10",
60
60
  "vscode-jsonrpc": "^8.2.0",
61
+ "ws": "^8.19.0",
61
62
  "zod": "^3.24.0"
62
63
  },
63
64
  "devDependencies": {
64
65
  "@tailwindcss/postcss": "^4",
65
66
  "@types/minimatch": "^6.0.0",
66
67
  "@types/node": "^22.10.0",
68
+ "@types/ws": "^8.18.1",
67
69
  "drizzle-orm": "^0.45.1",
68
70
  "tailwindcss": "^4",
69
71
  "tsup": "^8.3.5",
@@ -0,0 +1,317 @@
1
+ ---
2
+ name: QA Testing
3
+ description: Browser-based QA testing for web applications with structured reports covering functionality, UI, performance, accessibility, and responsiveness
4
+ ---
5
+
6
+ # QA Testing Skill
7
+
8
+ Perform structured QA testing on web URLs using `agent-browser`. This skill covers how to load the browser, run checks across multiple categories, and produce a formatted QA report.
9
+
10
+ ## Prerequisites
11
+
12
+ Before starting QA, load the **Browser Automation** skill if it hasn't been loaded already:
13
+
14
+ ```
15
+ load_skill({ name: "Browser Automation" })
16
+ ```
17
+
18
+ ## QA Workflow
19
+
20
+ ### 1. Open the Target URL
21
+
22
+ ```bash
23
+ agent-browser open <url> && agent-browser wait --load networkidle
24
+ ```
25
+
26
+ ### 2. Take a Baseline Screenshot
27
+
28
+ ```bash
29
+ agent-browser screenshot qa-home.png --fullpage
30
+ ```
31
+
32
+ Then view it with `read_file` to get a visual of the starting state, and upload it so it can be linked in the report:
33
+
34
+ ```
35
+ read_file({ path: "qa-home.png" })
36
+ upload_file({ path: "qa-home.png", name: "qa-home.png" })
37
+ ```
38
+
39
+ The `upload_file` tool returns a `downloadUrl` -- save this URL to include in the final report.
40
+
41
+ ### 3. Run Through the QA Checklist
42
+
43
+ Work through each category below. After every navigation or interaction, re-snapshot to get fresh element refs:
44
+
45
+ ```bash
46
+ agent-browser snapshot -i
47
+ ```
48
+
49
+ ### 4. Compile the Report
50
+
51
+ After testing, produce the report using the template at the bottom of this skill.
52
+
53
+ ---
54
+
55
+ ## QA Checklist
56
+
57
+ ### Page Load & Performance
58
+ - Does the page load without errors?
59
+ - Is there visible content within 2-3 seconds?
60
+ - Are all images, fonts, and assets loading?
61
+ - Check the console for errors:
62
+ ```bash
63
+ agent-browser execute "JSON.stringify(window.__console_errors || [])"
64
+ ```
65
+
66
+ ### Navigation & Links
67
+ - Snapshot interactive elements and click through primary navigation links
68
+ - Verify each link leads to the correct destination
69
+ - Check for broken links (404 pages, dead ends)
70
+ - Verify back/forward navigation works:
71
+ ```bash
72
+ agent-browser click @e<nav-link>
73
+ agent-browser wait --load networkidle
74
+ agent-browser screenshot qa-nav.png
75
+ agent-browser back
76
+ ```
77
+
78
+ ### Forms & Inputs
79
+ - Identify all forms on the page via snapshot
80
+ - Test required field validation (submit empty forms)
81
+ - Test input constraints (email format, max length, number ranges)
82
+ - Verify error messages appear and are helpful
83
+ - Test successful submission flow:
84
+ ```bash
85
+ agent-browser fill @e<input> "test value"
86
+ agent-browser click @e<submit>
87
+ agent-browser wait --load networkidle
88
+ agent-browser snapshot -i
89
+ ```
90
+
91
+ ### Visual & UI
92
+ - Take full-page screenshots and review for:
93
+ - Overlapping elements
94
+ - Text truncation or overflow
95
+ - Consistent spacing and alignment
96
+ - Correct colors and branding
97
+ - Readable font sizes
98
+ - Check dark mode if applicable
99
+
100
+ ### Responsive Design
101
+ Test at multiple viewport sizes. Screenshot, review, and upload each:
102
+
103
+ ```bash
104
+ # Mobile
105
+ agent-browser resize 375 812
106
+ agent-browser screenshot qa-mobile.png --fullpage
107
+ ```
108
+ ```
109
+ read_file({ path: "qa-mobile.png" })
110
+ upload_file({ path: "qa-mobile.png", name: "qa-mobile.png" })
111
+ ```
112
+
113
+ ```bash
114
+ # Tablet
115
+ agent-browser resize 768 1024
116
+ agent-browser screenshot qa-tablet.png --fullpage
117
+ ```
118
+ ```
119
+ read_file({ path: "qa-tablet.png" })
120
+ upload_file({ path: "qa-tablet.png", name: "qa-tablet.png" })
121
+ ```
122
+
123
+ ```bash
124
+ # Desktop
125
+ agent-browser resize 1440 900
126
+ agent-browser screenshot qa-desktop.png --fullpage
127
+ ```
128
+ ```
129
+ read_file({ path: "qa-desktop.png" })
130
+ upload_file({ path: "qa-desktop.png", name: "qa-desktop.png" })
131
+ ```
132
+
133
+ Review each screenshot for layout breakage, hidden elements, or overflow.
134
+
135
+ ### Accessibility
136
+ - Check for alt text on images:
137
+ ```bash
138
+ agent-browser execute "document.querySelectorAll('img:not([alt])').length + ' images missing alt text'"
139
+ ```
140
+ - Verify interactive elements are keyboard-focusable
141
+ - Check color contrast on text elements
142
+ - Verify ARIA labels on interactive components:
143
+ ```bash
144
+ agent-browser execute "document.querySelectorAll('button:not([aria-label]):not([aria-labelledby])').length + ' buttons without ARIA labels'"
145
+ ```
146
+
147
+ ### Authentication (if applicable)
148
+ - Test login with valid credentials
149
+ - Test login with invalid credentials (verify error messaging)
150
+ - Test logout flow
151
+ - Verify protected pages redirect to login
152
+
153
+ ### Error Handling
154
+ - Navigate to a non-existent route and verify 404 handling:
155
+ ```bash
156
+ agent-browser open <url>/this-page-does-not-exist-12345
157
+ agent-browser wait --load networkidle
158
+ agent-browser screenshot qa-404.png
159
+ ```
160
+ ```
161
+ read_file({ path: "qa-404.png" })
162
+ upload_file({ path: "qa-404.png", name: "qa-404.png" })
163
+ ```
164
+ - Test behavior with slow/no network if relevant
165
+
166
+ ---
167
+
168
+ ## Uploading Screenshots
169
+
170
+ Every time you take a screenshot during QA, follow this pattern:
171
+
172
+ 1. **Take** the screenshot with `agent-browser screenshot`
173
+ 2. **Review** it with `read_file` to visually inspect it
174
+ 3. **Upload** it with `upload_file` to get a shareable URL
175
+ 4. **Save the URL** for the report
176
+
177
+ ```bash
178
+ agent-browser screenshot qa-issue-login.png
179
+ ```
180
+ ```
181
+ read_file({ path: "qa-issue-login.png" })
182
+ upload_file({ path: "qa-issue-login.png", name: "qa-issue-login.png" })
183
+ # Returns: { downloadUrl: "https://storage.googleapis.com/..." }
184
+ ```
185
+
186
+ Use descriptive filenames that indicate what the screenshot shows:
187
+ - `qa-home.png` -- homepage baseline
188
+ - `qa-mobile.png` / `qa-tablet.png` / `qa-desktop.png` -- responsive viewports
189
+ - `qa-404.png` -- error page
190
+ - `qa-issue-<description>.png` -- specific issues (e.g. `qa-issue-nav-overlap.png`)
191
+
192
+ Also take a screenshot any time you find an issue -- visual evidence makes the report much more useful.
193
+
194
+ ---
195
+
196
+ ## QA Report Template
197
+
198
+ After testing, produce the report in this format. Replace `<download_url>` placeholders with the actual URLs returned by `upload_file`. Write the final report to `qa-report-<date>.md`.
199
+
200
+ ```markdown
201
+ # QA Report
202
+
203
+ **URL:** <tested url>
204
+ **Date:** <date>
205
+ **Tester:** SparkECoder Agent
206
+ **Environment:** Chromium (headless) / <OS>
207
+
208
+ ---
209
+
210
+ ## Summary
211
+
212
+ | Category | Status | Issues |
213
+ |---------------------|--------|--------|
214
+ | Page Load | ✅ / ⚠️ / ❌ | <count> |
215
+ | Navigation & Links | ✅ / ⚠️ / ❌ | <count> |
216
+ | Forms & Inputs | ✅ / ⚠️ / ❌ | <count> |
217
+ | Visual & UI | ✅ / ⚠️ / ❌ | <count> |
218
+ | Responsive Design | ✅ / ⚠️ / ❌ | <count> |
219
+ | Accessibility | ✅ / ⚠️ / ❌ | <count> |
220
+ | Error Handling | ✅ / ⚠️ / ❌ | <count> |
221
+
222
+ **Overall:** ✅ Pass / ⚠️ Pass with warnings / ❌ Fail
223
+
224
+ ---
225
+
226
+ ## Detailed Findings
227
+
228
+ ### Page Load & Performance
229
+ - **Status:** ✅ / ⚠️ / ❌
230
+ - **Load time:** <fast / moderate / slow>
231
+ - **Console errors:** <none / list>
232
+ - **Missing assets:** <none / list>
233
+ - **Baseline:** ![Homepage](<download_url for qa-home.png>)
234
+
235
+ ### Navigation & Links
236
+ - **Status:** ✅ / ⚠️ / ❌
237
+ - **Links tested:** <count>
238
+ - **Broken links:** <none / list with URLs>
239
+
240
+ ### Forms & Inputs
241
+ - **Status:** ✅ / ⚠️ / ❌
242
+ - **Forms tested:** <count>
243
+ - **Validation issues:** <none / list>
244
+ - **Submission issues:** <none / list>
245
+
246
+ ### Visual & UI
247
+ - **Status:** ✅ / ⚠️ / ❌
248
+ - **Issues:**
249
+ - <description of any visual issues found>
250
+ - ![Issue screenshot](<download_url>)
251
+
252
+ ### Responsive Design
253
+ - **Status:** ✅ / ⚠️ / ❌
254
+ - **Viewports tested:**
255
+
256
+ | Viewport | Size | Screenshot | Issues |
257
+ |----------|------|------------|--------|
258
+ | Mobile | 375 x 812 | ![Mobile](<download_url for qa-mobile.png>) | <none / description> |
259
+ | Tablet | 768 x 1024 | ![Tablet](<download_url for qa-tablet.png>) | <none / description> |
260
+ | Desktop | 1440 x 900 | ![Desktop](<download_url for qa-desktop.png>) | <none / description> |
261
+
262
+ ### Accessibility
263
+ - **Status:** ✅ / ⚠️ / ❌
264
+ - **Images missing alt text:** <count>
265
+ - **Buttons missing ARIA labels:** <count>
266
+ - **Other issues:** <list>
267
+
268
+ ### Error Handling
269
+ - **Status:** ✅ / ⚠️ / ❌
270
+ - **404 page:** <present and styled / missing / broken>
271
+ - **Screenshot:** ![404 page](<download_url for qa-404.png>)
272
+ - **Other error handling:** <notes>
273
+
274
+ ---
275
+
276
+ ## Issues List
277
+
278
+ | # | Severity | Category | Description | Evidence |
279
+ |---|----------|----------|-------------|----------|
280
+ | 1 | 🔴 High / 🟡 Medium / 🟢 Low | <category> | <description> | ![Issue](<download_url>) |
281
+
282
+ ---
283
+
284
+ ## All Screenshots
285
+
286
+ | Name | Description | Link |
287
+ |------|-------------|------|
288
+ | qa-home.png | Homepage baseline | [View](<download_url>) |
289
+ | qa-mobile.png | Mobile viewport (375px) | [View](<download_url>) |
290
+ | qa-tablet.png | Tablet viewport (768px) | [View](<download_url>) |
291
+ | qa-desktop.png | Desktop viewport (1440px) | [View](<download_url>) |
292
+ | qa-404.png | 404 error page | [View](<download_url>) |
293
+ | <additional screenshots for specific issues> |||
294
+
295
+ ---
296
+
297
+ ## Recommendations
298
+
299
+ 1. <Highest priority fix>
300
+ 2. <Next priority>
301
+ 3. ...
302
+ ```
303
+
304
+ ---
305
+
306
+ ## Best Practices
307
+
308
+ 1. **Screenshot + upload every finding** -- take a screenshot, `read_file` to review it, `upload_file` to get a URL, then link it in the report
309
+ 2. **Re-snapshot after every navigation** -- element refs go stale when the page changes
310
+ 3. **Test the happy path first** -- verify core functionality works before edge cases
311
+ 4. **Note severity levels** -- 🔴 High = broken functionality, 🟡 Medium = usability issue, 🟢 Low = cosmetic
312
+ 5. **Be specific** -- "Submit button overlaps footer at 375px" is better than "layout issue on mobile"
313
+ 6. **Use descriptive screenshot names** -- `qa-issue-nav-overlap.png` not `screenshot3.png`
314
+ 7. **Close the browser when done** -- always run `agent-browser close` at the end
315
+ 8. **Save the report** -- write the final report to `qa-report-<date>.md`
316
+ 9. **Upload the report too** -- after writing the report file, `upload_file` it so the user gets a shareable link
317
+ 8. **Upload the report** using the upload file tool and return that url to the user
@@ -1 +1 @@
1
- 9M2ys377uFtNH8BEy1_vL
1
+ UMGGmtMDTCI6fL-AIFkiM
@@ -1 +1 @@
1
- 9M2ys377uFtNH8BEy1_vL
1
+ UMGGmtMDTCI6fL-AIFkiM
@@ -7,8 +7,8 @@
7
7
  "static/chunks/a6dad97d9634a72d.js"
8
8
  ],
9
9
  "lowPriorityFiles": [
10
- "static/9M2ys377uFtNH8BEy1_vL/_ssgManifest.js",
11
- "static/9M2ys377uFtNH8BEy1_vL/_buildManifest.js"
10
+ "static/UMGGmtMDTCI6fL-AIFkiM/_ssgManifest.js",
11
+ "static/UMGGmtMDTCI6fL-AIFkiM/_buildManifest.js"
12
12
  ],
13
13
  "rootMainFiles": [
14
14
  "static/chunks/651e187cc15d66de.js",
@@ -319,8 +319,8 @@
319
319
  "dynamicRoutes": {},
320
320
  "notFoundRoutes": [],
321
321
  "preview": {
322
- "previewModeId": "c135525f934847c0837bd0904e7d2c57",
323
- "previewModeSigningKey": "777be85014c93c21749f17ae3d87d53cfa240163a85fade040d9f88f8a795952",
324
- "previewModeEncryptionKey": "5c69886234fc2fc28b6ab8b9cd0f3c8236c0f8b1214c7ce629a166b81d70900b"
322
+ "previewModeId": "f7b22aa8ea4a16357cb82c47d81b7c69",
323
+ "previewModeSigningKey": "b91d99a2ff5c1220a98096c0eb94b0a5de078e956448a45b7cb350773785bc58",
324
+ "previewModeEncryptionKey": "d149030ec98abeee6f741d5580cb1c5e379a1605fc36438c65f32086bb21d0b4"
325
325
  }
326
326
  }
@@ -1 +1 @@
1
- {"version":1,"files":["../../../../node_modules/@opentelemetry/api/build/src/api/context.js","../../../../node_modules/@opentelemetry/api/build/src/api/diag.js","../../../../node_modules/@opentelemetry/api/build/src/api/metrics.js","../../../../node_modules/@opentelemetry/api/build/src/api/propagation.js","../../../../node_modules/@opentelemetry/api/build/src/api/trace.js","../../../../node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js","../../../../node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js","../../../../node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js","../../../../node_modules/@opentelemetry/api/build/src/baggage/utils.js","../../../../node_modules/@opentelemetry/api/build/src/context-api.js","../../../../node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js","../../../../node_modules/@opentelemetry/api/build/src/context/context.js","../../../../node_modules/@opentelemetry/api/build/src/diag-api.js","../../../../node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js","../../../../node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js","../../../../node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js","../../../../node_modules/@opentelemetry/api/build/src/diag/types.js","../../../../node_modules/@opentelemetry/api/build/src/index.js","../../../../node_modules/@opentelemetry/api/build/src/internal/global-utils.js","../../../../node_modules/@opentelemetry/api/build/src/internal/semver.js","../../../../node_modules/@opentelemetry/api/build/src/metrics-api.js","../../../../node_modules/@opentelemetry/api/build/src/metrics/Metric.js","../../../../node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js","../../../../node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js","../../../../node_modules/@opentelemetry/api/build/src/platform/index.js","../../../../node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js","../../../../node_modules/@opentelemetry/api/build/src/platform/node/index.js","../../../../node_modules/@opentelemetry/api/build/src/propagation-api.js","../../../../node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js","../../../../node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js","../../../../node_modules/@opentelemetry/api/build/src/trace-api.js","../../../../node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js","../../../../node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js","../../../../node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js","../../../../node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js","../../../../node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js","../../../../node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js","../../../../node_modules/@opentelemetry/api/build/src/trace/context-utils.js","../../../../node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js","../../../../node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js","../../../../node_modules/@opentelemetry/api/build/src/trace/internal/utils.js","../../../../node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js","../../../../node_modules/@opentelemetry/api/build/src/trace/span_kind.js","../../../../node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js","../../../../node_modules/@opentelemetry/api/build/src/trace/status.js","../../../../node_modules/@opentelemetry/api/build/src/trace/trace_flags.js","../../../../node_modules/@opentelemetry/api/build/src/version.js","../../../../node_modules/@opentelemetry/api/package.json","../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js","../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../node_modules/next/dist/lib/constants.js","../../../../node_modules/next/dist/lib/interop-default.js","../../../../node_modules/next/dist/lib/is-error.js","../../../../node_modules/next/dist/lib/semver-noop.js","../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../node_modules/next/dist/server/response-cache/types.js","../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../node_modules/next/package.json","../../chunks/ssr/2374f_41591094._.js","../../chunks/ssr/2374f_clsx_dist_clsx_mjs_da08f035._.js","../../chunks/ssr/2374f_next_dist_bbe64674._.js","../../chunks/ssr/2374f_next_dist_client_components_9c5d1a14._.js","../../chunks/ssr/2374f_next_dist_client_components_builtin_forbidden_8eae0c85.js","../../chunks/ssr/2374f_next_dist_client_components_builtin_global-error_81159d60.js","../../chunks/ssr/2374f_next_dist_client_components_builtin_unauthorized_7d34a31c.js","../../chunks/ssr/2374f_next_dist_esm_b9db965e._.js","../../chunks/ssr/[root-of-the-server]__1e06ddf7._.js","../../chunks/ssr/[root-of-the-server]__61a0b842._.js","../../chunks/ssr/[root-of-the-server]__8d259d01._.js","../../chunks/ssr/[root-of-the-server]__93733615._.js","../../chunks/ssr/[root-of-the-server]__b050bb8f._.js","../../chunks/ssr/[root-of-the-server]__be5e2967._.js","../../chunks/ssr/[root-of-the-server]__d2ce4b79._.js","../../chunks/ssr/[root-of-the-server]__de76483d._.js","../../chunks/ssr/[turbopack]_runtime.js","../../chunks/ssr/web_08bbd8c8._.js","../../chunks/ssr/web_2b3a5919._.js","../../chunks/ssr/web__next-internal_server_app_(main)_page_actions_d581d001.js","../../chunks/ssr/web_a257eeaf._.js","../../chunks/ssr/web_b42ed1be._.js","../../chunks/ssr/web_d7721729._.js","../../chunks/ssr/web_src_app_(main)_layout_tsx_415c3764._.js","../../chunks/ssr/web_src_app_(main)_page_tsx_5ac4794b._.js","../../chunks/ssr/web_src_app_63a175ab._.js","../../chunks/ssr/web_src_app_6c4c4cb5._.js","../../chunks/ssr/web_src_app_798883c2._.js","../../chunks/ssr/web_src_app_db080828._.js","../../chunks/ssr/web_src_app_eb26ceaa._.js","../../chunks/ssr/web_src_components_sessions-sidebar_tsx_92510070._.js","./page/react-loadable-manifest.json","./page_client-reference-manifest.js"]}
1
+ {"version":1,"files":["../../../../node_modules/@opentelemetry/api/build/src/api/context.js","../../../../node_modules/@opentelemetry/api/build/src/api/diag.js","../../../../node_modules/@opentelemetry/api/build/src/api/metrics.js","../../../../node_modules/@opentelemetry/api/build/src/api/propagation.js","../../../../node_modules/@opentelemetry/api/build/src/api/trace.js","../../../../node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js","../../../../node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js","../../../../node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js","../../../../node_modules/@opentelemetry/api/build/src/baggage/utils.js","../../../../node_modules/@opentelemetry/api/build/src/context-api.js","../../../../node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js","../../../../node_modules/@opentelemetry/api/build/src/context/context.js","../../../../node_modules/@opentelemetry/api/build/src/diag-api.js","../../../../node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js","../../../../node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js","../../../../node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js","../../../../node_modules/@opentelemetry/api/build/src/diag/types.js","../../../../node_modules/@opentelemetry/api/build/src/index.js","../../../../node_modules/@opentelemetry/api/build/src/internal/global-utils.js","../../../../node_modules/@opentelemetry/api/build/src/internal/semver.js","../../../../node_modules/@opentelemetry/api/build/src/metrics-api.js","../../../../node_modules/@opentelemetry/api/build/src/metrics/Metric.js","../../../../node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js","../../../../node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js","../../../../node_modules/@opentelemetry/api/build/src/platform/index.js","../../../../node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js","../../../../node_modules/@opentelemetry/api/build/src/platform/node/index.js","../../../../node_modules/@opentelemetry/api/build/src/propagation-api.js","../../../../node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js","../../../../node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js","../../../../node_modules/@opentelemetry/api/build/src/trace-api.js","../../../../node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js","../../../../node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js","../../../../node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js","../../../../node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js","../../../../node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js","../../../../node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js","../../../../node_modules/@opentelemetry/api/build/src/trace/context-utils.js","../../../../node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js","../../../../node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js","../../../../node_modules/@opentelemetry/api/build/src/trace/internal/utils.js","../../../../node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js","../../../../node_modules/@opentelemetry/api/build/src/trace/span_kind.js","../../../../node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js","../../../../node_modules/@opentelemetry/api/build/src/trace/status.js","../../../../node_modules/@opentelemetry/api/build/src/trace/trace_flags.js","../../../../node_modules/@opentelemetry/api/build/src/version.js","../../../../node_modules/@opentelemetry/api/package.json","../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js","../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../node_modules/next/dist/lib/constants.js","../../../../node_modules/next/dist/lib/interop-default.js","../../../../node_modules/next/dist/lib/is-error.js","../../../../node_modules/next/dist/lib/semver-noop.js","../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../node_modules/next/dist/server/response-cache/types.js","../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../node_modules/next/package.json","../../chunks/ssr/2374f_41591094._.js","../../chunks/ssr/2374f_clsx_dist_clsx_mjs_da08f035._.js","../../chunks/ssr/2374f_next_dist_bbe64674._.js","../../chunks/ssr/2374f_next_dist_client_components_9c5d1a14._.js","../../chunks/ssr/2374f_next_dist_client_components_builtin_forbidden_8eae0c85.js","../../chunks/ssr/2374f_next_dist_client_components_builtin_global-error_81159d60.js","../../chunks/ssr/2374f_next_dist_client_components_builtin_unauthorized_7d34a31c.js","../../chunks/ssr/2374f_next_dist_esm_b9db965e._.js","../../chunks/ssr/[root-of-the-server]__1e06ddf7._.js","../../chunks/ssr/[root-of-the-server]__61a0b842._.js","../../chunks/ssr/[root-of-the-server]__8d259d01._.js","../../chunks/ssr/[root-of-the-server]__93733615._.js","../../chunks/ssr/[root-of-the-server]__b050bb8f._.js","../../chunks/ssr/[root-of-the-server]__be5e2967._.js","../../chunks/ssr/[root-of-the-server]__d2ce4b79._.js","../../chunks/ssr/[root-of-the-server]__de76483d._.js","../../chunks/ssr/[turbopack]_runtime.js","../../chunks/ssr/web_2b3a5919._.js","../../chunks/ssr/web_5cca707f._.js","../../chunks/ssr/web__next-internal_server_app_(main)_page_actions_d581d001.js","../../chunks/ssr/web_a257eeaf._.js","../../chunks/ssr/web_b42ed1be._.js","../../chunks/ssr/web_d7721729._.js","../../chunks/ssr/web_src_app_(main)_layout_tsx_415c3764._.js","../../chunks/ssr/web_src_app_(main)_page_tsx_5ac4794b._.js","../../chunks/ssr/web_src_app_63a175ab._.js","../../chunks/ssr/web_src_app_6c4c4cb5._.js","../../chunks/ssr/web_src_app_798883c2._.js","../../chunks/ssr/web_src_app_db080828._.js","../../chunks/ssr/web_src_app_eb26ceaa._.js","../../chunks/ssr/web_src_components_sessions-sidebar_tsx_92510070._.js","./page/react-loadable-manifest.json","./page_client-reference-manifest.js"]}
@@ -1,2 +1,2 @@
1
1
  globalThis.__RSC_MANIFEST = globalThis.__RSC_MANIFEST || {};
2
- globalThis.__RSC_MANIFEST["/(main)/page"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{"[project]/web/node_modules/next/dist/esm/client/components/layout-router.js <module evaluation>":{"id":488287,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/layout-router.js":{"id":488287,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/render-from-template-context.js <module evaluation>":{"id":174895,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":174895,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/client-page.js <module evaluation>":{"id":683380,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/client-page.js":{"id":683380,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/client-segment.js <module evaluation>":{"id":808719,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/client-segment.js":{"id":808719,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js <module evaluation>":{"id":824163,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":824163,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js <module evaluation>":{"id":349310,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":349310,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/lib/framework/boundary-components.js <module evaluation>":{"id":151858,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":151858,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>":{"id":552576,"name":"*","chunks":[],"async":false},"[project]/web/node_modules/next/dist/client/components/builtin/global-error.js":{"id":552576,"name":"*","chunks":[],"async":false},"[project]/web/src/components/api-init.tsx <module evaluation>":{"id":760800,"name":"*","chunks":["/_next/static/chunks/b31b0765abe0c427.js"],"async":false},"[project]/web/src/components/api-init.tsx":{"id":760800,"name":"*","chunks":["/_next/static/chunks/b31b0765abe0c427.js"],"async":false},"[project]/web/src/app/(main)/layout.tsx <module evaluation>":{"id":138134,"name":"*","chunks":["/_next/static/chunks/b31b0765abe0c427.js","/_next/static/chunks/c6f40df16a9396b9.js","/_next/static/chunks/26eb5fab5216f3cc.js","/_next/static/chunks/ea29be392100ab0f.js","/_next/static/chunks/054deec0c7b19894.js","/_next/static/chunks/ea57058fc6ebf4d3.js"],"async":false},"[project]/web/src/app/(main)/layout.tsx":{"id":138134,"name":"*","chunks":["/_next/static/chunks/b31b0765abe0c427.js","/_next/static/chunks/c6f40df16a9396b9.js","/_next/static/chunks/26eb5fab5216f3cc.js","/_next/static/chunks/ea29be392100ab0f.js","/_next/static/chunks/054deec0c7b19894.js","/_next/static/chunks/ea57058fc6ebf4d3.js"],"async":false},"[project]/web/src/app/(main)/page.tsx <module evaluation>":{"id":375635,"name":"*","chunks":["/_next/static/chunks/b31b0765abe0c427.js","/_next/static/chunks/c6f40df16a9396b9.js","/_next/static/chunks/26eb5fab5216f3cc.js","/_next/static/chunks/ea29be392100ab0f.js","/_next/static/chunks/054deec0c7b19894.js","/_next/static/chunks/ea57058fc6ebf4d3.js","/_next/static/chunks/8d3efc76109d2efc.js"],"async":false},"[project]/web/src/app/(main)/page.tsx":{"id":375635,"name":"*","chunks":["/_next/static/chunks/b31b0765abe0c427.js","/_next/static/chunks/c6f40df16a9396b9.js","/_next/static/chunks/26eb5fab5216f3cc.js","/_next/static/chunks/ea29be392100ab0f.js","/_next/static/chunks/054deec0c7b19894.js","/_next/static/chunks/ea57058fc6ebf4d3.js","/_next/static/chunks/8d3efc76109d2efc.js"],"async":false}},"ssrModuleMapping":{"488287":{"*":{"id":547492,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"174895":{"*":{"id":714433,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"683380":{"*":{"id":824449,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"808719":{"*":{"id":354833,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"824163":{"*":{"id":113588,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"349310":{"*":{"id":913578,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"151858":{"*":{"id":633121,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"552576":{"*":{"id":261905,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__61a0b842._.js"],"async":false}},"760800":{"*":{"id":956805,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__be5e2967._.js"],"async":false}},"138134":{"*":{"id":126823,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__be5e2967._.js","server/chunks/ssr/[root-of-the-server]__de76483d._.js","server/chunks/ssr/2374f_clsx_dist_clsx_mjs_da08f035._.js","server/chunks/ssr/web_src_components_sessions-sidebar_tsx_92510070._.js","server/chunks/ssr/web_08bbd8c8._.js","server/chunks/ssr/2374f_next_dist_bbe64674._.js","server/chunks/ssr/web_2b3a5919._.js"],"async":false}},"375635":{"*":{"id":908810,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__be5e2967._.js","server/chunks/ssr/[root-of-the-server]__de76483d._.js","server/chunks/ssr/2374f_clsx_dist_clsx_mjs_da08f035._.js","server/chunks/ssr/web_src_components_sessions-sidebar_tsx_92510070._.js","server/chunks/ssr/web_08bbd8c8._.js","server/chunks/ssr/2374f_next_dist_bbe64674._.js","server/chunks/ssr/web_2b3a5919._.js","server/chunks/ssr/web_src_app_(main)_page_tsx_5ac4794b._.js","server/chunks/ssr/web_b42ed1be._.js"],"async":false}}},"edgeSSRModuleMapping":{},"rscModuleMapping":{"488287":{"*":{"id":786309,"name":"*","chunks":[],"async":false}},"174895":{"*":{"id":306660,"name":"*","chunks":[],"async":false}},"683380":{"*":{"id":52093,"name":"*","chunks":[],"async":false}},"808719":{"*":{"id":156801,"name":"*","chunks":[],"async":false}},"824163":{"*":{"id":551240,"name":"*","chunks":[],"async":false}},"349310":{"*":{"id":767168,"name":"*","chunks":[],"async":false}},"151858":{"*":{"id":215798,"name":"*","chunks":[],"async":false}},"552576":{"*":{"id":463741,"name":"*","chunks":[],"async":false}},"760800":{"*":{"id":317911,"name":"*","chunks":[],"async":false}},"138134":{"*":{"id":174916,"name":"*","chunks":[],"async":false}},"375635":{"*":{"id":535097,"name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{},"entryCSSFiles":{"[project]/web/src/app/favicon.ico":[],"[project]/web/node_modules/next/dist/client/components/builtin/global-error":[],"[project]/web/src/app/layout":[{"path":"static/chunks/2473c16c0c2f6b5f.css","inlined":false},{"path":"static/chunks/1f42a42914068041.css","inlined":false}],"[project]/web/src/app/(main)/layout":[{"path":"static/chunks/2473c16c0c2f6b5f.css","inlined":false},{"path":"static/chunks/1f42a42914068041.css","inlined":false}],"[project]/web/src/app/(main)/page":[{"path":"static/chunks/2473c16c0c2f6b5f.css","inlined":false},{"path":"static/chunks/1f42a42914068041.css","inlined":false}]},"entryJSFiles":{"[project]/web/src/app/favicon.ico":["static/chunks/9b5512fb633ef95d.js","static/chunks/0f1cf11540868e42.js"],"[project]/web/node_modules/next/dist/client/components/builtin/global-error":[],"[project]/web/src/app/layout":["static/chunks/b31b0765abe0c427.js"],"[project]/web/src/app/(main)/layout":["static/chunks/b31b0765abe0c427.js","static/chunks/c6f40df16a9396b9.js","static/chunks/26eb5fab5216f3cc.js","static/chunks/ea29be392100ab0f.js","static/chunks/054deec0c7b19894.js","static/chunks/ea57058fc6ebf4d3.js"],"[project]/web/src/app/(main)/page":["static/chunks/b31b0765abe0c427.js","static/chunks/c6f40df16a9396b9.js","static/chunks/26eb5fab5216f3cc.js","static/chunks/ea29be392100ab0f.js","static/chunks/054deec0c7b19894.js","static/chunks/ea57058fc6ebf4d3.js","static/chunks/8d3efc76109d2efc.js"]}}
2
+ globalThis.__RSC_MANIFEST["/(main)/page"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{"[project]/web/node_modules/next/dist/esm/client/components/layout-router.js <module evaluation>":{"id":488287,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/layout-router.js":{"id":488287,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/render-from-template-context.js <module evaluation>":{"id":174895,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":174895,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/client-page.js <module evaluation>":{"id":683380,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/client-page.js":{"id":683380,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/client-segment.js <module evaluation>":{"id":808719,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/client-segment.js":{"id":808719,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js <module evaluation>":{"id":824163,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":824163,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js <module evaluation>":{"id":349310,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":349310,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/lib/framework/boundary-components.js <module evaluation>":{"id":151858,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":151858,"name":"*","chunks":["/_next/static/chunks/9b5512fb633ef95d.js","/_next/static/chunks/0f1cf11540868e42.js"],"async":false},"[project]/web/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>":{"id":552576,"name":"*","chunks":[],"async":false},"[project]/web/node_modules/next/dist/client/components/builtin/global-error.js":{"id":552576,"name":"*","chunks":[],"async":false},"[project]/web/src/components/api-init.tsx <module evaluation>":{"id":760800,"name":"*","chunks":["/_next/static/chunks/b31b0765abe0c427.js"],"async":false},"[project]/web/src/components/api-init.tsx":{"id":760800,"name":"*","chunks":["/_next/static/chunks/b31b0765abe0c427.js"],"async":false},"[project]/web/src/app/(main)/layout.tsx <module evaluation>":{"id":138134,"name":"*","chunks":["/_next/static/chunks/b31b0765abe0c427.js","/_next/static/chunks/c6f40df16a9396b9.js","/_next/static/chunks/26eb5fab5216f3cc.js","/_next/static/chunks/ea29be392100ab0f.js","/_next/static/chunks/4e673433173ad456.js","/_next/static/chunks/ea57058fc6ebf4d3.js"],"async":false},"[project]/web/src/app/(main)/layout.tsx":{"id":138134,"name":"*","chunks":["/_next/static/chunks/b31b0765abe0c427.js","/_next/static/chunks/c6f40df16a9396b9.js","/_next/static/chunks/26eb5fab5216f3cc.js","/_next/static/chunks/ea29be392100ab0f.js","/_next/static/chunks/4e673433173ad456.js","/_next/static/chunks/ea57058fc6ebf4d3.js"],"async":false},"[project]/web/src/app/(main)/page.tsx <module evaluation>":{"id":375635,"name":"*","chunks":["/_next/static/chunks/b31b0765abe0c427.js","/_next/static/chunks/c6f40df16a9396b9.js","/_next/static/chunks/26eb5fab5216f3cc.js","/_next/static/chunks/ea29be392100ab0f.js","/_next/static/chunks/4e673433173ad456.js","/_next/static/chunks/ea57058fc6ebf4d3.js","/_next/static/chunks/8d3efc76109d2efc.js"],"async":false},"[project]/web/src/app/(main)/page.tsx":{"id":375635,"name":"*","chunks":["/_next/static/chunks/b31b0765abe0c427.js","/_next/static/chunks/c6f40df16a9396b9.js","/_next/static/chunks/26eb5fab5216f3cc.js","/_next/static/chunks/ea29be392100ab0f.js","/_next/static/chunks/4e673433173ad456.js","/_next/static/chunks/ea57058fc6ebf4d3.js","/_next/static/chunks/8d3efc76109d2efc.js"],"async":false}},"ssrModuleMapping":{"488287":{"*":{"id":547492,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"174895":{"*":{"id":714433,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"683380":{"*":{"id":824449,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"808719":{"*":{"id":354833,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"824163":{"*":{"id":113588,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"349310":{"*":{"id":913578,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"151858":{"*":{"id":633121,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1e06ddf7._.js","server/chunks/ssr/2374f_next_dist_esm_b9db965e._.js"],"async":false}},"552576":{"*":{"id":261905,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__61a0b842._.js"],"async":false}},"760800":{"*":{"id":956805,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__be5e2967._.js"],"async":false}},"138134":{"*":{"id":126823,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__be5e2967._.js","server/chunks/ssr/[root-of-the-server]__de76483d._.js","server/chunks/ssr/2374f_clsx_dist_clsx_mjs_da08f035._.js","server/chunks/ssr/web_src_components_sessions-sidebar_tsx_92510070._.js","server/chunks/ssr/web_5cca707f._.js","server/chunks/ssr/2374f_next_dist_bbe64674._.js","server/chunks/ssr/web_2b3a5919._.js"],"async":false}},"375635":{"*":{"id":908810,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__be5e2967._.js","server/chunks/ssr/[root-of-the-server]__de76483d._.js","server/chunks/ssr/2374f_clsx_dist_clsx_mjs_da08f035._.js","server/chunks/ssr/web_src_components_sessions-sidebar_tsx_92510070._.js","server/chunks/ssr/web_5cca707f._.js","server/chunks/ssr/2374f_next_dist_bbe64674._.js","server/chunks/ssr/web_2b3a5919._.js","server/chunks/ssr/web_src_app_(main)_page_tsx_5ac4794b._.js","server/chunks/ssr/web_b42ed1be._.js"],"async":false}}},"edgeSSRModuleMapping":{},"rscModuleMapping":{"488287":{"*":{"id":786309,"name":"*","chunks":[],"async":false}},"174895":{"*":{"id":306660,"name":"*","chunks":[],"async":false}},"683380":{"*":{"id":52093,"name":"*","chunks":[],"async":false}},"808719":{"*":{"id":156801,"name":"*","chunks":[],"async":false}},"824163":{"*":{"id":551240,"name":"*","chunks":[],"async":false}},"349310":{"*":{"id":767168,"name":"*","chunks":[],"async":false}},"151858":{"*":{"id":215798,"name":"*","chunks":[],"async":false}},"552576":{"*":{"id":463741,"name":"*","chunks":[],"async":false}},"760800":{"*":{"id":317911,"name":"*","chunks":[],"async":false}},"138134":{"*":{"id":174916,"name":"*","chunks":[],"async":false}},"375635":{"*":{"id":535097,"name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{},"entryCSSFiles":{"[project]/web/src/app/favicon.ico":[],"[project]/web/node_modules/next/dist/client/components/builtin/global-error":[],"[project]/web/src/app/layout":[{"path":"static/chunks/2473c16c0c2f6b5f.css","inlined":false},{"path":"static/chunks/fd39dd62879495e1.css","inlined":false}],"[project]/web/src/app/(main)/layout":[{"path":"static/chunks/2473c16c0c2f6b5f.css","inlined":false},{"path":"static/chunks/fd39dd62879495e1.css","inlined":false}],"[project]/web/src/app/(main)/page":[{"path":"static/chunks/2473c16c0c2f6b5f.css","inlined":false},{"path":"static/chunks/fd39dd62879495e1.css","inlined":false}]},"entryJSFiles":{"[project]/web/src/app/favicon.ico":["static/chunks/9b5512fb633ef95d.js","static/chunks/0f1cf11540868e42.js"],"[project]/web/node_modules/next/dist/client/components/builtin/global-error":[],"[project]/web/src/app/layout":["static/chunks/b31b0765abe0c427.js"],"[project]/web/src/app/(main)/layout":["static/chunks/b31b0765abe0c427.js","static/chunks/c6f40df16a9396b9.js","static/chunks/26eb5fab5216f3cc.js","static/chunks/ea29be392100ab0f.js","static/chunks/4e673433173ad456.js","static/chunks/ea57058fc6ebf4d3.js"],"[project]/web/src/app/(main)/page":["static/chunks/b31b0765abe0c427.js","static/chunks/c6f40df16a9396b9.js","static/chunks/26eb5fab5216f3cc.js","static/chunks/ea29be392100ab0f.js","static/chunks/4e673433173ad456.js","static/chunks/ea57058fc6ebf4d3.js","static/chunks/8d3efc76109d2efc.js"]}}