@leanspec/ui 0.2.5-dev.20251120070726 → 0.2.5-dev.20251120093243

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 (361) hide show
  1. package/.next/standalone/packages/ui/.next/BUILD_ID +1 -1
  2. package/.next/standalone/packages/ui/.next/app-path-routes-manifest.json +12 -0
  3. package/.next/standalone/packages/ui/.next/build-manifest.json +7 -6
  4. package/.next/standalone/packages/ui/.next/prerender-manifest.json +28 -3
  5. package/.next/standalone/packages/ui/.next/routes-manifest.json +91 -0
  6. package/.next/standalone/packages/ui/.next/server/app/_global-error/page/build-manifest.json +5 -4
  7. package/.next/standalone/packages/ui/.next/server/app/_global-error/page.js +1 -1
  8. package/.next/standalone/packages/ui/.next/server/app/_global-error/page.js.nft.json +1 -1
  9. package/.next/standalone/packages/ui/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/packages/ui/.next/server/app/_global-error.html +2 -2
  11. package/.next/standalone/packages/ui/.next/server/app/_global-error.rsc +1 -1
  12. package/.next/standalone/packages/ui/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  13. package/.next/standalone/packages/ui/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  14. package/.next/standalone/packages/ui/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  15. package/.next/standalone/packages/ui/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  16. package/.next/standalone/packages/ui/.next/server/app/_not-found/page/build-manifest.json +5 -4
  17. package/.next/standalone/packages/ui/.next/server/app/_not-found/page.js +2 -2
  18. package/.next/standalone/packages/ui/.next/server/app/_not-found/page.js.nft.json +1 -1
  19. package/.next/standalone/packages/ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  20. package/.next/standalone/packages/ui/.next/server/app/_not-found.html +2 -2
  21. package/.next/standalone/packages/ui/.next/server/app/_not-found.rsc +20 -19
  22. package/.next/standalone/packages/ui/.next/server/app/_not-found.segments/_full.segment.rsc +20 -19
  23. package/.next/standalone/packages/ui/.next/server/app/_not-found.segments/_index.segment.rsc +26 -25
  24. package/.next/standalone/packages/ui/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
  25. package/.next/standalone/packages/ui/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  26. package/.next/standalone/packages/ui/.next/server/app/_not-found.segments/_tree.segment.rsc +5 -5
  27. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/[id]/route/app-paths-manifest.json +3 -0
  28. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/[id]/route/build-manifest.json +11 -0
  29. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/[id]/route/server-reference-manifest.json +4 -0
  30. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/[id]/route.js +6 -0
  31. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/[id]/route.js.map +5 -0
  32. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/[id]/route.js.nft.json +1 -0
  33. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/[id]/route_client-reference-manifest.js +2 -0
  34. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/discover/route/app-paths-manifest.json +3 -0
  35. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/discover/route/build-manifest.json +11 -0
  36. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/discover/route/server-reference-manifest.json +4 -0
  37. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/discover/route.js +6 -0
  38. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/discover/route.js.map +5 -0
  39. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/discover/route.js.nft.json +1 -0
  40. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/discover/route_client-reference-manifest.js +2 -0
  41. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/list-directory/route/app-paths-manifest.json +3 -0
  42. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/list-directory/route/build-manifest.json +11 -0
  43. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/list-directory/route/server-reference-manifest.json +4 -0
  44. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/list-directory/route.js +6 -0
  45. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/list-directory/route.js.map +5 -0
  46. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/list-directory/route.js.nft.json +1 -0
  47. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/list-directory/route_client-reference-manifest.js +2 -0
  48. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/route/app-paths-manifest.json +3 -0
  49. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/route/build-manifest.json +11 -0
  50. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/route/server-reference-manifest.json +4 -0
  51. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/route.js +6 -0
  52. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/route.js.map +5 -0
  53. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/route.js.nft.json +1 -0
  54. package/.next/standalone/packages/ui/.next/server/app/api/local-projects/route_client-reference-manifest.js +2 -0
  55. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/route/app-paths-manifest.json +3 -0
  56. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/route/build-manifest.json +11 -0
  57. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/route/server-reference-manifest.json +4 -0
  58. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/route.js +8 -0
  59. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/route.js.map +5 -0
  60. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/route.js.nft.json +1 -0
  61. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/route_client-reference-manifest.js +2 -0
  62. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/route/app-paths-manifest.json +3 -0
  63. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/route/build-manifest.json +11 -0
  64. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/route/server-reference-manifest.json +4 -0
  65. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/route.js +9 -0
  66. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/route.js.map +5 -0
  67. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/route.js.nft.json +1 -0
  68. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/route_client-reference-manifest.js +2 -0
  69. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/status/route/app-paths-manifest.json +3 -0
  70. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/status/route/build-manifest.json +11 -0
  71. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/status/route/server-reference-manifest.json +4 -0
  72. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/status/route.js +8 -0
  73. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/status/route.js.map +5 -0
  74. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/status/route.js.nft.json +1 -0
  75. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/status/route_client-reference-manifest.js +2 -0
  76. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/route.js +4 -2
  77. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/route.js.nft.json +1 -1
  78. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/stats/route/app-paths-manifest.json +3 -0
  79. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/stats/route/build-manifest.json +11 -0
  80. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/stats/route/server-reference-manifest.json +4 -0
  81. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/stats/route.js +8 -0
  82. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/stats/route.js.map +5 -0
  83. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/stats/route.js.nft.json +1 -0
  84. package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/stats/route_client-reference-manifest.js +2 -0
  85. package/.next/standalone/packages/ui/.next/server/app/api/projects/route.js +3 -2
  86. package/.next/standalone/packages/ui/.next/server/app/api/projects/route.js.nft.json +1 -1
  87. package/.next/standalone/packages/ui/.next/server/app/api/revalidate/route.js +4 -2
  88. package/.next/standalone/packages/ui/.next/server/app/api/revalidate/route.js.nft.json +1 -1
  89. package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/dependency-graph/route.js +4 -2
  90. package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/dependency-graph/route.js.nft.json +1 -1
  91. package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/route.js +4 -2
  92. package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/route.js.nft.json +1 -1
  93. package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/status/route.js +4 -3
  94. package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/status/route.js.nft.json +1 -1
  95. package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/subspecs/[file]/route.js +4 -2
  96. package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/subspecs/[file]/route.js.nft.json +1 -1
  97. package/.next/standalone/packages/ui/.next/server/app/api/stats/route.js +4 -2
  98. package/.next/standalone/packages/ui/.next/server/app/api/stats/route.js.nft.json +1 -1
  99. package/.next/standalone/packages/ui/.next/server/app/page/build-manifest.json +5 -4
  100. package/.next/standalone/packages/ui/.next/server/app/page.js +2 -2
  101. package/.next/standalone/packages/ui/.next/server/app/page.js.nft.json +1 -1
  102. package/.next/standalone/packages/ui/.next/server/app/page_client-reference-manifest.js +1 -1
  103. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page/app-paths-manifest.json +3 -0
  104. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page/build-manifest.json +18 -0
  105. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page/next-font-manifest.json +6 -0
  106. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page/react-loadable-manifest.json +1 -0
  107. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page/server-reference-manifest.json +4 -0
  108. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page.js +21 -0
  109. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page.js.map +5 -0
  110. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page.js.nft.json +1 -0
  111. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page_client-reference-manifest.js +2 -0
  112. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/[specId]/page/app-paths-manifest.json +3 -0
  113. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/[specId]/page/build-manifest.json +18 -0
  114. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/[specId]/page/next-font-manifest.json +6 -0
  115. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/[specId]/page/react-loadable-manifest.json +1 -0
  116. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/[specId]/page/server-reference-manifest.json +4 -0
  117. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/[specId]/page.js +21 -0
  118. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/[specId]/page.js.map +5 -0
  119. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/[specId]/page.js.nft.json +1 -0
  120. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/[specId]/page_client-reference-manifest.js +2 -0
  121. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/page/app-paths-manifest.json +3 -0
  122. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/page/build-manifest.json +18 -0
  123. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/page/next-font-manifest.json +6 -0
  124. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/page/react-loadable-manifest.json +1 -0
  125. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/page/server-reference-manifest.json +4 -0
  126. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/page.js +20 -0
  127. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/page.js.map +5 -0
  128. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/page.js.nft.json +1 -0
  129. package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/page_client-reference-manifest.js +2 -0
  130. package/.next/standalone/packages/ui/.next/server/app/projects/page/app-paths-manifest.json +3 -0
  131. package/.next/standalone/packages/ui/.next/server/app/projects/page/build-manifest.json +18 -0
  132. package/.next/standalone/packages/ui/.next/server/app/projects/page/next-font-manifest.json +6 -0
  133. package/.next/standalone/packages/ui/.next/server/app/projects/page/react-loadable-manifest.json +1 -0
  134. package/.next/standalone/packages/ui/.next/server/app/projects/page/server-reference-manifest.json +4 -0
  135. package/.next/standalone/packages/ui/.next/server/app/projects/page.js +19 -0
  136. package/.next/standalone/packages/ui/.next/server/app/projects/page.js.map +5 -0
  137. package/.next/standalone/packages/ui/.next/server/app/projects/page.js.nft.json +1 -0
  138. package/.next/standalone/packages/ui/.next/server/app/projects/page_client-reference-manifest.js +2 -0
  139. package/.next/standalone/packages/ui/.next/server/app/projects.html +2 -0
  140. package/.next/standalone/packages/ui/.next/server/app/projects.meta +14 -0
  141. package/.next/standalone/packages/ui/.next/server/app/projects.rsc +34 -0
  142. package/.next/standalone/packages/ui/.next/server/app/projects.segments/_full.segment.rsc +34 -0
  143. package/.next/standalone/packages/ui/.next/server/app/projects.segments/_index.segment.rsc +27 -0
  144. package/.next/standalone/packages/ui/.next/server/app/projects.segments/_tree.segment.rsc +9 -0
  145. package/.next/standalone/packages/ui/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +9 -0
  146. package/.next/standalone/packages/ui/.next/server/app/projects.segments/projects.segment.rsc +4 -0
  147. package/.next/standalone/packages/ui/.next/server/app/specs/[id]/page/build-manifest.json +5 -4
  148. package/.next/standalone/packages/ui/.next/server/app/specs/[id]/page.js +4 -4
  149. package/.next/standalone/packages/ui/.next/server/app/specs/[id]/page.js.nft.json +1 -1
  150. package/.next/standalone/packages/ui/.next/server/app/specs/[id]/page_client-reference-manifest.js +1 -1
  151. package/.next/standalone/packages/ui/.next/server/app/specs/page/build-manifest.json +5 -4
  152. package/.next/standalone/packages/ui/.next/server/app/specs/page.js +2 -2
  153. package/.next/standalone/packages/ui/.next/server/app/specs/page.js.nft.json +1 -1
  154. package/.next/standalone/packages/ui/.next/server/app/specs/page_client-reference-manifest.js +1 -1
  155. package/.next/standalone/packages/ui/.next/server/app/stats/page/build-manifest.json +5 -4
  156. package/.next/standalone/packages/ui/.next/server/app/stats/page.js +2 -2
  157. package/.next/standalone/packages/ui/.next/server/app/stats/page.js.nft.json +1 -1
  158. package/.next/standalone/packages/ui/.next/server/app/stats/page_client-reference-manifest.js +1 -1
  159. package/.next/standalone/packages/ui/.next/server/app-paths-manifest.json +12 -0
  160. package/.next/standalone/packages/ui/.next/server/chunks/6681a__next-internal_server_app_api_projects_[id]_specs_[spec]_route_actions_d018d9e0.js +3 -0
  161. package/.next/standalone/packages/ui/.next/server/chunks/730ea_ui__next-internal_server_app_api_local-projects_[id]_route_actions_664abe9c.js +3 -0
  162. package/.next/standalone/packages/ui/.next/server/chunks/730ea_ui__next-internal_server_app_api_local-projects_discover_route_actions_e6ec3fa7.js +3 -0
  163. package/.next/standalone/packages/ui/.next/server/chunks/730ea_ui__next-internal_server_app_api_projects_[id]_stats_route_actions_a0bb04a8.js +3 -0
  164. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__0fbfea15._.js +3 -0
  165. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__126dea7b._.js +3 -0
  166. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__1f037512._.js +3 -0
  167. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__3559376c._.js +21 -0
  168. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__548e27d4._.js +3 -0
  169. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__65667b70._.js +3 -0
  170. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__675a763e._.js +3 -0
  171. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__803d07f0._.js +3 -0
  172. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__8075fe29._.js +3 -0
  173. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__8233e09b._.js +3 -0
  174. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__84cdc14a._.js +3 -0
  175. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__9ce722b4._.js +3 -0
  176. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__a2d7cbed._.js +3 -0
  177. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__aa677b0d._.js +3 -0
  178. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__ac744182._.js +3 -0
  179. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__bb9fca84._.js +4 -0
  180. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__bdc3963a._.js +3 -0
  181. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__f5c6d6b8._.js +3 -0
  182. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__fb91986f._.js +3 -0
  183. package/.next/standalone/packages/ui/.next/server/chunks/f825c_server_app_api_local-projects_list-directory_route_actions_d620ec1a.js +3 -0
  184. package/.next/standalone/packages/ui/.next/server/chunks/f825c_server_app_api_projects_[id]_specs_[spec]_status_route_actions_e9f1bdc5.js +3 -0
  185. package/.next/standalone/packages/ui/.next/server/chunks/node_modules__pnpm_731b55aa._.js +3 -0
  186. package/.next/standalone/packages/ui/.next/server/chunks/packages_ui__next-internal_server_app_api_local-projects_route_actions_9142d5ad.js +3 -0
  187. package/.next/standalone/packages/ui/.next/server/chunks/packages_ui__next-internal_server_app_api_projects_[id]_route_actions_bff49675.js +3 -0
  188. package/.next/standalone/packages/ui/.next/server/chunks/packages_ui_src_lib_db_index_ts_556307fa._.js +64 -5
  189. package/.next/standalone/packages/ui/.next/server/chunks/packages_ui_src_lib_specs_sources_database-source_ts_0bd881ee._.js +3 -0
  190. package/.next/standalone/packages/ui/.next/server/chunks/packages_ui_src_lib_specs_sources_database-source_ts_baa0160d._.js +3 -0
  191. package/.next/standalone/packages/ui/.next/server/chunks/ssr/38a22_sonner_dist_index_mjs_207730fe._.js +3 -0
  192. package/.next/standalone/packages/ui/.next/server/chunks/ssr/6e9bd_next_dist_7af75658._.js +3 -0
  193. package/.next/standalone/packages/ui/.next/server/chunks/ssr/{_a5b58449._.js → 6e9bd_next_dist_df5dcbe9._.js} +2 -2
  194. package/.next/standalone/packages/ui/.next/server/chunks/ssr/730ea_ui__next-internal_server_app_projects_[projectId]_specs_page_actions_82e32fe4.js +3 -0
  195. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__01bfc8ff._.js +3 -0
  196. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__1d0c2012._.js +1 -1
  197. package/.next/standalone/packages/ui/.next/server/chunks/ssr/{[root-of-the-server]__41f5b5c0._.js → [root-of-the-server]__4ec37765._.js} +2 -2
  198. package/.next/standalone/packages/ui/.next/server/chunks/ssr/{[root-of-the-server]__1af33d49._.js → [root-of-the-server]__50122e7e._.js} +2 -2
  199. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__5382b397._.js +3 -0
  200. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__73f60f12._.js +7 -0
  201. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__88a691ee._.js +3 -0
  202. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__a7ae8552._.js +7 -0
  203. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__bdbbba01._.js +3 -0
  204. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__c592f5d1._.js +3 -0
  205. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__cc589a54._.js +3 -0
  206. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__ec5b96a5._.js +3 -0
  207. package/.next/standalone/packages/ui/.next/server/chunks/ssr/{[root-of-the-server]__cbbbfb5d._.js → [root-of-the-server]__fd80e4dd._.js} +2 -2
  208. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_000dd317._.js +1 -1
  209. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_196b5a83._.js +3 -0
  210. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_39562b2a._.js +4 -0
  211. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_3b617676._.js +1 -1
  212. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_4129cc0f._.js +3 -0
  213. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_6174313a._.js +3 -0
  214. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_6e4dd8b6._.js +3 -0
  215. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_85effc18._.js +4 -0
  216. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_ad8c1e99._.js +1 -1
  217. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_bae6d2b8._.js +4 -0
  218. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_c2f54661._.js +5 -0
  219. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_fdd7780b._.js +4 -0
  220. package/.next/standalone/packages/ui/.next/server/chunks/ssr/f825c_server_app_projects_[projectId]_specs_[specId]_page_actions_22d9c35e.js +3 -0
  221. package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_af9d3830._.js +3 -0
  222. package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui__next-internal_server_app_projects_[projectId]_page_actions_f2986585.js +3 -0
  223. package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui__next-internal_server_app_projects_page_actions_715940ea.js +3 -0
  224. package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui_src_app_projects_[projectId]_be242d6c._.js +3 -0
  225. package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui_src_app_projects_[projectId]_project-context-syncer_tsx_7954ea3b._.js +3 -0
  226. package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui_src_app_projects_page_tsx_6e166c8e._.js +3 -0
  227. package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui_src_app_specs_specs-client_tsx_0bb8f8f8._.js +1 -1
  228. package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui_src_components_ui_select_tsx_7e21d40f._.js +3 -0
  229. package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui_src_lib_specs_sources_database-source_ts_f7186c2a._.js +60 -1
  230. package/.next/standalone/packages/ui/.next/server/middleware-build-manifest.js +5 -4
  231. package/.next/standalone/packages/ui/.next/server/pages/404.html +2 -2
  232. package/.next/standalone/packages/ui/.next/server/pages/500.html +2 -2
  233. package/.next/standalone/packages/ui/.next/server/server-reference-manifest.js +1 -1
  234. package/.next/standalone/packages/ui/.next/server/server-reference-manifest.json +1 -1
  235. package/.next/standalone/packages/ui/.next/static/chunks/07f48b316e895080.js +1 -0
  236. package/.next/standalone/packages/ui/.next/static/chunks/0a7be410b438418a.js +1 -0
  237. package/.next/standalone/packages/ui/.next/static/chunks/1089ca88f6bef846.js +1 -0
  238. package/.next/standalone/packages/ui/.next/static/chunks/17471c87082c392c.js +5 -0
  239. package/.next/standalone/packages/ui/.next/static/chunks/220ba5cb8fe4dd69.js +1 -0
  240. package/.next/standalone/packages/ui/.next/static/chunks/35ccd3286e538bd2.js +1 -0
  241. package/.next/standalone/packages/ui/.next/static/chunks/571033caca823138.js +1 -0
  242. package/.next/standalone/packages/ui/.next/static/chunks/5a6fc30cd64085b4.css +1 -0
  243. package/.next/standalone/packages/ui/.next/static/chunks/5c2072ad938de8ed.js +1 -0
  244. package/.next/standalone/packages/ui/.next/static/chunks/843e1dfdc28e1385.js +1 -0
  245. package/.next/standalone/packages/ui/.next/static/chunks/9dad7fd31627df80.js +1 -0
  246. package/.next/standalone/packages/ui/.next/static/chunks/{c3d4d07de959ecf1.js → a055d4b2866ff8d4.js} +1 -1
  247. package/.next/standalone/packages/ui/.next/static/chunks/afb7c5a4255f4081.js +3 -0
  248. package/.next/{static/chunks/c557ac675be79771.js → standalone/packages/ui/.next/static/chunks/b760a3a9c2c8be28.js} +1 -1
  249. package/.next/standalone/packages/ui/.next/static/chunks/dcdd95180149fa10.js +1 -0
  250. package/.next/standalone/packages/ui/.next/static/chunks/ebd89051637b9a47.js +4 -0
  251. package/.next/standalone/packages/ui/.next/static/chunks/f9db24028d8c058e.js +1 -0
  252. package/.next/standalone/packages/ui/.next/static/chunks/fb640f50455ba34f.js +1 -0
  253. package/.next/standalone/packages/ui/.next/static/chunks/turbopack-b9690cacbf9fe48c.js +3 -0
  254. package/.next/standalone/packages/ui/bin/ui.js +17 -7
  255. package/.next/standalone/packages/ui/package.json +3 -1
  256. package/.next/standalone/packages/ui/src/app/api/local-projects/[id]/route.ts +117 -0
  257. package/.next/standalone/packages/ui/src/app/api/local-projects/discover/route.ts +41 -0
  258. package/.next/standalone/packages/ui/src/app/api/local-projects/list-directory/route.ts +38 -0
  259. package/.next/standalone/packages/ui/src/app/api/local-projects/route.ts +63 -0
  260. package/.next/standalone/packages/ui/src/app/api/projects/[id]/route.ts +97 -0
  261. package/.next/standalone/packages/ui/src/app/api/projects/[id]/specs/[spec]/route.ts +38 -0
  262. package/.next/standalone/packages/ui/src/app/api/projects/[id]/specs/[spec]/status/route.ts +97 -0
  263. package/.next/standalone/packages/ui/src/app/api/projects/[id]/specs/route.ts +7 -0
  264. package/.next/standalone/packages/ui/src/app/api/projects/[id]/stats/route.ts +19 -0
  265. package/.next/standalone/packages/ui/src/app/api/projects/route.ts +48 -1
  266. package/.next/standalone/packages/ui/src/app/dashboard-client.tsx +67 -6
  267. package/.next/standalone/packages/ui/src/app/layout.tsx +11 -8
  268. package/.next/standalone/packages/ui/src/app/not-found.tsx +1 -1
  269. package/.next/standalone/packages/ui/src/app/projects/[projectId]/layout.tsx +18 -0
  270. package/.next/standalone/packages/ui/src/app/projects/[projectId]/page.tsx +10 -0
  271. package/.next/standalone/packages/ui/src/app/projects/[projectId]/project-context-syncer.tsx +16 -0
  272. package/.next/standalone/packages/ui/src/app/projects/[projectId]/specs/[specId]/page.tsx +34 -0
  273. package/.next/standalone/packages/ui/src/app/projects/[projectId]/specs/page.tsx +20 -0
  274. package/.next/standalone/packages/ui/src/app/projects/page.tsx +156 -0
  275. package/.next/standalone/packages/ui/src/app/specs/specs-client.tsx +7 -2
  276. package/.next/standalone/packages/ui/src/components/create-project-dialog.tsx +139 -0
  277. package/.next/standalone/packages/ui/src/components/directory-picker.tsx +191 -0
  278. package/.next/standalone/packages/ui/src/components/main-sidebar.tsx +4 -0
  279. package/.next/standalone/packages/ui/src/components/project-switcher.tsx +139 -0
  280. package/.next/standalone/packages/ui/src/components/ui/dropdown-menu.tsx +200 -0
  281. package/.next/standalone/packages/ui/src/components/ui/popover.tsx +31 -0
  282. package/.next/standalone/packages/ui/src/contexts/project-context.tsx +229 -0
  283. package/.next/standalone/packages/ui/src/lib/db/index.ts +100 -0
  284. package/.next/standalone/packages/ui/src/lib/projects/index.ts +7 -0
  285. package/.next/standalone/packages/ui/src/lib/projects/registry.ts +467 -0
  286. package/.next/standalone/packages/ui/src/lib/projects/types.ts +37 -0
  287. package/.next/standalone/packages/ui/src/lib/specs/service.ts +13 -1
  288. package/.next/standalone/packages/ui/src/lib/specs/sources/multi-project-source.ts +258 -0
  289. package/.next/standalone/packages/ui/tsconfig.tsbuildinfo +1 -1
  290. package/.next/static/chunks/07f48b316e895080.js +1 -0
  291. package/.next/static/chunks/0a7be410b438418a.js +1 -0
  292. package/.next/static/chunks/1089ca88f6bef846.js +1 -0
  293. package/.next/static/chunks/17471c87082c392c.js +5 -0
  294. package/.next/static/chunks/220ba5cb8fe4dd69.js +1 -0
  295. package/.next/static/chunks/35ccd3286e538bd2.js +1 -0
  296. package/.next/static/chunks/571033caca823138.js +1 -0
  297. package/.next/static/chunks/5a6fc30cd64085b4.css +1 -0
  298. package/.next/static/chunks/5c2072ad938de8ed.js +1 -0
  299. package/.next/static/chunks/843e1dfdc28e1385.js +1 -0
  300. package/.next/static/chunks/9dad7fd31627df80.js +1 -0
  301. package/.next/static/chunks/{c3d4d07de959ecf1.js → a055d4b2866ff8d4.js} +1 -1
  302. package/.next/static/chunks/afb7c5a4255f4081.js +3 -0
  303. package/.next/{standalone/packages/ui/.next/static/chunks/c557ac675be79771.js → static/chunks/b760a3a9c2c8be28.js} +1 -1
  304. package/.next/static/chunks/dcdd95180149fa10.js +1 -0
  305. package/.next/static/chunks/ebd89051637b9a47.js +4 -0
  306. package/.next/static/chunks/f9db24028d8c058e.js +1 -0
  307. package/.next/static/chunks/fb640f50455ba34f.js +1 -0
  308. package/.next/static/chunks/turbopack-b9690cacbf9fe48c.js +3 -0
  309. package/bin/ui.js +17 -7
  310. package/package.json +3 -1
  311. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__175bef84._.js +0 -3
  312. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__3971eae5._.js +0 -3
  313. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__482b093a._.js +0 -21
  314. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__6bca1621._.js +0 -3
  315. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__87a3475a._.js +0 -3
  316. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__9f0f4c0b._.js +0 -3
  317. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__c1c9f5f5._.js +0 -3
  318. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__c6689757._.js +0 -3
  319. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__cd1fb0a2._.js +0 -4
  320. package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__e2071b2e._.js +0 -3
  321. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__299c81cc._.js +0 -3
  322. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__5ca2e973._.js +0 -3
  323. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__b2fe773d._.js +0 -3
  324. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__e79a982a._.js +0 -7
  325. package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__ff03fc1e._.js +0 -7
  326. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_66209e84._.js +0 -3
  327. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_6cd9a5e0._.js +0 -3
  328. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_b483c9fe._.js +0 -3
  329. package/.next/standalone/packages/ui/.next/server/chunks/ssr/_b5040d31._.js +0 -5
  330. package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_9710705b._.js +0 -3
  331. package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_b8ff10b9._.js +0 -3
  332. package/.next/standalone/packages/ui/.next/static/chunks/093ea4b175adb770.js +0 -1
  333. package/.next/standalone/packages/ui/.next/static/chunks/5f97d665a4d9dc62.js +0 -3
  334. package/.next/standalone/packages/ui/.next/static/chunks/9a80c22382ddcfaf.css +0 -1
  335. package/.next/standalone/packages/ui/.next/static/chunks/9b7b7024c39c5f99.js +0 -1
  336. package/.next/standalone/packages/ui/.next/static/chunks/aa47b212786d8695.js +0 -1
  337. package/.next/standalone/packages/ui/.next/static/chunks/ae04dcd433be6dab.js +0 -1
  338. package/.next/standalone/packages/ui/.next/static/chunks/c0fe4c94c7282ac0.js +0 -4
  339. package/.next/standalone/packages/ui/.next/static/chunks/c61cbb6a0ba3b6ab.js +0 -1
  340. package/.next/standalone/packages/ui/.next/static/chunks/d79bf953f0dfb650.js +0 -1
  341. package/.next/standalone/packages/ui/.next/static/chunks/e50fb8d0b728cd35.js +0 -5
  342. package/.next/standalone/packages/ui/.next/static/chunks/e6e238dbf1d3e740.js +0 -1
  343. package/.next/standalone/packages/ui/.next/static/chunks/turbopack-9cc79aa1b34ffcbe.js +0 -3
  344. package/.next/static/chunks/093ea4b175adb770.js +0 -1
  345. package/.next/static/chunks/5f97d665a4d9dc62.js +0 -3
  346. package/.next/static/chunks/9a80c22382ddcfaf.css +0 -1
  347. package/.next/static/chunks/9b7b7024c39c5f99.js +0 -1
  348. package/.next/static/chunks/aa47b212786d8695.js +0 -1
  349. package/.next/static/chunks/ae04dcd433be6dab.js +0 -1
  350. package/.next/static/chunks/c0fe4c94c7282ac0.js +0 -4
  351. package/.next/static/chunks/c61cbb6a0ba3b6ab.js +0 -1
  352. package/.next/static/chunks/d79bf953f0dfb650.js +0 -1
  353. package/.next/static/chunks/e50fb8d0b728cd35.js +0 -5
  354. package/.next/static/chunks/e6e238dbf1d3e740.js +0 -1
  355. package/.next/static/chunks/turbopack-9cc79aa1b34ffcbe.js +0 -3
  356. /package/.next/standalone/packages/ui/.next/static/{C8sZuJV5DQETshOIgjsmH → T1wNN9JmkdwBabQsqL-tC}/_buildManifest.js +0 -0
  357. /package/.next/standalone/packages/ui/.next/static/{C8sZuJV5DQETshOIgjsmH → T1wNN9JmkdwBabQsqL-tC}/_clientMiddlewareManifest.json +0 -0
  358. /package/.next/standalone/packages/ui/.next/static/{C8sZuJV5DQETshOIgjsmH → T1wNN9JmkdwBabQsqL-tC}/_ssgManifest.js +0 -0
  359. /package/.next/static/{C8sZuJV5DQETshOIgjsmH → T1wNN9JmkdwBabQsqL-tC}/_buildManifest.js +0 -0
  360. /package/.next/static/{C8sZuJV5DQETshOIgjsmH → T1wNN9JmkdwBabQsqL-tC}/_clientMiddlewareManifest.json +0 -0
  361. /package/.next/static/{C8sZuJV5DQETshOIgjsmH → T1wNN9JmkdwBabQsqL-tC}/_ssgManifest.js +0 -0
@@ -0,0 +1,2 @@
1
+ globalThis.__RSC_MANIFEST = globalThis.__RSC_MANIFEST || {};
2
+ globalThis.__RSC_MANIFEST["/projects/page"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/client/components/layout-router.js <module evaluation>":{"id":24050,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/client/components/layout-router.js":{"id":24050,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/client/components/render-from-template-context.js <module evaluation>":{"id":70127,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":70127,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/client/components/client-page.js <module evaluation>":{"id":5451,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/client/components/client-page.js":{"id":5451,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/client/components/client-segment.js <module evaluation>":{"id":99833,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/client/components/client-segment.js":{"id":99833,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js <module evaluation>":{"id":13832,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":13832,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js <module evaluation>":{"id":90269,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":90269,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/lib/framework/boundary-components.js <module evaluation>":{"id":45442,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":45442,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>":{"id":65393,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/client/components/builtin/global-error.js":{"id":65393,"name":"*","chunks":["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"async":false},"[project]/packages/ui/src/components/navigation.tsx <module evaluation>":{"id":26160,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"async":false},"[project]/packages/ui/src/components/navigation.tsx":{"id":26160,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"async":false},"[project]/packages/ui/src/components/main-sidebar.tsx <module evaluation>":{"id":42634,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"async":false},"[project]/packages/ui/src/components/main-sidebar.tsx":{"id":42634,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"async":false},"[project]/packages/ui/src/components/theme-provider.tsx <module evaluation>":{"id":14636,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"async":false},"[project]/packages/ui/src/components/theme-provider.tsx":{"id":14636,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"async":false},"[project]/packages/ui/src/components/ui/toast.tsx <module evaluation>":{"id":74916,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"async":false},"[project]/packages/ui/src/components/ui/toast.tsx":{"id":74916,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"async":false},"[project]/packages/ui/src/contexts/project-context.tsx <module evaluation>":{"id":20648,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"async":false},"[project]/packages/ui/src/contexts/project-context.tsx":{"id":20648,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"async":false},"[project]/packages/ui/src/app/error.tsx <module evaluation>":{"id":68399,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js","/_next/static/chunks/4a7396c9a77e64d5.js"],"async":false},"[project]/packages/ui/src/app/error.tsx":{"id":68399,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js","/_next/static/chunks/4a7396c9a77e64d5.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/client/app-dir/link.js <module evaluation>":{"id":87985,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"async":false},"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/client/app-dir/link.js":{"id":87985,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"async":false},"[project]/packages/ui/src/app/projects/page.tsx <module evaluation>":{"id":40898,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js","/_next/static/chunks/dcdd95180149fa10.js","/_next/static/chunks/07f48b316e895080.js"],"async":false},"[project]/packages/ui/src/app/projects/page.tsx":{"id":40898,"name":"*","chunks":["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js","/_next/static/chunks/dcdd95180149fa10.js","/_next/static/chunks/07f48b316e895080.js"],"async":false}},"ssrModuleMapping":{"24050":{"*":{"id":5507,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__fd80e4dd._.js","server/chunks/ssr/6e9bd_next_dist_esm_25672c28._.js"],"async":false}},"70127":{"*":{"id":29555,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__fd80e4dd._.js","server/chunks/ssr/6e9bd_next_dist_esm_25672c28._.js"],"async":false}},"5451":{"*":{"id":44063,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__fd80e4dd._.js","server/chunks/ssr/6e9bd_next_dist_esm_25672c28._.js"],"async":false}},"99833":{"*":{"id":4160,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__fd80e4dd._.js","server/chunks/ssr/6e9bd_next_dist_esm_25672c28._.js"],"async":false}},"13832":{"*":{"id":52382,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__fd80e4dd._.js","server/chunks/ssr/6e9bd_next_dist_esm_25672c28._.js"],"async":false}},"90269":{"*":{"id":35607,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__fd80e4dd._.js","server/chunks/ssr/6e9bd_next_dist_esm_25672c28._.js"],"async":false}},"45442":{"*":{"id":29109,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__fd80e4dd._.js","server/chunks/ssr/6e9bd_next_dist_esm_25672c28._.js"],"async":false}},"65393":{"*":{"id":61860,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__fd80e4dd._.js","server/chunks/ssr/6e9bd_next_dist_esm_25672c28._.js"],"async":false}},"26160":{"*":{"id":10660,"name":"*","chunks":["server/chunks/ssr/_4129cc0f._.js","server/chunks/ssr/_196b5a83._.js","server/chunks/ssr/38a22_sonner_dist_index_mjs_207730fe._.js","server/chunks/ssr/[root-of-the-server]__a7ae8552._.js","server/chunks/ssr/6e9bd_next_dist_7af75658._.js","server/chunks/ssr/_6e4dd8b6._.js","server/chunks/ssr/_c2f54661._.js","server/chunks/ssr/packages_ui_src_lib_utils_ts_259f88e4._.js","server/chunks/ssr/6e9bd_next_40720940._.js"],"async":false}},"42634":{"*":{"id":50338,"name":"*","chunks":["server/chunks/ssr/_4129cc0f._.js","server/chunks/ssr/_196b5a83._.js","server/chunks/ssr/38a22_sonner_dist_index_mjs_207730fe._.js","server/chunks/ssr/[root-of-the-server]__a7ae8552._.js","server/chunks/ssr/6e9bd_next_dist_7af75658._.js","server/chunks/ssr/_6e4dd8b6._.js","server/chunks/ssr/_c2f54661._.js","server/chunks/ssr/packages_ui_src_lib_utils_ts_259f88e4._.js","server/chunks/ssr/6e9bd_next_40720940._.js"],"async":false}},"14636":{"*":{"id":25726,"name":"*","chunks":["server/chunks/ssr/_4129cc0f._.js","server/chunks/ssr/_196b5a83._.js","server/chunks/ssr/38a22_sonner_dist_index_mjs_207730fe._.js","server/chunks/ssr/[root-of-the-server]__a7ae8552._.js","server/chunks/ssr/6e9bd_next_dist_7af75658._.js","server/chunks/ssr/_6e4dd8b6._.js","server/chunks/ssr/_c2f54661._.js","server/chunks/ssr/packages_ui_src_lib_utils_ts_259f88e4._.js","server/chunks/ssr/6e9bd_next_40720940._.js"],"async":false}},"74916":{"*":{"id":68607,"name":"*","chunks":["server/chunks/ssr/_4129cc0f._.js","server/chunks/ssr/_196b5a83._.js","server/chunks/ssr/38a22_sonner_dist_index_mjs_207730fe._.js","server/chunks/ssr/[root-of-the-server]__a7ae8552._.js","server/chunks/ssr/6e9bd_next_dist_7af75658._.js","server/chunks/ssr/_6e4dd8b6._.js","server/chunks/ssr/_c2f54661._.js","server/chunks/ssr/packages_ui_src_lib_utils_ts_259f88e4._.js","server/chunks/ssr/6e9bd_next_40720940._.js"],"async":false}},"20648":{"*":{"id":72245,"name":"*","chunks":["server/chunks/ssr/_4129cc0f._.js","server/chunks/ssr/_196b5a83._.js","server/chunks/ssr/38a22_sonner_dist_index_mjs_207730fe._.js","server/chunks/ssr/[root-of-the-server]__a7ae8552._.js","server/chunks/ssr/6e9bd_next_dist_7af75658._.js","server/chunks/ssr/_6e4dd8b6._.js","server/chunks/ssr/_c2f54661._.js","server/chunks/ssr/packages_ui_src_lib_utils_ts_259f88e4._.js","server/chunks/ssr/6e9bd_next_40720940._.js"],"async":false}},"68399":{"*":{"id":83166,"name":"*","chunks":["server/chunks/ssr/_4129cc0f._.js","server/chunks/ssr/_196b5a83._.js","server/chunks/ssr/38a22_sonner_dist_index_mjs_207730fe._.js","server/chunks/ssr/[root-of-the-server]__a7ae8552._.js","server/chunks/ssr/6e9bd_next_dist_7af75658._.js","server/chunks/ssr/_6e4dd8b6._.js","server/chunks/ssr/_c2f54661._.js","server/chunks/ssr/packages_ui_src_lib_utils_ts_259f88e4._.js","server/chunks/ssr/6e9bd_next_40720940._.js","server/chunks/ssr/packages_ui_src_app_error_tsx_d8203bfe._.js"],"async":false}},"87985":{"*":{"id":1926,"name":"*","chunks":["server/chunks/ssr/_4129cc0f._.js","server/chunks/ssr/_196b5a83._.js","server/chunks/ssr/38a22_sonner_dist_index_mjs_207730fe._.js","server/chunks/ssr/[root-of-the-server]__a7ae8552._.js","server/chunks/ssr/6e9bd_next_dist_7af75658._.js","server/chunks/ssr/_6e4dd8b6._.js","server/chunks/ssr/_c2f54661._.js","server/chunks/ssr/packages_ui_src_lib_utils_ts_259f88e4._.js","server/chunks/ssr/6e9bd_next_40720940._.js"],"async":false}},"40898":{"*":{"id":31428,"name":"*","chunks":["server/chunks/ssr/_4129cc0f._.js","server/chunks/ssr/_196b5a83._.js","server/chunks/ssr/38a22_sonner_dist_index_mjs_207730fe._.js","server/chunks/ssr/[root-of-the-server]__a7ae8552._.js","server/chunks/ssr/6e9bd_next_dist_7af75658._.js","server/chunks/ssr/_6e4dd8b6._.js","server/chunks/ssr/_c2f54661._.js","server/chunks/ssr/packages_ui_src_lib_utils_ts_259f88e4._.js","server/chunks/ssr/6e9bd_next_40720940._.js","server/chunks/ssr/_6174313a._.js","server/chunks/ssr/packages_ui_src_app_projects_page_tsx_6e166c8e._.js","server/chunks/ssr/node_modules__pnpm_af9d3830._.js"],"async":false}}},"edgeSSRModuleMapping":{},"rscModuleMapping":{"24050":{"*":{"id":88712,"name":"*","chunks":[],"async":false}},"70127":{"*":{"id":21527,"name":"*","chunks":[],"async":false}},"5451":{"*":{"id":87484,"name":"*","chunks":[],"async":false}},"99833":{"*":{"id":20169,"name":"*","chunks":[],"async":false}},"13832":{"*":{"id":18951,"name":"*","chunks":[],"async":false}},"90269":{"*":{"id":87992,"name":"*","chunks":[],"async":false}},"45442":{"*":{"id":18077,"name":"*","chunks":[],"async":false}},"65393":{"*":{"id":86896,"name":"*","chunks":[],"async":false}},"26160":{"*":{"id":4480,"name":"*","chunks":[],"async":false}},"42634":{"*":{"id":18100,"name":"*","chunks":[],"async":false}},"14636":{"*":{"id":64731,"name":"*","chunks":[],"async":false}},"74916":{"*":{"id":93515,"name":"*","chunks":[],"async":false}},"20648":{"*":{"id":34126,"name":"*","chunks":[],"async":false}},"68399":{"*":{"id":57869,"name":"*","chunks":[],"async":false}},"87985":{"*":{"id":3594,"name":"*","chunks":[],"async":false}},"40898":{"*":{"id":45776,"name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{},"entryCSSFiles":{"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/client/components/builtin/global-error":[],"[project]/packages/ui/src/app/layout":[{"path":"static/chunks/5a6fc30cd64085b4.css","inlined":false}],"[project]/packages/ui/src/app/error":[{"path":"static/chunks/5a6fc30cd64085b4.css","inlined":false}],"[project]/packages/ui/src/app/not-found":[{"path":"static/chunks/5a6fc30cd64085b4.css","inlined":false}],"[project]/packages/ui/src/app/projects/page":[{"path":"static/chunks/5a6fc30cd64085b4.css","inlined":false}]},"entryJSFiles":{"[project]/node_modules/.pnpm/next@16.0.1_@babel+core@7.28.5_@opentelemetry+api@1.9.0_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/next/dist/client/components/builtin/global-error":["static/chunks/6a05a93ec8fa7b83.js","static/chunks/a02c1f50ff00204f.js"],"[project]/packages/ui/src/app/layout":["static/chunks/220ba5cb8fe4dd69.js","static/chunks/b9b9d7565bc2c2ad.js","static/chunks/1089ca88f6bef846.js","static/chunks/afb7c5a4255f4081.js","static/chunks/17471c87082c392c.js","static/chunks/f9db24028d8c058e.js"],"[project]/packages/ui/src/app/error":["static/chunks/220ba5cb8fe4dd69.js","static/chunks/b9b9d7565bc2c2ad.js","static/chunks/1089ca88f6bef846.js","static/chunks/afb7c5a4255f4081.js","static/chunks/17471c87082c392c.js","static/chunks/f9db24028d8c058e.js","static/chunks/4a7396c9a77e64d5.js"],"[project]/packages/ui/src/app/not-found":["static/chunks/220ba5cb8fe4dd69.js","static/chunks/b9b9d7565bc2c2ad.js","static/chunks/1089ca88f6bef846.js","static/chunks/afb7c5a4255f4081.js","static/chunks/17471c87082c392c.js","static/chunks/f9db24028d8c058e.js"],"[project]/packages/ui/src/app/projects/page":["static/chunks/220ba5cb8fe4dd69.js","static/chunks/b9b9d7565bc2c2ad.js","static/chunks/1089ca88f6bef846.js","static/chunks/afb7c5a4255f4081.js","static/chunks/17471c87082c392c.js","static/chunks/f9db24028d8c058e.js","static/chunks/dcdd95180149fa10.js","static/chunks/07f48b316e895080.js"]}}
@@ -0,0 +1,2 @@
1
+ <!DOCTYPE html><!--T1wNN9JmkdwBabQsqL_tC--><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5"/><link rel="stylesheet" href="/_next/static/chunks/5a6fc30cd64085b4.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/b760a3a9c2c8be28.js"/><script src="/_next/static/chunks/ebd89051637b9a47.js" async=""></script><script src="/_next/static/chunks/7f732ea69e643219.js" async=""></script><script src="/_next/static/chunks/f3ec9fd77a8618b1.js" async=""></script><script src="/_next/static/chunks/5c2072ad938de8ed.js" async=""></script><script src="/_next/static/chunks/turbopack-b9690cacbf9fe48c.js" async=""></script><script src="/_next/static/chunks/6a05a93ec8fa7b83.js" async=""></script><script src="/_next/static/chunks/a02c1f50ff00204f.js" async=""></script><script src="/_next/static/chunks/220ba5cb8fe4dd69.js" async=""></script><script src="/_next/static/chunks/b9b9d7565bc2c2ad.js" async=""></script><script src="/_next/static/chunks/1089ca88f6bef846.js" async=""></script><script src="/_next/static/chunks/afb7c5a4255f4081.js" async=""></script><script src="/_next/static/chunks/17471c87082c392c.js" async=""></script><script src="/_next/static/chunks/f9db24028d8c058e.js" async=""></script><script src="/_next/static/chunks/dcdd95180149fa10.js" async=""></script><script src="/_next/static/chunks/07f48b316e895080.js" async=""></script><script src="/_next/static/chunks/4a7396c9a77e64d5.js" async=""></script><title>LeanSpec Web - Interactive Spec Showcase</title><meta name="description" content="Browse and explore LeanSpec specifications in a rich, interactive format"/><meta property="og:title" content="LeanSpec Web"/><meta property="og:description" content="Browse and explore LeanSpec specifications in a rich, interactive format"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary"/><meta name="twitter:title" content="LeanSpec Web"/><meta name="twitter:description" content="Browse and explore LeanSpec specifications in a rich, interactive format"/><link rel="icon" href="/favicon.ico"/><link rel="icon" href="/logo.svg" type="image/svg+xml"/><link rel="apple-touch-icon" href="/logo.svg"/><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body class="antialiased bg-background overflow-x-hidden"><div hidden=""><!--$--><!--/$--></div><script>((a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=["light","dark"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c="class"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d),i.classList.add(f&&f[b]?f[b]:b)):i.setAttribute(a,b)}),c=b,h&&j.includes(c)&&(i.style.colorScheme=c)}if(d)k(d);else try{let a=localStorage.getItem(b)||c,d=g&&"system"===a?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":a;k(d)}catch(a){}})("class","theme","system",null,["light","dark"],null,true,true)</script><header class="sticky top-0 z-50 w-full h-14 border-b border-border bg-background"><div class="flex items-center justify-between h-full px-2 sm:px-4"><div class="flex items-center gap-2 sm:gap-4 min-w-0 flex-1"><button class="inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 hover:bg-accent hover:text-accent-foreground lg:hidden h-9 w-9 shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu h-5 w-5" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg><span class="sr-only">Toggle menu</span></button><a class="flex items-center space-x-2 shrink-0" href="/"><img alt="LeanSpec" loading="lazy" width="32" height="32" decoding="async" data-nimg="1" class="h-7 w-7 sm:h-8 sm:w-8 dark:hidden" style="color:transparent" src="/logo-with-bg.svg"/><img alt="LeanSpec" loading="lazy" width="32" height="32" decoding="async" data-nimg="1" class="h-7 w-7 sm:h-8 sm:w-8 hidden dark:block" style="color:transparent" src="/logo-dark-bg.svg"/><span class="font-bold text-lg sm:text-xl hidden sm:inline">LeanSpec</span></a><div class="hidden md:block min-w-0"><nav class="flex items-center gap-1 text-sm text-muted-foreground"><div class="flex items-center gap-1"><a class="hover:text-foreground transition-colors" href="/">Home</a></div></nav></div></div><div class="flex items-center gap-1 sm:gap-2 shrink-0"><button class="inline-flex items-center gap-2 px-2 sm:px-3 py-2 text-sm text-muted-foreground hover:text-foreground transition-colors border rounded-md hover:border-foreground/20"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search h-4 w-4" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg><span class="hidden sm:inline">Quick search...</span><kbd class="hidden md:inline-flex pointer-events-none h-5 select-none items-center gap-1 rounded border bg-muted px-1.5 font-mono text-[10px] font-medium opacity-100"><span class="text-xs">⌘</span>K</kbd></button><div data-state="closed"><button class="inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 hover:bg-accent hover:text-accent-foreground h-9 w-9" disabled="" aria-label="Toggle theme"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sun h-5 w-5" aria-hidden="true"><circle cx="12" cy="12" r="4"></circle><path d="M12 2v2"></path><path d="M12 20v2"></path><path d="m4.93 4.93 1.41 1.41"></path><path d="m17.66 17.66 1.41 1.41"></path><path d="M2 12h2"></path><path d="M20 12h2"></path><path d="m6.34 17.66-1.41 1.41"></path><path d="m19.07 4.93-1.41 1.41"></path></svg></button></div><a href="https://www.lean-spec.dev" target="_blank" rel="noopener noreferrer" aria-label="Documentation" class="inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 hover:bg-accent hover:text-accent-foreground h-9 w-9 sm:h-10 sm:w-10" data-state="closed"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open h-5 w-5" aria-hidden="true"><path d="M12 7v14"></path><path d="M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z"></path></svg></a><a href="https://github.com/codervisor/lean-spec" target="_blank" rel="noopener noreferrer" aria-label="GitHub repository" class="inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 hover:bg-accent hover:text-accent-foreground h-9 w-9 sm:h-10 sm:w-10" data-state="closed"><img alt="GitHub" loading="lazy" width="20" height="20" decoding="async" data-nimg="1" class="hidden dark:block" style="color:transparent" src="/github-mark-white.svg"/><img alt="GitHub" loading="lazy" width="20" height="20" decoding="async" data-nimg="1" class="dark:hidden" style="color:transparent" src="/github-mark.svg"/></a></div></div></header><div class="flex w-full min-w-0"><aside class="sticky top-14 h-[calc(100vh-3.5rem)] border-r border-border bg-background transition-all duration-300 flex-shrink-0 hidden lg:flex lg:w-[240px]"><div class="flex flex-col h-full w-full"><div class="lg:hidden flex justify-end p-2 border-b border-border"><button class="inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 hover:bg-accent hover:text-accent-foreground rounded-md text-xs h-8 w-8 p-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x h-4 w-4" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg><span class="sr-only">Close menu</span></button></div><div class="hidden lg:block p-2 border-t border-border"><button class="inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 hover:bg-accent hover:text-accent-foreground h-8 rounded-md px-3 text-xs w-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-left h-4 w-4 mr-2" aria-hidden="true"><path d="m15 18-6-6 6-6"></path></svg><span class="text-xs">Collapse</span></button></div></div></aside><main class="flex-1 min-h-[calc(100vh-3.5rem)] min-w-0 w-full lg:w-[calc(100vw-var(--main-sidebar-width,240px))]"><!--$?--><template id="B:0"></template><div class="min-h-screen bg-background"><section class="container mx-auto px-4 py-8"><div class="mb-8"><div class="animate-pulse rounded-md bg-muted h-10 w-64 mb-2"></div><div class="animate-pulse rounded-md bg-muted h-5 w-96"></div></div><div class="grid grid-cols-1 md:grid-cols-4 gap-4 mb-8"><div class="rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow"><div class="flex flex-col space-y-1.5 p-6 pb-3"><div class="animate-pulse rounded-md bg-muted h-4 w-24"></div></div><div class="p-6 pt-0"><div class="animate-pulse rounded-md bg-muted h-9 w-16"></div></div></div><div class="rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow"><div class="flex flex-col space-y-1.5 p-6 pb-3"><div class="animate-pulse rounded-md bg-muted h-4 w-24"></div></div><div class="p-6 pt-0"><div class="animate-pulse rounded-md bg-muted h-9 w-16"></div></div></div><div class="rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow"><div class="flex flex-col space-y-1.5 p-6 pb-3"><div class="animate-pulse rounded-md bg-muted h-4 w-24"></div></div><div class="p-6 pt-0"><div class="animate-pulse rounded-md bg-muted h-9 w-16"></div></div></div><div class="rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow"><div class="flex flex-col space-y-1.5 p-6 pb-3"><div class="animate-pulse rounded-md bg-muted h-4 w-24"></div></div><div class="p-6 pt-0"><div class="animate-pulse rounded-md bg-muted h-9 w-16"></div></div></div></div></section><section class="container mx-auto px-4 py-8"><div class="mb-6"><div class="animate-pulse rounded-md bg-muted h-8 w-48 mb-4"></div><div class="flex flex-col sm:flex-row gap-4 mb-6"><div class="animate-pulse rounded-md bg-muted h-9 flex-1"></div><div class="flex gap-2"><div class="animate-pulse rounded-md bg-muted h-9 w-32"></div><div class="animate-pulse rounded-md bg-muted h-9 w-32"></div></div></div><div class="animate-pulse rounded-md bg-muted h-4 w-48 mb-4"></div></div><div class="rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow"><div class="overflow-x-auto"><table class="w-full"><thead class="border-b"><tr><th class="px-6 py-3 text-left"><div class="animate-pulse rounded-md bg-muted h-4 w-12"></div></th><th class="px-6 py-3 text-left"><div class="animate-pulse rounded-md bg-muted h-4 w-16"></div></th><th class="px-6 py-3 text-left"><div class="animate-pulse rounded-md bg-muted h-4 w-16"></div></th><th class="px-6 py-3 text-left"><div class="animate-pulse rounded-md bg-muted h-4 w-16"></div></th></tr></thead><tbody class="divide-y"><tr><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-12"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-64"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-20"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-16"></div></td></tr><tr><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-12"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-64"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-20"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-16"></div></td></tr><tr><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-12"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-64"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-20"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-16"></div></td></tr><tr><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-12"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-64"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-20"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-16"></div></td></tr><tr><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-12"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-64"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-20"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-16"></div></td></tr><tr><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-12"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-64"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-20"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-16"></div></td></tr><tr><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-12"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-64"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-20"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-16"></div></td></tr><tr><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-12"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-64"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-20"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-16"></div></td></tr><tr><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-12"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-64"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-20"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-16"></div></td></tr><tr><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-12"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-5 w-64"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-20"></div></td><td class="px-6 py-4"><div class="animate-pulse rounded-md bg-muted h-6 w-16"></div></td></tr></tbody></table></div></div></section></div><!--/$--></main></div><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section><script>requestAnimationFrame(function(){$RT=performance.now()});</script><script src="/_next/static/chunks/b760a3a9c2c8be28.js" id="_R_" async=""></script><div hidden id="S:0"><div class="container max-w-5xl py-8 space-y-8"><div class="flex items-center justify-between"><div><h1 class="text-3xl font-bold tracking-tight">Projects</h1><p class="text-muted-foreground mt-2">Manage your LeanSpec projects and workspaces.</p></div><button class="inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 bg-primary text-primary-foreground shadow hover:bg-primary/90 h-9 px-4 py-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus mr-2 h-4 w-4" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg>Add Project</button></div><div class="flex items-center space-x-2"><div class="relative flex-1 max-w-sm"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search absolute left-2 top-2.5 h-4 w-4 text-muted-foreground" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg><input class="flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm pl-8" placeholder="Search projects..." value=""/></div></div><div class="grid gap-6 md:grid-cols-2 lg:grid-cols-3"><div class="col-span-full flex flex-col items-center justify-center py-12 text-center border rounded-lg border-dashed"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder-open h-10 w-10 text-muted-foreground mb-4" aria-hidden="true"><path d="m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2"></path></svg><h3 class="text-lg font-medium">No projects found</h3><p class="text-sm text-muted-foreground mt-1 mb-4">Get started by adding your first project.</p><button class="inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 bg-primary text-primary-foreground shadow hover:bg-primary/90 h-9 px-4 py-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus mr-2 h-4 w-4" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg>Add Project</button></div></div></div><!--$--><!--/$--></div><script>$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d||"/&"===d)if(0===h)break;else h--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data="$";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};
2
+ $RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};$RC("B:0","S:0")</script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n3:I[24050,[\"/_next/static/chunks/6a05a93ec8fa7b83.js\",\"/_next/static/chunks/a02c1f50ff00204f.js\"],\"default\"]\n4:I[70127,[\"/_next/static/chunks/6a05a93ec8fa7b83.js\",\"/_next/static/chunks/a02c1f50ff00204f.js\"],\"default\"]\n5:I[5451,[\"/_next/static/chunks/6a05a93ec8fa7b83.js\",\"/_next/static/chunks/a02c1f50ff00204f.js\"],\"ClientPageRoot\"]\n6:I[40898,[\"/_next/static/chunks/220ba5cb8fe4dd69.js\",\"/_next/static/chunks/b9b9d7565bc2c2ad.js\",\"/_next/static/chunks/1089ca88f6bef846.js\",\"/_next/static/chunks/afb7c5a4255f4081.js\",\"/_next/static/chunks/17471c87082c392c.js\",\"/_next/static/chunks/f9db24028d8c058e.js\",\"/_next/static/chunks/dcdd95180149fa10.js\",\"/_next/static/chunks/07f48b316e895080.js\"],\"default\"]\n9:I[45442,[\"/_next/static/chunks/6a05a93ec8fa7b83.js\",\"/_next/static/chunks/a02c1f50ff00204f.js\"],\"OutletBoundary\"]\na:\"$Sreact.suspense\"\ne:I[65393,[\"/_next/static/chunks/6a05a93ec8fa7b83.js\",\"/_next/static/chunks/a02c1f50ff00204f.js\"],\"default\"]\n:HL[\"/_next/static/chunks/5a6fc30cd64085b4.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"T1wNN9JmkdwBabQsqL-tC\",\"c\":[\"\",\"projects\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"projects\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/5a6fc30cd64085b4.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/220ba5cb8fe4dd69.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/b9b9d7565bc2c2ad.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/1089ca88f6bef846.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-3\",{\"src\":\"/_next/static/chunks/afb7c5a4255f4081.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-4\",{\"src\":\"/_next/static/chunks/17471c87082c392c.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-5\",{\"src\":\"/_next/static/chunks/f9db24028d8c058e.js\",\"async\":true,\"nonce\":\"$undefined\"}]],\"$L2\"]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L5\",null,{\"Component\":\"$6\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@7\",\"$@8\"]}}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/dcdd95180149fa10.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/07f48b316e895080.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$a\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@b\"}]}]]}],{},null,false,false]},null,false,false]},[[\"$\",\"div\",\"l\",{\"className\":\"min-h-screen bg-background\",\"children\":[[\"$\",\"section\",null,{\"className\":\"container mx-auto px-4 py-8\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-8\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-10 w-64 mb-2\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-96\"}]]}],[\"$\",\"div\",null,{\"className\":\"grid grid-cols-1 md:grid-cols-4 gap-4 mb-8\",\"children\":[[\"$\",\"div\",\"0\",{\"ref\":\"$undefined\",\"className\":\"rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow\",\"children\":[[\"$\",\"div\",null,{\"ref\":\"$undefined\",\"className\":\"flex flex-col space-y-1.5 p-6 pb-3\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-4 w-24\"}]}],[\"$\",\"div\",null,{\"ref\":\"$undefined\",\"className\":\"p-6 pt-0\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-9 w-16\"}]}]]}],[\"$\",\"div\",\"1\",{\"ref\":\"$undefined\",\"className\":\"rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow\",\"children\":[[\"$\",\"div\",null,{\"ref\":\"$undefined\",\"className\":\"flex flex-col space-y-1.5 p-6 pb-3\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-4 w-24\"}]}],[\"$\",\"div\",null,{\"ref\":\"$undefined\",\"className\":\"p-6 pt-0\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-9 w-16\"}]}]]}],[\"$\",\"div\",\"2\",{\"ref\":\"$undefined\",\"className\":\"rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow\",\"children\":[[\"$\",\"div\",null,{\"ref\":\"$undefined\",\"className\":\"flex flex-col space-y-1.5 p-6 pb-3\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-4 w-24\"}]}],[\"$\",\"div\",null,{\"ref\":\"$undefined\",\"className\":\"p-6 pt-0\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-9 w-16\"}]}]]}],[\"$\",\"div\",\"3\",{\"ref\":\"$undefined\",\"className\":\"rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow\",\"children\":[[\"$\",\"div\",null,{\"ref\":\"$undefined\",\"className\":\"flex flex-col space-y-1.5 p-6 pb-3\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-4 w-24\"}]}],[\"$\",\"div\",null,{\"ref\":\"$undefined\",\"className\":\"p-6 pt-0\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-9 w-16\"}]}]]}]]}]]}],[\"$\",\"section\",null,{\"className\":\"container mx-auto px-4 py-8\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-8 w-48 mb-4\"}],[\"$\",\"div\",null,{\"className\":\"flex flex-col sm:flex-row gap-4 mb-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-9 flex-1\"}],[\"$\",\"div\",null,{\"className\":\"flex gap-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-9 w-32\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-9 w-32\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-4 w-48 mb-4\"}]]}],\"$Lc\"]}]]}],[],[]],false,false],\"$Ld\",false]],\"m\":\"$undefined\",\"G\":[\"$e\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"13:I[45442,[\"/_next/static/chunks/6a05a93ec8fa7b83.js\",\"/_next/static/chunks/a02c1f50ff00204f.js\"],\"ViewportBoundary\"]\n15:I[45442,[\"/_next/static/chunks/6a05a93ec8fa7b83.js\",\"/_next/static/chunks/a02c1f50ff00204f.js\"],\"MetadataBoundary\"]\n"])</script><script>self.__next_f.push([1,"c:[\"$\",\"div\",null,{\"ref\":\"$undefined\",\"className\":\"rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow\",\"children\":[\"$\",\"div\",null,{\"className\":\"overflow-x-auto\",\"children\":[\"$\",\"table\",null,{\"className\":\"w-full\",\"children\":[[\"$\",\"thead\",null,{\"className\":\"border-b\",\"children\":[\"$\",\"tr\",null,{\"children\":[[\"$\",\"th\",null,{\"className\":\"px-6 py-3 text-left\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-4 w-12\"}]}],[\"$\",\"th\",null,{\"className\":\"px-6 py-3 text-left\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-4 w-16\"}]}],[\"$\",\"th\",null,{\"className\":\"px-6 py-3 text-left\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-4 w-16\"}]}],[\"$\",\"th\",null,{\"className\":\"px-6 py-3 text-left\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-4 w-16\"}]}]]}]}],[\"$\",\"tbody\",null,{\"className\":\"divide-y\",\"children\":[[\"$\",\"tr\",\"0\",{\"children\":[[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-12\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-64\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-20\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-16\"}]}]]}],[\"$\",\"tr\",\"1\",{\"children\":[[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-12\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-64\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-20\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-16\"}]}]]}],[\"$\",\"tr\",\"2\",{\"children\":[[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-12\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-64\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-20\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-16\"}]}]]}],[\"$\",\"tr\",\"3\",{\"children\":[[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-12\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-64\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-20\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-16\"}]}]]}],[\"$\",\"tr\",\"4\",{\"children\":[[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-12\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-64\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-20\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-16\"}]}]]}],[\"$\",\"tr\",\"5\",{\"children\":[[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-12\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-64\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-20\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-16\"}]}]]}],[\"$\",\"tr\",\"6\",{\"children\":[[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-12\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-64\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-20\"}]}],\"$Lf\"]}],\"$L10\",\"$L11\",\"$L12\"]}]]}]}]}]\n"])</script><script>self.__next_f.push([1,"d:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L13\",null,{\"children\":\"$@14\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L15\",null,{\"children\":[\"$\",\"$a\",null,{\"name\":\"Next.Metadata\",\"children\":\"$@16\"}]}]}],null]}]\n7:{}\n8:\"$0:f:0:1:1:children:1:children:0:props:children:0:props:serverProvidedParams:params\"\n"])</script><script>self.__next_f.push([1,"f:[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-16\"}]}]\n10:[\"$\",\"tr\",\"7\",{\"children\":[[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-12\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-64\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-20\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-16\"}]}]]}]\n11:[\"$\",\"tr\",\"8\",{\"children\":[[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-12\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-64\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-20\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-16\"}]}]]}]\n12:[\"$\",\"tr\",\"9\",{\"children\":[[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-12\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-5 w-64\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-20\"}]}],[\"$\",\"td\",null,{\"className\":\"px-6 py-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted h-6 w-16\"}]}]]}]\n"])</script><script>self.__next_f.push([1,"17:I[14636,[\"/_next/static/chunks/220ba5cb8fe4dd69.js\",\"/_next/static/chunks/b9b9d7565bc2c2ad.js\",\"/_next/static/chunks/1089ca88f6bef846.js\",\"/_next/static/chunks/afb7c5a4255f4081.js\",\"/_next/static/chunks/17471c87082c392c.js\",\"/_next/static/chunks/f9db24028d8c058e.js\"],\"ThemeProvider\"]\n18:I[20648,[\"/_next/static/chunks/220ba5cb8fe4dd69.js\",\"/_next/static/chunks/b9b9d7565bc2c2ad.js\",\"/_next/static/chunks/1089ca88f6bef846.js\",\"/_next/static/chunks/afb7c5a4255f4081.js\",\"/_next/static/chunks/17471c87082c392c.js\",\"/_next/static/chunks/f9db24028d8c058e.js\"],\"ProjectProvider\"]\n19:I[26160,[\"/_next/static/chunks/220ba5cb8fe4dd69.js\",\"/_next/static/chunks/b9b9d7565bc2c2ad.js\",\"/_next/static/chunks/1089ca88f6bef846.js\",\"/_next/static/chunks/afb7c5a4255f4081.js\",\"/_next/static/chunks/17471c87082c392c.js\",\"/_next/static/chunks/f9db24028d8c058e.js\"],\"Navigation\"]\n"])</script><script>self.__next_f.push([1,"2:[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"antialiased bg-background overflow-x-hidden\",\"children\":[\"$\",\"$L17\",null,{\"attribute\":\"class\",\"defaultTheme\":\"system\",\"enableSystem\":true,\"disableTransitionOnChange\":true,\"children\":[\"$\",\"$L18\",null,{\"children\":[[\"$\",\"$L19\",null,{\"specs\":[{\"id\":\"fs-001-typescript-cli-migration\",\"specNumber\":\"1\",\"title\":\"typescript-cli-migration\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"typescript\",\"cli\",\"migration\"],\"createdAt\":\"2025-10-31T00:00:00.000Z\"},{\"id\":\"fs-002-template-system-redesign\",\"specNumber\":\"2\",\"title\":\"template-system-redesign\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"templates\",\"templates-system\"],\"createdAt\":\"2025-10-31T00:00:00.000Z\"},{\"id\":\"fs-003-init-system-redesign\",\"specNumber\":\"3\",\"title\":\"init-system-redesign\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"init\",\"cli\",\"templates\"],\"createdAt\":\"2025-10-31T00:00:00.000Z\"},{\"id\":\"fs-004-existing-project-integration\",\"specNumber\":\"4\",\"title\":\"Existing Project Integration\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"integration\",\"init\",\"migration\"],\"createdAt\":\"2025-11-01T00:00:00.000Z\"},{\"id\":\"fs-005-structured-frontmatter\",\"specNumber\":\"5\",\"title\":\"structured-frontmatter\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"enhancement\",\"spec-management\",\"metadata\"],\"createdAt\":\"2025-11-01T00:00:00.000Z\"},{\"id\":\"fs-006-pm-visualization-tools\",\"specNumber\":\"6\",\"title\":\"pm-visualization-tools\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"enhancement\",\"cli\",\"visualization\",\"pm-tools\"],\"createdAt\":\"2025-11-01T00:00:00.000Z\"},{\"id\":\"fs-007-system-prompt-updates\",\"specNumber\":\"7\",\"title\":\"system-prompt-updates\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"documentation\",\"ai-agents\",\"templates\"],\"createdAt\":\"2025-11-01T00:00:00.000Z\"},{\"id\":\"fs-008-commander-migration\",\"specNumber\":\"8\",\"title\":\"Migrate CLI to Commander.js Framework\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[],\"createdAt\":\"2025-11-01T00:00:00.000Z\"},{\"id\":\"fs-009-cli-ux-enhancement\",\"specNumber\":\"9\",\"title\":\"CLI UX Enhancement with Ink\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"cli\",\"ux\",\"enhancement\"],\"createdAt\":\"2025-11-01T00:00:00.000Z\"},{\"id\":\"fs-010-commands-refactor\",\"specNumber\":\"10\",\"title\":\"Commands Module Refactoring\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"refactoring\",\"architecture\",\"maintenance\"],\"createdAt\":\"2025-11-01T00:00:00.000Z\"},{\"id\":\"fs-011-test-results\",\"specNumber\":\"11\",\"title\":\"Test Suite Implementation\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"testing\",\"quality\",\"infrastructure\"],\"createdAt\":\"2025-11-01T00:00:00.000Z\"},{\"id\":\"fs-012-sub-spec-files\",\"specNumber\":\"12\",\"title\":\"Sub-Spec Files Management\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"enhancement\",\"cli\",\"specs\",\"organization\"],\"createdAt\":\"2025-11-01T00:00:00.000Z\"},{\"id\":\"fs-013-custom-spec-templates\",\"specNumber\":\"13\",\"title\":\"Customization-First Template System\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"feature\",\"templates\",\"cli\",\"customization\"],\"createdAt\":\"2025-11-02T00:00:00.000Z\"},{\"id\":\"fs-014-complete-custom-frontmatter\",\"specNumber\":\"14\",\"title\":\"complete-custom-frontmatter\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"enhancement\",\"frontmatter\",\"customization\"],\"createdAt\":\"2025-11-02T00:00:00.000Z\"},{\"id\":\"fs-015-npm-publishing\",\"specNumber\":\"15\",\"title\":\"npm-publishing\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"release\",\"publishing\",\"distribution\"],\"createdAt\":\"2025-11-02T00:00:00.000Z\"},{\"id\":\"fs-016-github-action\",\"specNumber\":\"16\",\"title\":\"github-action\",\"status\":\"planned\",\"priority\":\"low\",\"tags\":[\"feature\",\"ci\",\"automation\"],\"createdAt\":\"2025-11-02T00:00:00.000Z\"},{\"id\":\"fs-017-vscode-extension\",\"specNumber\":\"17\",\"title\":\"vscode-extension\",\"status\":\"planned\",\"priority\":\"low\",\"tags\":[\"feature\",\"ide\",\"vscode\"],\"createdAt\":\"2025-11-20T05:50:48.128Z\"},{\"id\":\"fs-018-spec-validation\",\"specNumber\":\"18\",\"title\":\"Comprehensive Spec Validation\",\"status\":\"complete\",\"priority\":\"critical\",\"tags\":[\"quality\",\"validation\",\"cli\",\"first-principles\",\"v0.2.0\"],\"createdAt\":\"2025-11-02T00:00:00.000Z\"},{\"id\":\"fs-019-readme-improvement\",\"specNumber\":\"19\",\"title\":\"Simplify README.md to be more lean\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"docs\",\"ux\"],\"createdAt\":\"2025-11-02T00:00:00.000Z\"},{\"id\":\"fs-020-documentation-website\",\"specNumber\":\"20\",\"title\":\"Documentation Website\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"documentation\",\"website\",\"vitepress\"],\"createdAt\":\"2025-11-02T00:00:00.000Z\"},{\"id\":\"fs-021-docusaurus-vercel-migration\",\"specNumber\":\"21\",\"title\":\"Documentation Migration: Docusaurus + Vercel\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"documentation\",\"migration\",\"docusaurus\",\"vercel\"],\"createdAt\":\"2025-11-02T00:00:00.000Z\"},{\"id\":\"fs-022-flexible-folder-structure\",\"specNumber\":\"22\",\"title\":\"Flexible Folder Structure System\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"core\",\"ux\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-023-folder-structure-improvements\",\"specNumber\":\"23\",\"title\":\"Folder Structure: Polish \u0026 Multi-User Support\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"core\",\"ux\",\"multi-user\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-024-pattern-aware-list-grouping\",\"specNumber\":\"24\",\"title\":\"Pattern-Aware List Grouping\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"ux\",\"polish\",\"v0.2.0\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-025-template-config-updates\",\"specNumber\":\"25\",\"title\":\"Template Config Updates\",\"status\":\"planned\",\"priority\":\"low\",\"tags\":[\"templates\",\"polish\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-026-init-pattern-selection\",\"specNumber\":\"26\",\"title\":\"Init Pattern Selection\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"ux\",\"init\",\"v0.2.0\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-027-cli-ui-ux-optimization\",\"specNumber\":\"27\",\"title\":\"cli-ui-ux-optimization\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"cli\",\"ux\",\"enhancement\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-028-cli-ui-modernization\",\"specNumber\":\"28\",\"title\":\"cli-ui-modernization\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"cli\",\"ux\",\"design\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-029-visualization-improvements\",\"specNumber\":\"29\",\"title\":\"visualization-improvements\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"ui\",\"visualization\",\"pm-tools\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-030-created-date-format-bug\",\"specNumber\":\"30\",\"title\":\"created-date-format-bug\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"bug\",\"frontmatter\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-031-gantt-ux-improvements\",\"specNumber\":\"31\",\"title\":\"gantt-ux-improvements\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"ux\",\"visualization\",\"pm-tools\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-032-console-log-chalk-security\",\"specNumber\":\"32\",\"title\":\"console-log-chalk-security\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"security\",\"refactor\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-033-mcp-server\",\"specNumber\":\"33\",\"title\":\"MCP Server Integration\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"integration\",\"mcp\",\"ai\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-034-copilot-slash-commands\",\"specNumber\":\"34\",\"title\":\"GitHub Copilot Chat Slash Commands \u0026 Prompts\",\"status\":\"planned\",\"priority\":\"medium\",\"tags\":[\"vscode\",\"copilot\",\"ai\",\"ux\",\"v0.2.0-optional\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-035-live-specs-showcase\",\"specNumber\":\"35\",\"title\":\"LeanSpec Web: Fullstack Spec Showcase Platform\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"docs\",\"dogfooding\",\"web\",\"v0.3.0-launch\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-036-pm-integrations\",\"specNumber\":\"36\",\"title\":\"External PM Systems Integration\",\"status\":\"planned\",\"priority\":\"low\",\"tags\":[\"integration\",\"pm\",\"github\",\"jira\",\"ado\"],\"createdAt\":\"2025-11-20T05:50:48.136Z\"},{\"id\":\"fs-037-docs-overhaul\",\"specNumber\":\"37\",\"title\":\"Documentation Overhaul \u0026 Simplification\",\"status\":\"archived\",\"priority\":\"low\",\"tags\":[\"docs\",\"maintenance\",\"clarity\",\"merged-into-051\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-038-flat-structure-migration\",\"specNumber\":\"38\",\"title\":\"Flat Structure Migration\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"structure\",\"migration\",\"breaking-change\",\"enhancement\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-038-mcp-frontmatter-bug-fix\",\"specNumber\":\"38\",\"title\":\"Fix MCP Server Frontmatter Parsing\",\"status\":\"archived\",\"priority\":\"high\",\"tags\":[\"bug\",\"mcp\",\"frontmatter\"],\"createdAt\":\"2025-11-11T04:26:08.805Z\"},{\"id\":\"fs-039-simplify-viewer-commands\",\"specNumber\":\"39\",\"title\":\"Simplify Viewer Command Interface\",\"status\":\"archived\",\"priority\":\"high\",\"tags\":[\"cli\",\"ux\",\"breaking-change\",\"simplification\"],\"createdAt\":\"2025-11-11T04:26:08.824Z\"},{\"id\":\"fs-039-template-variable-sync\",\"specNumber\":\"39\",\"title\":\"Template Variable Synchronization\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"bug\",\"templates\",\"frontmatter\",\"enhancement\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-040-spec-viewer-commands\",\"specNumber\":\"40\",\"title\":\"Spec Viewer Commands\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"cli\",\"enhancement\",\"ux\",\"viewer\"],\"createdAt\":\"2025-11-03T00:00:00.000Z\"},{\"id\":\"fs-042-mcp-error-handling\",\"specNumber\":\"42\",\"title\":\"MCP Server Should Not Exit on Tool Errors\",\"status\":\"archived\",\"priority\":\"critical\",\"tags\":[\"bug\",\"mcp\",\"stability\",\"error-handling\"],\"createdAt\":\"2025-11-11T04:26:08.161Z\"},{\"id\":\"fs-043-official-launch-02\",\"specNumber\":\"43\",\"title\":\"Official Launch: v0.2.0\",\"status\":\"complete\",\"priority\":\"critical\",\"tags\":[\"release\",\"launch\",\"milestone\",\"stability\"],\"createdAt\":\"2025-11-04T00:00:00.000Z\"},{\"id\":\"fs-044-spec-relationships-clarity\",\"specNumber\":\"44\",\"title\":\"Clarify Spec Relationship Model\",\"status\":\"archived\",\"priority\":\"high\",\"tags\":[\"ux\",\"clarity\",\"frontmatter\",\"relationships\",\"v0.2.0\"],\"createdAt\":\"2025-11-04T00:00:00.000Z\"},{\"id\":\"fs-045-unified-dashboard\",\"specNumber\":\"45\",\"title\":\"Unified Analytics \u0026 Velocity Tracking\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"ux\",\"visualization\",\"analytics\",\"launch\",\"v0.2.0\"],\"createdAt\":\"2025-11-04T00:00:00.000Z\"},{\"id\":\"fs-046-stats-dashboard-refactor\",\"specNumber\":\"46\",\"title\":\"Stats \u0026 Dashboard Reorganization\",\"status\":\"archived\",\"priority\":\"high\",\"tags\":[\"ux\",\"refactor\",\"v0.2.0\"],\"createdAt\":\"2025-11-04T00:00:00.000Z\"},{\"id\":\"fs-047-git-backfill-timestamps\",\"specNumber\":\"47\",\"title\":\"Backfill Timestamp Frontmatter from Git History\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"enhancement\",\"git\",\"timestamps\",\"analytics\",\"migration\"],\"createdAt\":\"2025-11-04T14:58:23.000Z\"},{\"id\":\"fs-048-spec-complexity-analysis\",\"specNumber\":\"48\",\"title\":\"When Specs Become Too Complex\",\"status\":\"complete\",\"priority\":\"critical\",\"tags\":[\"philosophy\",\"quality\",\"lean-principle\",\"meta\"],\"createdAt\":\"2025-11-04T00:00:00.000Z\"},{\"id\":\"fs-049-leanspec-first-principles\",\"specNumber\":\"49\",\"title\":\"LeanSpec First Principles (第一性原理)\",\"status\":\"complete\",\"priority\":\"critical\",\"tags\":[\"philosophy\",\"meta\",\"foundation\",\"principles\"],\"createdAt\":\"2025-11-04T00:00:00.000Z\"},{\"id\":\"fs-050-tool-redesign-first-principles\",\"specNumber\":\"50\",\"title\":\"Tool Redesign: First Principles Application\",\"status\":\"archived\",\"priority\":\"medium\",\"tags\":[\"architecture\",\"cli\",\"mcp\",\"redesign\",\"first-principles\",\"dx\",\"v0.3.0\"],\"createdAt\":\"2025-11-05T00:00:00.000Z\"},{\"id\":\"fs-051-docs-system-prompt-principles\",\"specNumber\":\"51\",\"title\":\"Update System Prompt and Docs with First Principles\",\"status\":\"complete\",\"priority\":\"critical\",\"tags\":[\"documentation\",\"ai-agents\",\"first-principles\",\"system-prompt\",\"philosophy\",\"v0.2.0\"],\"createdAt\":\"2025-11-05T00:00:00.000Z\"},{\"id\":\"fs-052-branding-assets\",\"specNumber\":\"52\",\"title\":\"Export and Deploy Brand Assets\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"design\",\"launch\",\"v0.2.0\"],\"createdAt\":\"2025-11-05T00:00:00.000Z\"},{\"id\":\"fs-053-spec-assets-philosophy\",\"specNumber\":\"53\",\"title\":\"Spec Assets and Artifact Management Philosophy\",\"status\":\"planned\",\"priority\":\"low\",\"tags\":[\"philosophy\",\"documentation\",\"guidelines\"],\"createdAt\":\"2025-11-05T00:00:00.000Z\"},{\"id\":\"fs-054-validate-output-lint-style\",\"specNumber\":\"54\",\"title\":\"Lint-Style Validate Output\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"validation\",\"cli\",\"ux\",\"v0.2.0\"],\"createdAt\":\"2025-11-07T03:20:34.342Z\"},{\"id\":\"fs-055-readme-redesign-ai-first\",\"specNumber\":\"55\",\"title\":\"README Redesign: AI-First Positioning\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"documentation\",\"ux\",\"conversion\",\"marketing\"],\"createdAt\":\"2025-11-06T14:15:28.191Z\"},{\"id\":\"fs-056-docs-site-accuracy-audit\",\"specNumber\":\"56\",\"title\":\"Documentation Site Accuracy Audit\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"documentation\",\"quality\",\"launch\",\"v0.2.0\"],\"createdAt\":\"2025-11-06T16:05:09.955Z\"},{\"id\":\"fs-057-docs-validation-comprehensive\",\"specNumber\":\"57\",\"title\":\"Comprehensive Documentation Validation\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"documentation\",\"quality\",\"validation\",\"v0.2.0\"],\"createdAt\":\"2025-11-06T16:12:08.914Z\"},{\"id\":\"fs-058-docs-overview-polish\",\"specNumber\":\"58\",\"title\":\"Docs-Site Comprehensive Restructure\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"documentation\",\"quality\",\"restructure\",\"first-principles\"],\"createdAt\":\"2025-11-07T01:53:09.673Z\"},{\"id\":\"fs-059-programmatic-spec-management\",\"specNumber\":\"59\",\"title\":\"Programmatic Spec Management \u0026 Context Engineering\",\"status\":\"complete\",\"priority\":\"critical\",\"tags\":[\"context-engineering\",\"automation\",\"tooling\",\"ai-agents\",\"performance\",\"v0.3.0\"],\"createdAt\":\"2025-11-07T11:28:43.206Z\"},{\"id\":\"fs-060-core-concepts-coherence\",\"specNumber\":\"60\",\"title\":\"Core Concepts Documentation Coherence\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"docs\",\"ux\",\"information-architecture\"],\"createdAt\":\"2025-11-07T12:20:31.352Z\"},{\"id\":\"fs-061-ai-assisted-spec-writing\",\"specNumber\":\"61\",\"title\":\"AI-Assisted Spec Writing\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"ai\",\"philosophy\",\"docs\"],\"createdAt\":\"2025-11-07T15:44:34.381Z\"},{\"id\":\"fs-062-docs-info-architecture-v2\",\"specNumber\":\"62\",\"title\":\"Documentation Information Architecture v2\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"docs\",\"information-architecture\",\"ux\",\"v0.2.0\"],\"createdAt\":\"2025-11-08T13:02:31.871Z\"},{\"id\":\"fs-063-migration-from-existing-tools\",\"specNumber\":\"63\",\"title\":\"Migration from Existing SDD Tools\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"cli\",\"migration\",\"ai-assisted\",\"v0.2\"],\"createdAt\":\"2025-11-10T05:35:31.293Z\"},{\"id\":\"fs-064-docs-site-zh-translation\",\"specNumber\":\"64\",\"title\":\"Docs Site Chinese (ZH) Translation\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"docs\",\"i18n\",\"translation\",\"chinese\"],\"createdAt\":\"2025-11-10T14:32:32.477Z\"},{\"id\":\"fs-065-v03-planning\",\"specNumber\":\"65\",\"title\":\"LeanSpec v0.3 - Performance \u0026 AI Agent Optimization\",\"status\":\"planned\",\"priority\":\"critical\",\"tags\":[\"release\",\"planning\",\"milestone\",\"v0.3.0\",\"performance\",\"ai-agents\"],\"createdAt\":\"2025-11-11T06:41:08.335Z\"},{\"id\":\"fs-066-context-economy-thresholds-refinement\",\"specNumber\":\"66\",\"title\":\"Context Economy Thresholds Refinement\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"validation\",\"philosophy\",\"context-economy\",\"quality\"],\"createdAt\":\"2025-11-11T06:58:44.846Z\"},{\"id\":\"fs-067-monorepo-core-extraction\",\"specNumber\":\"67\",\"title\":\"Monorepo Structure \u0026 Core Package Extraction\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"architecture\",\"refactor\",\"monorepo\",\"v0.3.0-launch\"],\"createdAt\":\"2025-11-11T13:33:33.321Z\"},{\"id\":\"fs-068-live-specs-ux-enhancements\",\"specNumber\":\"68\",\"title\":\"LeanSpec Web: UX/UI Enhancements Phase 2\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"web\",\"ux\",\"enhancement\",\"v0.3.0-launch\"],\"createdAt\":\"2025-11-12T21:49:12.069Z\"},{\"id\":\"fs-069-token-counting-utils\",\"specNumber\":\"69\",\"title\":\"Token Counting Utilities for LLM Context Management\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"core\",\"tooling\",\"context-economy\",\"llm\",\"validation\"],\"createdAt\":\"2025-11-13T02:17:52.074Z\"},{\"id\":\"fs-070-mcp-token-counting-tool\",\"specNumber\":\"70\",\"title\":\"MCP Token Counting Tool\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"core\",\"mcp\",\"llm\",\"tooling\"],\"createdAt\":\"2025-11-13T02:56:09.580Z\"},{\"id\":\"fs-071-simplified-token-validation\",\"specNumber\":\"71\",\"title\":\"Simplified Token-Based Validation\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"validation\",\"simplification\",\"tokens\"],\"createdAt\":\"2025-11-13T03:11:29.739Z\"},{\"id\":\"fs-072-ai-agent-first-use-workflow\",\"specNumber\":\"72\",\"title\":\"ai-agent-first-use-workflow\",\"status\":\"planned\",\"priority\":\"high\",\"tags\":[\"onboarding\",\"ai-agents\",\"ux\",\"mcp\"],\"createdAt\":\"2025-11-13T08:20:28.110Z\"},{\"id\":\"fs-073-template-engine-agents-md\",\"specNumber\":\"73\",\"title\":\"template-engine-agents-md\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"templates\",\"maintainability\",\"dx\",\"refactor\",\"ai-first\"],\"createdAt\":\"2025-11-13T08:35:40.229Z\"},{\"id\":\"fs-074-content-at-creation\",\"specNumber\":\"74\",\"title\":\"Pass Content Directly to lean-spec create\",\"status\":\"planned\",\"priority\":\"medium\",\"tags\":[\"cli\",\"dx\"],\"createdAt\":\"2025-11-13T08:40:40.882Z\"},{\"id\":\"fs-075-intelligent-search-engine\",\"specNumber\":\"75\",\"title\":\"Intelligent Search Engine\",\"status\":\"complete\",\"priority\":\"critical\",\"tags\":[\"search\",\"mcp\",\"cli\",\"core\",\"ranking\",\"v0.3.0\"],\"createdAt\":\"2025-11-13T09:01:46.579Z\"},{\"id\":\"fs-076-programmatic-spec-relationships\",\"specNumber\":\"76\",\"title\":\"Programmatic Spec Relationship Management\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"cli\",\"mcp\",\"dx\",\"ai-agents\",\"relationships\"],\"createdAt\":\"2025-11-13T09:03:06.741Z\"},{\"id\":\"fs-077-archiving-strategy\",\"specNumber\":\"77\",\"title\":\"archiving-strategy\",\"status\":\"planned\",\"priority\":\"high\",\"tags\":[\"process\",\"maintenance\",\"workflow\",\"best-practices\"],\"createdAt\":\"2025-11-13T13:08:46.014Z\"},{\"id\":\"fs-078-sub-spec-template-system\",\"specNumber\":\"78\",\"title\":\"sub-spec-template-system\",\"status\":\"planned\",\"priority\":\"medium\",\"tags\":[\"templates\",\"cli\",\"dx\",\"ai-first\",\"sub-specs\"],\"createdAt\":\"2025-11-13T13:31:48.324Z\"},{\"id\":\"fs-079-cli-alphabetical-organization\",\"specNumber\":\"79\",\"title\":\"CLI Alphabetical Organization\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[],\"createdAt\":\"2025-11-13T13:58:57.973Z\"},{\"id\":\"fs-080-mcp-server-modular-architecture\",\"specNumber\":\"80\",\"title\":\"MCP Server Modular Architecture\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"refactor\",\"mcp\",\"architecture\"],\"createdAt\":\"2025-11-13T14:18:24.298Z\"},{\"id\":\"fs-081-web-app-ux-redesign\",\"specNumber\":\"81\",\"title\":\"Web App UX/UI Comprehensive Redesign\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"web\",\"ux\",\"design\",\"enhancement\"],\"createdAt\":\"2025-11-14T03:21:43.076Z\"},{\"id\":\"fs-082-web-realtime-sync-architecture\",\"specNumber\":\"82\",\"title\":\"Web App Realtime Spec Sync Architecture\",\"status\":\"complete\",\"priority\":\"critical\",\"tags\":[\"web\",\"architecture\",\"deployment\",\"realtime\",\"v0.3.0\"],\"createdAt\":\"2025-11-14T05:33:26.170Z\"},{\"id\":\"fs-083-web-navigation-performance\",\"specNumber\":\"83\",\"title\":\"Web App Navigation Performance Optimization\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"web\",\"performance\",\"ux\",\"v0.3\"],\"createdAt\":\"2025-11-16T13:27:26.767Z\"},{\"id\":\"fs-084-sub-spec-visibility-in-tools\",\"specNumber\":\"84\",\"title\":\"Sub-Spec File Visibility in MCP Tools and Commands\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"mcp\",\"tools\",\"sub-specs\",\"ai-agents\",\"ux\"],\"createdAt\":\"2025-11-16T13:30:17.281Z\"},{\"id\":\"fs-085-cli-relationship-commands\",\"specNumber\":\"85\",\"title\":\"CLI Commands for Spec Relationship Management\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"cli\",\"metadata\",\"relationships\",\"dx\"],\"createdAt\":\"2025-11-16T13:33:40.858Z\"},{\"id\":\"fs-086-template-component-deduplication\",\"specNumber\":\"86\",\"title\":\"template-component-deduplication\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"refactoring\",\"templates\",\"maintenance\"],\"createdAt\":\"2025-11-17T01:27:01.679Z\"},{\"id\":\"fs-087-cli-ui-command\",\"specNumber\":\"87\",\"title\":\"CLI UI Command: `lean-spec ui`\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"cli\",\"web\",\"dx\",\"integration\"],\"createdAt\":\"2025-11-17T01:31:21.397Z\"},{\"id\":\"fs-088-core-concepts-terminology-only\",\"specNumber\":\"88\",\"title\":\"Core Concepts: Real SDD Terminology Only\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[],\"createdAt\":\"2025-11-17T02:09:38.041Z\"},{\"id\":\"fs-089-sdd-practical-tutorials\",\"specNumber\":\"89\",\"title\":\"Step-by-Step SDD Tutorials for Real Practice\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[],\"createdAt\":\"2025-11-17T02:10:56.366Z\"},{\"id\":\"fs-090-leanspec-sdd-case-studies\",\"specNumber\":\"90\",\"title\":\"LeanSpec Dogfooding: Real SDD Case Studies\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[],\"createdAt\":\"2025-11-17T02:11:56.264Z\"},{\"id\":\"fs-091-chinese-localization-strategy\",\"specNumber\":\"91\",\"title\":\"Comprehensive Chinese Localization for LeanSpec\",\"status\":\"planned\",\"priority\":\"high\",\"tags\":[],\"createdAt\":\"2025-11-17T02:12:58.531Z\"},{\"id\":\"fs-092-docs-site-submodule-migration\",\"specNumber\":\"92\",\"title\":\"Migrate docs-site to separate repository as submodule\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"infrastructure\",\"docs\",\"monorepo\"],\"createdAt\":\"2025-11-17T04:54:37.212Z\"},{\"id\":\"fs-093-spec-detail-ui-improvements\",\"specNumber\":\"93\",\"title\":\"spec-detail-ui-improvements\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[],\"createdAt\":\"2025-11-17T06:07:38.678Z\"},{\"id\":\"fs-094-ai-chatbot-web-integration\",\"specNumber\":\"94\",\"title\":\"AI Chatbot for Web UI\",\"status\":\"planned\",\"priority\":\"high\",\"tags\":[\"web\",\"ai\",\"ux\",\"v0.3.0\"],\"createdAt\":\"2025-11-17T06:31:22.346Z\"},{\"id\":\"fs-095-pr-migration-verification\",\"specNumber\":\"95\",\"title\":\"PR Migration Verification: docs-site → lean-spec-docs\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"migration\",\"docs\",\"verification\"],\"createdAt\":\"2025-11-17T06:39:54.583Z\"},{\"id\":\"fs-096-docs-beginner-first-reorg\",\"specNumber\":\"96\",\"title\":\"Documentation: Beginner-First Reorganization\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"docs\",\"ux\",\"beginner-friendly\"],\"createdAt\":\"2025-11-17T07:51:56.155Z\"},{\"id\":\"fs-097-dag-visualization-library\",\"specNumber\":\"97\",\"title\":\"Replace Manual DAG with Visualization Library\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"web\",\"ux\",\"dependencies\",\"technical-debt\"],\"createdAt\":\"2025-11-17T08:02:23.227Z\"},{\"id\":\"fs-098-github-multi-project-integration\",\"specNumber\":\"98\",\"title\":\"GitHub Multi-Project Integration\",\"status\":\"planned\",\"priority\":\"high\",\"tags\":[\"web\",\"github\",\"integration\",\"v0.3\"],\"createdAt\":\"2025-11-17T08:19:16.821Z\"},{\"id\":\"fs-099-enhanced-dependency-commands-cli-mcp\",\"specNumber\":\"99\",\"title\":\"Enhanced Dependency Commands for CLI/MCP\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"cli\",\"mcp\",\"dependencies\",\"core\"],\"createdAt\":\"2025-11-17T08:45:47.025Z\"},{\"id\":\"fs-100-release-process-typecheck-failure\",\"specNumber\":\"100\",\"title\":\"Post-Mortem: v0.2.3 TypeScript Check Failure\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"process\",\"quality\",\"ci-cd\",\"post-mortem\"],\"createdAt\":\"2025-11-17T21:12:06.305Z\"},{\"id\":\"fs-101-sidebar-scroll-position-drift\",\"specNumber\":\"101\",\"title\":\"Fix Sidebar Scroll Position Drift\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[],\"createdAt\":\"2025-11-17T14:22:14.161Z\"},{\"id\":\"fs-102-mcp-wrapper-package\",\"specNumber\":\"102\",\"title\":\"@leanspec/mcp - MCP Server Integration Wrapper\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"mcp\",\"integration\",\"npm-package\",\"developer-experience\"],\"createdAt\":\"2025-11-18T03:06:33.496Z\"},{\"id\":\"fs-103-ui-standalone-consolidation\",\"specNumber\":\"103\",\"title\":\"UI Standalone Consolidation\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"ui\",\"architecture\",\"simplification\"],\"createdAt\":\"2025-11-18T06:55:41.560Z\"},{\"id\":\"fs-104-ui-packaging-fix\",\"specNumber\":\"104\",\"title\":\"Fix @leanspec/ui standalone packaging issue\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"packaging\",\"bug-fix\"],\"createdAt\":\"2025-11-18T09:26:38.346Z\"},{\"id\":\"fs-105-docs-site-enhancements\",\"specNumber\":\"105\",\"title\":\"Documentation Site Optimization and Enhancements\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[],\"createdAt\":\"2025-11-18T13:42:51.756Z\"},{\"id\":\"fs-106-ui-package-documentation\",\"specNumber\":\"106\",\"title\":\"UI Package Documentation and Integration\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[],\"createdAt\":\"2025-11-18T14:33:07.663Z\"},{\"id\":\"fs-107-ui-ux-refinements\",\"specNumber\":\"107\",\"title\":\"UI/UX Refinements - Spec Detail \u0026 List Views\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"ui\",\"ux\",\"lessons-learned\"],\"createdAt\":\"2025-11-20T02:27:35.059Z\"},{\"id\":\"fs-108-fix-zh-intro\",\"specNumber\":\"108\",\"title\":\"Fix Outdated Chinese Documentation Content\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"docs\",\"translation\",\"i18n\"],\"createdAt\":\"2025-11-20T05:43:14.669Z\"},{\"id\":\"fs-109-local-project-switching\",\"specNumber\":\"109\",\"title\":\"Local Multi-Project Switching in Web UI\",\"status\":\"complete\",\"priority\":\"high\",\"tags\":[\"web\",\"ux\",\"dx\",\"enhancement\"],\"createdAt\":\"2025-11-20T05:48:22.711Z\"},{\"id\":\"fs-110-project-aware-agents-generation\",\"specNumber\":\"110\",\"title\":\"Context-Aware AGENTS.md Generation for Init\",\"status\":\"planned\",\"priority\":\"high\",\"tags\":[\"init\",\"templates\",\"ai-agents\",\"dx\"],\"createdAt\":\"2025-11-20T06:23:35.088Z\"},{\"id\":\"fs-111-mcp-prompts-refinement\",\"specNumber\":\"111\",\"title\":\"MCP Prompts Refinement\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[\"mcp\",\"ux\",\"prompts\",\"ai-agents\"],\"createdAt\":\"2025-11-20T07:11:55.891Z\"},{\"id\":\"fs-112-project-management-ui\",\"specNumber\":\"112\",\"title\":\"project-management-ui\",\"status\":\"complete\",\"priority\":\"medium\",\"tags\":[],\"createdAt\":\"2025-11-20T08:12:59.970Z\"}]}],\"$L1a\",\"$L1b\"]}]}]}]}]\n"])</script><script>self.__next_f.push([1,"1c:I[42634,[\"/_next/static/chunks/220ba5cb8fe4dd69.js\",\"/_next/static/chunks/b9b9d7565bc2c2ad.js\",\"/_next/static/chunks/1089ca88f6bef846.js\",\"/_next/static/chunks/afb7c5a4255f4081.js\",\"/_next/static/chunks/17471c87082c392c.js\",\"/_next/static/chunks/f9db24028d8c058e.js\"],\"MainSidebar\"]\n1d:I[68399,[\"/_next/static/chunks/220ba5cb8fe4dd69.js\",\"/_next/static/chunks/b9b9d7565bc2c2ad.js\",\"/_next/static/chunks/1089ca88f6bef846.js\",\"/_next/static/chunks/afb7c5a4255f4081.js\",\"/_next/static/chunks/17471c87082c392c.js\",\"/_next/static/chunks/f9db24028d8c058e.js\",\"/_next/static/chunks/4a7396c9a77e64d5.js\"],\"default\"]\n1e:I[87985,[\"/_next/static/chunks/220ba5cb8fe4dd69.js\",\"/_next/static/chunks/b9b9d7565bc2c2ad.js\",\"/_next/static/chunks/1089ca88f6bef846.js\",\"/_next/static/chunks/afb7c5a4255f4081.js\",\"/_next/static/chunks/17471c87082c392c.js\",\"/_next/static/chunks/f9db24028d8c058e.js\"],\"\"]\n1f:I[74916,[\"/_next/static/chunks/220ba5cb8fe4dd69.js\",\"/_next/static/chunks/b9b9d7565bc2c2ad.js\",\"/_next/static/chunks/1089ca88f6bef846.js\",\"/_next/static/chunks/afb7c5a4255f4081.js\",\"/_next/static/chunks/17471c87082c392c.js\",\"/_next/static/chunks/f9db24028d8c058e.js\"],\"Toast\"]\n"])</script><script>self.__next_f.push([1,"1a:[\"$\",\"div\",null,{\"className\":\"flex w-full min-w-0\",\"children\":[[\"$\",\"$L1c\",null,{}],[\"$\",\"main\",null,{\"className\":\"flex-1 min-h-[calc(100vh-3.5rem)] min-w-0 w-full lg:w-[calc(100vw-var(--main-sidebar-width,240px))]\",\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$1d\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/4a7396c9a77e64d5.js\",\"async\":true}]],\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"div\",null,{\"className\":\"min-h-screen bg-background flex items-center justify-center px-4\",\"children\":[\"$\",\"div\",null,{\"className\":\"text-center space-y-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"space-y-2\",\"children\":[[\"$\",\"h1\",null,{\"className\":\"text-6xl font-bold text-primary\",\"children\":\"404\"}],[\"$\",\"h2\",null,{\"className\":\"text-2xl font-semibold\",\"children\":\"Page Not Found\"}],[\"$\",\"p\",null,{\"className\":\"text-muted-foreground max-w-md mx-auto\",\"children\":\"The page you’re looking for doesn’t exist or has been moved.\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex gap-4 justify-center\",\"children\":[[\"$\",\"$L1e\",null,{\"href\":\"/\",\"children\":\"Go Home\",\"className\":\"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 bg-primary text-primary-foreground shadow hover:bg-primary/90 h-9 px-4 py-2\",\"ref\":null}],[\"$\",\"$L1e\",null,{\"href\":\"/specs\",\"children\":\"View Specs\",\"className\":\"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground h-9 px-4 py-2\",\"ref\":null}]]}]]}]}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]\n"])</script><script>self.__next_f.push([1,"1b:[\"$\",\"$L1f\",null,{}]\n"])</script><script>self.__next_f.push([1,"14:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=5\"}]]\n"])</script><script>self.__next_f.push([1,"20:I[90269,[\"/_next/static/chunks/6a05a93ec8fa7b83.js\",\"/_next/static/chunks/a02c1f50ff00204f.js\"],\"IconMark\"]\n16:[[\"$\",\"title\",\"0\",{\"children\":\"LeanSpec Web - Interactive Spec Showcase\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Browse and explore LeanSpec specifications in a rich, interactive format\"}],[\"$\",\"meta\",\"2\",{\"property\":\"og:title\",\"content\":\"LeanSpec Web\"}],[\"$\",\"meta\",\"3\",{\"property\":\"og:description\",\"content\":\"Browse and explore LeanSpec specifications in a rich, interactive format\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"5\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"6\",{\"name\":\"twitter:title\",\"content\":\"LeanSpec Web\"}],[\"$\",\"meta\",\"7\",{\"name\":\"twitter:description\",\"content\":\"Browse and explore LeanSpec specifications in a rich, interactive format\"}],[\"$\",\"link\",\"8\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"link\",\"9\",{\"rel\":\"icon\",\"href\":\"/logo.svg\",\"type\":\"image/svg+xml\"}],[\"$\",\"link\",\"10\",{\"rel\":\"apple-touch-icon\",\"href\":\"/logo.svg\"}],[\"$\",\"$L20\",\"11\",{}]]\nb:null\n"])</script></body></html>
@@ -0,0 +1,14 @@
1
+ {
2
+ "headers": {
3
+ "x-nextjs-stale-time": "300",
4
+ "x-nextjs-prerender": "1",
5
+ "x-next-cache-tags": "_N_T_/layout,_N_T_/projects/layout,_N_T_/projects/page,_N_T_/projects"
6
+ },
7
+ "segmentPaths": [
8
+ "/_tree",
9
+ "/_full",
10
+ "/projects/__PAGE__",
11
+ "/projects",
12
+ "/_index"
13
+ ]
14
+ }
@@ -0,0 +1,34 @@
1
+ 1:"$Sreact.fragment"
2
+ 3:I[24050,["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"default"]
3
+ 4:I[70127,["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"default"]
4
+ 5:I[5451,["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"ClientPageRoot"]
5
+ 6:I[40898,["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js","/_next/static/chunks/dcdd95180149fa10.js","/_next/static/chunks/07f48b316e895080.js"],"default"]
6
+ 9:I[45442,["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"OutletBoundary"]
7
+ a:"$Sreact.suspense"
8
+ e:I[65393,["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"default"]
9
+ :HL["/_next/static/chunks/5a6fc30cd64085b4.css","style"]
10
+ 0:{"P":null,"b":"T1wNN9JmkdwBabQsqL-tC","c":["","projects"],"q":"","i":false,"f":[[["",{"children":["projects",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/5a6fc30cd64085b4.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/220ba5cb8fe4dd69.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/b9b9d7565bc2c2ad.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/1089ca88f6bef846.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/afb7c5a4255f4081.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/17471c87082c392c.js","async":true,"nonce":"$undefined"}],["$","script","script-5",{"src":"/_next/static/chunks/f9db24028d8c058e.js","async":true,"nonce":"$undefined"}]],"$L2"]}],{"children":[["$","$1","c",{"children":[null,["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","$L5",null,{"Component":"$6","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@7","$@8"]}}],[["$","script","script-0",{"src":"/_next/static/chunks/dcdd95180149fa10.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/07f48b316e895080.js","async":true,"nonce":"$undefined"}]],["$","$L9",null,{"children":["$","$a",null,{"name":"Next.MetadataOutlet","children":"$@b"}]}]]}],{},null,false,false]},null,false,false]},[["$","div","l",{"className":"min-h-screen bg-background","children":[["$","section",null,{"className":"container mx-auto px-4 py-8","children":[["$","div",null,{"className":"mb-8","children":[["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-10 w-64 mb-2"}],["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-96"}]]}],["$","div",null,{"className":"grid grid-cols-1 md:grid-cols-4 gap-4 mb-8","children":[["$","div","0",{"ref":"$undefined","className":"rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow","children":[["$","div",null,{"ref":"$undefined","className":"flex flex-col space-y-1.5 p-6 pb-3","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-4 w-24"}]}],["$","div",null,{"ref":"$undefined","className":"p-6 pt-0","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-9 w-16"}]}]]}],["$","div","1",{"ref":"$undefined","className":"rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow","children":[["$","div",null,{"ref":"$undefined","className":"flex flex-col space-y-1.5 p-6 pb-3","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-4 w-24"}]}],["$","div",null,{"ref":"$undefined","className":"p-6 pt-0","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-9 w-16"}]}]]}],["$","div","2",{"ref":"$undefined","className":"rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow","children":[["$","div",null,{"ref":"$undefined","className":"flex flex-col space-y-1.5 p-6 pb-3","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-4 w-24"}]}],["$","div",null,{"ref":"$undefined","className":"p-6 pt-0","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-9 w-16"}]}]]}],["$","div","3",{"ref":"$undefined","className":"rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow","children":[["$","div",null,{"ref":"$undefined","className":"flex flex-col space-y-1.5 p-6 pb-3","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-4 w-24"}]}],["$","div",null,{"ref":"$undefined","className":"p-6 pt-0","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-9 w-16"}]}]]}]]}]]}],["$","section",null,{"className":"container mx-auto px-4 py-8","children":[["$","div",null,{"className":"mb-6","children":[["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-8 w-48 mb-4"}],["$","div",null,{"className":"flex flex-col sm:flex-row gap-4 mb-6","children":[["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-9 flex-1"}],["$","div",null,{"className":"flex gap-2","children":[["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-9 w-32"}],["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-9 w-32"}]]}]]}],["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-4 w-48 mb-4"}]]}],"$Lc"]}]]}],[],[]],false,false],"$Ld",false]],"m":"$undefined","G":["$e",[]],"s":false,"S":true}
11
+ 13:I[45442,["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"ViewportBoundary"]
12
+ 15:I[45442,["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"MetadataBoundary"]
13
+ c:["$","div",null,{"ref":"$undefined","className":"rounded-xl border border-gray-200 dark:border-gray-800 bg-card text-card-foreground shadow","children":["$","div",null,{"className":"overflow-x-auto","children":["$","table",null,{"className":"w-full","children":[["$","thead",null,{"className":"border-b","children":["$","tr",null,{"children":[["$","th",null,{"className":"px-6 py-3 text-left","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-4 w-12"}]}],["$","th",null,{"className":"px-6 py-3 text-left","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-4 w-16"}]}],["$","th",null,{"className":"px-6 py-3 text-left","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-4 w-16"}]}],["$","th",null,{"className":"px-6 py-3 text-left","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-4 w-16"}]}]]}]}],["$","tbody",null,{"className":"divide-y","children":[["$","tr","0",{"children":[["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-12"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-64"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-20"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-16"}]}]]}],["$","tr","1",{"children":[["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-12"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-64"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-20"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-16"}]}]]}],["$","tr","2",{"children":[["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-12"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-64"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-20"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-16"}]}]]}],["$","tr","3",{"children":[["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-12"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-64"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-20"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-16"}]}]]}],["$","tr","4",{"children":[["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-12"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-64"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-20"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-16"}]}]]}],["$","tr","5",{"children":[["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-12"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-64"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-20"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-16"}]}]]}],["$","tr","6",{"children":[["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-12"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-64"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-20"}]}],"$Lf"]}],"$L10","$L11","$L12"]}]]}]}]}]
14
+ d:["$","$1","h",{"children":[null,["$","$L13",null,{"children":"$@14"}],["$","div",null,{"hidden":true,"children":["$","$L15",null,{"children":["$","$a",null,{"name":"Next.Metadata","children":"$@16"}]}]}],null]}]
15
+ 7:{}
16
+ 8:"$0:f:0:1:1:children:1:children:0:props:children:0:props:serverProvidedParams:params"
17
+ f:["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-16"}]}]
18
+ 10:["$","tr","7",{"children":[["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-12"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-64"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-20"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-16"}]}]]}]
19
+ 11:["$","tr","8",{"children":[["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-12"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-64"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-20"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-16"}]}]]}]
20
+ 12:["$","tr","9",{"children":[["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-12"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-5 w-64"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-20"}]}],["$","td",null,{"className":"px-6 py-4","children":["$","div",null,{"className":"animate-pulse rounded-md bg-muted h-6 w-16"}]}]]}]
21
+ 17:I[14636,["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"ThemeProvider"]
22
+ 18:I[20648,["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"ProjectProvider"]
23
+ 19:I[26160,["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"Navigation"]
24
+ 2:["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased bg-background overflow-x-hidden","children":["$","$L17",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L18",null,{"children":[["$","$L19",null,{"specs":[{"id":"fs-001-typescript-cli-migration","specNumber":"1","title":"typescript-cli-migration","status":"complete","priority":"high","tags":["typescript","cli","migration"],"createdAt":"2025-10-31T00:00:00.000Z"},{"id":"fs-002-template-system-redesign","specNumber":"2","title":"template-system-redesign","status":"complete","priority":"high","tags":["templates","templates-system"],"createdAt":"2025-10-31T00:00:00.000Z"},{"id":"fs-003-init-system-redesign","specNumber":"3","title":"init-system-redesign","status":"complete","priority":"high","tags":["init","cli","templates"],"createdAt":"2025-10-31T00:00:00.000Z"},{"id":"fs-004-existing-project-integration","specNumber":"4","title":"Existing Project Integration","status":"complete","priority":"high","tags":["integration","init","migration"],"createdAt":"2025-11-01T00:00:00.000Z"},{"id":"fs-005-structured-frontmatter","specNumber":"5","title":"structured-frontmatter","status":"complete","priority":"medium","tags":["enhancement","spec-management","metadata"],"createdAt":"2025-11-01T00:00:00.000Z"},{"id":"fs-006-pm-visualization-tools","specNumber":"6","title":"pm-visualization-tools","status":"complete","priority":"medium","tags":["enhancement","cli","visualization","pm-tools"],"createdAt":"2025-11-01T00:00:00.000Z"},{"id":"fs-007-system-prompt-updates","specNumber":"7","title":"system-prompt-updates","status":"complete","priority":"medium","tags":["documentation","ai-agents","templates"],"createdAt":"2025-11-01T00:00:00.000Z"},{"id":"fs-008-commander-migration","specNumber":"8","title":"Migrate CLI to Commander.js Framework","status":"complete","priority":"medium","tags":[],"createdAt":"2025-11-01T00:00:00.000Z"},{"id":"fs-009-cli-ux-enhancement","specNumber":"9","title":"CLI UX Enhancement with Ink","status":"complete","priority":"high","tags":["cli","ux","enhancement"],"createdAt":"2025-11-01T00:00:00.000Z"},{"id":"fs-010-commands-refactor","specNumber":"10","title":"Commands Module Refactoring","status":"complete","priority":"medium","tags":["refactoring","architecture","maintenance"],"createdAt":"2025-11-01T00:00:00.000Z"},{"id":"fs-011-test-results","specNumber":"11","title":"Test Suite Implementation","status":"complete","priority":"high","tags":["testing","quality","infrastructure"],"createdAt":"2025-11-01T00:00:00.000Z"},{"id":"fs-012-sub-spec-files","specNumber":"12","title":"Sub-Spec Files Management","status":"complete","priority":"medium","tags":["enhancement","cli","specs","organization"],"createdAt":"2025-11-01T00:00:00.000Z"},{"id":"fs-013-custom-spec-templates","specNumber":"13","title":"Customization-First Template System","status":"complete","priority":"high","tags":["feature","templates","cli","customization"],"createdAt":"2025-11-02T00:00:00.000Z"},{"id":"fs-014-complete-custom-frontmatter","specNumber":"14","title":"complete-custom-frontmatter","status":"complete","priority":"high","tags":["enhancement","frontmatter","customization"],"createdAt":"2025-11-02T00:00:00.000Z"},{"id":"fs-015-npm-publishing","specNumber":"15","title":"npm-publishing","status":"complete","priority":"high","tags":["release","publishing","distribution"],"createdAt":"2025-11-02T00:00:00.000Z"},{"id":"fs-016-github-action","specNumber":"16","title":"github-action","status":"planned","priority":"low","tags":["feature","ci","automation"],"createdAt":"2025-11-02T00:00:00.000Z"},{"id":"fs-017-vscode-extension","specNumber":"17","title":"vscode-extension","status":"planned","priority":"low","tags":["feature","ide","vscode"],"createdAt":"2025-11-20T05:50:48.128Z"},{"id":"fs-018-spec-validation","specNumber":"18","title":"Comprehensive Spec Validation","status":"complete","priority":"critical","tags":["quality","validation","cli","first-principles","v0.2.0"],"createdAt":"2025-11-02T00:00:00.000Z"},{"id":"fs-019-readme-improvement","specNumber":"19","title":"Simplify README.md to be more lean","status":"complete","priority":"high","tags":["docs","ux"],"createdAt":"2025-11-02T00:00:00.000Z"},{"id":"fs-020-documentation-website","specNumber":"20","title":"Documentation Website","status":"complete","priority":"high","tags":["documentation","website","vitepress"],"createdAt":"2025-11-02T00:00:00.000Z"},{"id":"fs-021-docusaurus-vercel-migration","specNumber":"21","title":"Documentation Migration: Docusaurus + Vercel","status":"complete","priority":"high","tags":["documentation","migration","docusaurus","vercel"],"createdAt":"2025-11-02T00:00:00.000Z"},{"id":"fs-022-flexible-folder-structure","specNumber":"22","title":"Flexible Folder Structure System","status":"complete","priority":"high","tags":["core","ux"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-023-folder-structure-improvements","specNumber":"23","title":"Folder Structure: Polish & Multi-User Support","status":"complete","priority":"high","tags":["core","ux","multi-user"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-024-pattern-aware-list-grouping","specNumber":"24","title":"Pattern-Aware List Grouping","status":"complete","priority":"high","tags":["ux","polish","v0.2.0"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-025-template-config-updates","specNumber":"25","title":"Template Config Updates","status":"planned","priority":"low","tags":["templates","polish"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-026-init-pattern-selection","specNumber":"26","title":"Init Pattern Selection","status":"complete","priority":"high","tags":["ux","init","v0.2.0"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-027-cli-ui-ux-optimization","specNumber":"27","title":"cli-ui-ux-optimization","status":"complete","priority":"high","tags":["cli","ux","enhancement"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-028-cli-ui-modernization","specNumber":"28","title":"cli-ui-modernization","status":"complete","priority":"high","tags":["cli","ux","design"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-029-visualization-improvements","specNumber":"29","title":"visualization-improvements","status":"complete","priority":"medium","tags":["ui","visualization","pm-tools"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-030-created-date-format-bug","specNumber":"30","title":"created-date-format-bug","status":"complete","priority":"high","tags":["bug","frontmatter"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-031-gantt-ux-improvements","specNumber":"31","title":"gantt-ux-improvements","status":"complete","priority":"high","tags":["ux","visualization","pm-tools"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-032-console-log-chalk-security","specNumber":"32","title":"console-log-chalk-security","status":"complete","priority":"high","tags":["security","refactor"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-033-mcp-server","specNumber":"33","title":"MCP Server Integration","status":"complete","priority":"high","tags":["integration","mcp","ai"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-034-copilot-slash-commands","specNumber":"34","title":"GitHub Copilot Chat Slash Commands & Prompts","status":"planned","priority":"medium","tags":["vscode","copilot","ai","ux","v0.2.0-optional"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-035-live-specs-showcase","specNumber":"35","title":"LeanSpec Web: Fullstack Spec Showcase Platform","status":"complete","priority":"high","tags":["docs","dogfooding","web","v0.3.0-launch"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-036-pm-integrations","specNumber":"36","title":"External PM Systems Integration","status":"planned","priority":"low","tags":["integration","pm","github","jira","ado"],"createdAt":"2025-11-20T05:50:48.136Z"},{"id":"fs-037-docs-overhaul","specNumber":"37","title":"Documentation Overhaul & Simplification","status":"archived","priority":"low","tags":["docs","maintenance","clarity","merged-into-051"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-038-flat-structure-migration","specNumber":"38","title":"Flat Structure Migration","status":"complete","priority":"high","tags":["structure","migration","breaking-change","enhancement"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-038-mcp-frontmatter-bug-fix","specNumber":"38","title":"Fix MCP Server Frontmatter Parsing","status":"archived","priority":"high","tags":["bug","mcp","frontmatter"],"createdAt":"2025-11-11T04:26:08.805Z"},{"id":"fs-039-simplify-viewer-commands","specNumber":"39","title":"Simplify Viewer Command Interface","status":"archived","priority":"high","tags":["cli","ux","breaking-change","simplification"],"createdAt":"2025-11-11T04:26:08.824Z"},{"id":"fs-039-template-variable-sync","specNumber":"39","title":"Template Variable Synchronization","status":"complete","priority":"high","tags":["bug","templates","frontmatter","enhancement"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-040-spec-viewer-commands","specNumber":"40","title":"Spec Viewer Commands","status":"complete","priority":"high","tags":["cli","enhancement","ux","viewer"],"createdAt":"2025-11-03T00:00:00.000Z"},{"id":"fs-042-mcp-error-handling","specNumber":"42","title":"MCP Server Should Not Exit on Tool Errors","status":"archived","priority":"critical","tags":["bug","mcp","stability","error-handling"],"createdAt":"2025-11-11T04:26:08.161Z"},{"id":"fs-043-official-launch-02","specNumber":"43","title":"Official Launch: v0.2.0","status":"complete","priority":"critical","tags":["release","launch","milestone","stability"],"createdAt":"2025-11-04T00:00:00.000Z"},{"id":"fs-044-spec-relationships-clarity","specNumber":"44","title":"Clarify Spec Relationship Model","status":"archived","priority":"high","tags":["ux","clarity","frontmatter","relationships","v0.2.0"],"createdAt":"2025-11-04T00:00:00.000Z"},{"id":"fs-045-unified-dashboard","specNumber":"45","title":"Unified Analytics & Velocity Tracking","status":"complete","priority":"high","tags":["ux","visualization","analytics","launch","v0.2.0"],"createdAt":"2025-11-04T00:00:00.000Z"},{"id":"fs-046-stats-dashboard-refactor","specNumber":"46","title":"Stats & Dashboard Reorganization","status":"archived","priority":"high","tags":["ux","refactor","v0.2.0"],"createdAt":"2025-11-04T00:00:00.000Z"},{"id":"fs-047-git-backfill-timestamps","specNumber":"47","title":"Backfill Timestamp Frontmatter from Git History","status":"complete","priority":"medium","tags":["enhancement","git","timestamps","analytics","migration"],"createdAt":"2025-11-04T14:58:23.000Z"},{"id":"fs-048-spec-complexity-analysis","specNumber":"48","title":"When Specs Become Too Complex","status":"complete","priority":"critical","tags":["philosophy","quality","lean-principle","meta"],"createdAt":"2025-11-04T00:00:00.000Z"},{"id":"fs-049-leanspec-first-principles","specNumber":"49","title":"LeanSpec First Principles (第一性原理)","status":"complete","priority":"critical","tags":["philosophy","meta","foundation","principles"],"createdAt":"2025-11-04T00:00:00.000Z"},{"id":"fs-050-tool-redesign-first-principles","specNumber":"50","title":"Tool Redesign: First Principles Application","status":"archived","priority":"medium","tags":["architecture","cli","mcp","redesign","first-principles","dx","v0.3.0"],"createdAt":"2025-11-05T00:00:00.000Z"},{"id":"fs-051-docs-system-prompt-principles","specNumber":"51","title":"Update System Prompt and Docs with First Principles","status":"complete","priority":"critical","tags":["documentation","ai-agents","first-principles","system-prompt","philosophy","v0.2.0"],"createdAt":"2025-11-05T00:00:00.000Z"},{"id":"fs-052-branding-assets","specNumber":"52","title":"Export and Deploy Brand Assets","status":"complete","priority":"high","tags":["design","launch","v0.2.0"],"createdAt":"2025-11-05T00:00:00.000Z"},{"id":"fs-053-spec-assets-philosophy","specNumber":"53","title":"Spec Assets and Artifact Management Philosophy","status":"planned","priority":"low","tags":["philosophy","documentation","guidelines"],"createdAt":"2025-11-05T00:00:00.000Z"},{"id":"fs-054-validate-output-lint-style","specNumber":"54","title":"Lint-Style Validate Output","status":"complete","priority":"high","tags":["validation","cli","ux","v0.2.0"],"createdAt":"2025-11-07T03:20:34.342Z"},{"id":"fs-055-readme-redesign-ai-first","specNumber":"55","title":"README Redesign: AI-First Positioning","status":"complete","priority":"high","tags":["documentation","ux","conversion","marketing"],"createdAt":"2025-11-06T14:15:28.191Z"},{"id":"fs-056-docs-site-accuracy-audit","specNumber":"56","title":"Documentation Site Accuracy Audit","status":"complete","priority":"high","tags":["documentation","quality","launch","v0.2.0"],"createdAt":"2025-11-06T16:05:09.955Z"},{"id":"fs-057-docs-validation-comprehensive","specNumber":"57","title":"Comprehensive Documentation Validation","status":"complete","priority":"high","tags":["documentation","quality","validation","v0.2.0"],"createdAt":"2025-11-06T16:12:08.914Z"},{"id":"fs-058-docs-overview-polish","specNumber":"58","title":"Docs-Site Comprehensive Restructure","status":"complete","priority":"high","tags":["documentation","quality","restructure","first-principles"],"createdAt":"2025-11-07T01:53:09.673Z"},{"id":"fs-059-programmatic-spec-management","specNumber":"59","title":"Programmatic Spec Management & Context Engineering","status":"complete","priority":"critical","tags":["context-engineering","automation","tooling","ai-agents","performance","v0.3.0"],"createdAt":"2025-11-07T11:28:43.206Z"},{"id":"fs-060-core-concepts-coherence","specNumber":"60","title":"Core Concepts Documentation Coherence","status":"complete","priority":"high","tags":["docs","ux","information-architecture"],"createdAt":"2025-11-07T12:20:31.352Z"},{"id":"fs-061-ai-assisted-spec-writing","specNumber":"61","title":"AI-Assisted Spec Writing","status":"complete","priority":"high","tags":["ai","philosophy","docs"],"createdAt":"2025-11-07T15:44:34.381Z"},{"id":"fs-062-docs-info-architecture-v2","specNumber":"62","title":"Documentation Information Architecture v2","status":"complete","priority":"high","tags":["docs","information-architecture","ux","v0.2.0"],"createdAt":"2025-11-08T13:02:31.871Z"},{"id":"fs-063-migration-from-existing-tools","specNumber":"63","title":"Migration from Existing SDD Tools","status":"complete","priority":"high","tags":["cli","migration","ai-assisted","v0.2"],"createdAt":"2025-11-10T05:35:31.293Z"},{"id":"fs-064-docs-site-zh-translation","specNumber":"64","title":"Docs Site Chinese (ZH) Translation","status":"complete","priority":"medium","tags":["docs","i18n","translation","chinese"],"createdAt":"2025-11-10T14:32:32.477Z"},{"id":"fs-065-v03-planning","specNumber":"65","title":"LeanSpec v0.3 - Performance & AI Agent Optimization","status":"planned","priority":"critical","tags":["release","planning","milestone","v0.3.0","performance","ai-agents"],"createdAt":"2025-11-11T06:41:08.335Z"},{"id":"fs-066-context-economy-thresholds-refinement","specNumber":"66","title":"Context Economy Thresholds Refinement","status":"complete","priority":"high","tags":["validation","philosophy","context-economy","quality"],"createdAt":"2025-11-11T06:58:44.846Z"},{"id":"fs-067-monorepo-core-extraction","specNumber":"67","title":"Monorepo Structure & Core Package Extraction","status":"complete","priority":"high","tags":["architecture","refactor","monorepo","v0.3.0-launch"],"createdAt":"2025-11-11T13:33:33.321Z"},{"id":"fs-068-live-specs-ux-enhancements","specNumber":"68","title":"LeanSpec Web: UX/UI Enhancements Phase 2","status":"complete","priority":"high","tags":["web","ux","enhancement","v0.3.0-launch"],"createdAt":"2025-11-12T21:49:12.069Z"},{"id":"fs-069-token-counting-utils","specNumber":"69","title":"Token Counting Utilities for LLM Context Management","status":"complete","priority":"high","tags":["core","tooling","context-economy","llm","validation"],"createdAt":"2025-11-13T02:17:52.074Z"},{"id":"fs-070-mcp-token-counting-tool","specNumber":"70","title":"MCP Token Counting Tool","status":"complete","priority":"medium","tags":["core","mcp","llm","tooling"],"createdAt":"2025-11-13T02:56:09.580Z"},{"id":"fs-071-simplified-token-validation","specNumber":"71","title":"Simplified Token-Based Validation","status":"complete","priority":"high","tags":["validation","simplification","tokens"],"createdAt":"2025-11-13T03:11:29.739Z"},{"id":"fs-072-ai-agent-first-use-workflow","specNumber":"72","title":"ai-agent-first-use-workflow","status":"planned","priority":"high","tags":["onboarding","ai-agents","ux","mcp"],"createdAt":"2025-11-13T08:20:28.110Z"},{"id":"fs-073-template-engine-agents-md","specNumber":"73","title":"template-engine-agents-md","status":"complete","priority":"medium","tags":["templates","maintainability","dx","refactor","ai-first"],"createdAt":"2025-11-13T08:35:40.229Z"},{"id":"fs-074-content-at-creation","specNumber":"74","title":"Pass Content Directly to lean-spec create","status":"planned","priority":"medium","tags":["cli","dx"],"createdAt":"2025-11-13T08:40:40.882Z"},{"id":"fs-075-intelligent-search-engine","specNumber":"75","title":"Intelligent Search Engine","status":"complete","priority":"critical","tags":["search","mcp","cli","core","ranking","v0.3.0"],"createdAt":"2025-11-13T09:01:46.579Z"},{"id":"fs-076-programmatic-spec-relationships","specNumber":"76","title":"Programmatic Spec Relationship Management","status":"complete","priority":"high","tags":["cli","mcp","dx","ai-agents","relationships"],"createdAt":"2025-11-13T09:03:06.741Z"},{"id":"fs-077-archiving-strategy","specNumber":"77","title":"archiving-strategy","status":"planned","priority":"high","tags":["process","maintenance","workflow","best-practices"],"createdAt":"2025-11-13T13:08:46.014Z"},{"id":"fs-078-sub-spec-template-system","specNumber":"78","title":"sub-spec-template-system","status":"planned","priority":"medium","tags":["templates","cli","dx","ai-first","sub-specs"],"createdAt":"2025-11-13T13:31:48.324Z"},{"id":"fs-079-cli-alphabetical-organization","specNumber":"79","title":"CLI Alphabetical Organization","status":"complete","priority":"medium","tags":[],"createdAt":"2025-11-13T13:58:57.973Z"},{"id":"fs-080-mcp-server-modular-architecture","specNumber":"80","title":"MCP Server Modular Architecture","status":"complete","priority":"medium","tags":["refactor","mcp","architecture"],"createdAt":"2025-11-13T14:18:24.298Z"},{"id":"fs-081-web-app-ux-redesign","specNumber":"81","title":"Web App UX/UI Comprehensive Redesign","status":"complete","priority":"high","tags":["web","ux","design","enhancement"],"createdAt":"2025-11-14T03:21:43.076Z"},{"id":"fs-082-web-realtime-sync-architecture","specNumber":"82","title":"Web App Realtime Spec Sync Architecture","status":"complete","priority":"critical","tags":["web","architecture","deployment","realtime","v0.3.0"],"createdAt":"2025-11-14T05:33:26.170Z"},{"id":"fs-083-web-navigation-performance","specNumber":"83","title":"Web App Navigation Performance Optimization","status":"complete","priority":"high","tags":["web","performance","ux","v0.3"],"createdAt":"2025-11-16T13:27:26.767Z"},{"id":"fs-084-sub-spec-visibility-in-tools","specNumber":"84","title":"Sub-Spec File Visibility in MCP Tools and Commands","status":"complete","priority":"high","tags":["mcp","tools","sub-specs","ai-agents","ux"],"createdAt":"2025-11-16T13:30:17.281Z"},{"id":"fs-085-cli-relationship-commands","specNumber":"85","title":"CLI Commands for Spec Relationship Management","status":"complete","priority":"medium","tags":["cli","metadata","relationships","dx"],"createdAt":"2025-11-16T13:33:40.858Z"},{"id":"fs-086-template-component-deduplication","specNumber":"86","title":"template-component-deduplication","status":"complete","priority":"high","tags":["refactoring","templates","maintenance"],"createdAt":"2025-11-17T01:27:01.679Z"},{"id":"fs-087-cli-ui-command","specNumber":"87","title":"CLI UI Command: `lean-spec ui`","status":"complete","priority":"medium","tags":["cli","web","dx","integration"],"createdAt":"2025-11-17T01:31:21.397Z"},{"id":"fs-088-core-concepts-terminology-only","specNumber":"88","title":"Core Concepts: Real SDD Terminology Only","status":"complete","priority":"high","tags":[],"createdAt":"2025-11-17T02:09:38.041Z"},{"id":"fs-089-sdd-practical-tutorials","specNumber":"89","title":"Step-by-Step SDD Tutorials for Real Practice","status":"complete","priority":"high","tags":[],"createdAt":"2025-11-17T02:10:56.366Z"},{"id":"fs-090-leanspec-sdd-case-studies","specNumber":"90","title":"LeanSpec Dogfooding: Real SDD Case Studies","status":"complete","priority":"high","tags":[],"createdAt":"2025-11-17T02:11:56.264Z"},{"id":"fs-091-chinese-localization-strategy","specNumber":"91","title":"Comprehensive Chinese Localization for LeanSpec","status":"planned","priority":"high","tags":[],"createdAt":"2025-11-17T02:12:58.531Z"},{"id":"fs-092-docs-site-submodule-migration","specNumber":"92","title":"Migrate docs-site to separate repository as submodule","status":"complete","priority":"high","tags":["infrastructure","docs","monorepo"],"createdAt":"2025-11-17T04:54:37.212Z"},{"id":"fs-093-spec-detail-ui-improvements","specNumber":"93","title":"spec-detail-ui-improvements","status":"complete","priority":"medium","tags":[],"createdAt":"2025-11-17T06:07:38.678Z"},{"id":"fs-094-ai-chatbot-web-integration","specNumber":"94","title":"AI Chatbot for Web UI","status":"planned","priority":"high","tags":["web","ai","ux","v0.3.0"],"createdAt":"2025-11-17T06:31:22.346Z"},{"id":"fs-095-pr-migration-verification","specNumber":"95","title":"PR Migration Verification: docs-site → lean-spec-docs","status":"complete","priority":"high","tags":["migration","docs","verification"],"createdAt":"2025-11-17T06:39:54.583Z"},{"id":"fs-096-docs-beginner-first-reorg","specNumber":"96","title":"Documentation: Beginner-First Reorganization","status":"complete","priority":"high","tags":["docs","ux","beginner-friendly"],"createdAt":"2025-11-17T07:51:56.155Z"},{"id":"fs-097-dag-visualization-library","specNumber":"97","title":"Replace Manual DAG with Visualization Library","status":"complete","priority":"high","tags":["web","ux","dependencies","technical-debt"],"createdAt":"2025-11-17T08:02:23.227Z"},{"id":"fs-098-github-multi-project-integration","specNumber":"98","title":"GitHub Multi-Project Integration","status":"planned","priority":"high","tags":["web","github","integration","v0.3"],"createdAt":"2025-11-17T08:19:16.821Z"},{"id":"fs-099-enhanced-dependency-commands-cli-mcp","specNumber":"99","title":"Enhanced Dependency Commands for CLI/MCP","status":"complete","priority":"high","tags":["cli","mcp","dependencies","core"],"createdAt":"2025-11-17T08:45:47.025Z"},{"id":"fs-100-release-process-typecheck-failure","specNumber":"100","title":"Post-Mortem: v0.2.3 TypeScript Check Failure","status":"complete","priority":"high","tags":["process","quality","ci-cd","post-mortem"],"createdAt":"2025-11-17T21:12:06.305Z"},{"id":"fs-101-sidebar-scroll-position-drift","specNumber":"101","title":"Fix Sidebar Scroll Position Drift","status":"complete","priority":"high","tags":[],"createdAt":"2025-11-17T14:22:14.161Z"},{"id":"fs-102-mcp-wrapper-package","specNumber":"102","title":"@leanspec/mcp - MCP Server Integration Wrapper","status":"complete","priority":"high","tags":["mcp","integration","npm-package","developer-experience"],"createdAt":"2025-11-18T03:06:33.496Z"},{"id":"fs-103-ui-standalone-consolidation","specNumber":"103","title":"UI Standalone Consolidation","status":"complete","priority":"high","tags":["ui","architecture","simplification"],"createdAt":"2025-11-18T06:55:41.560Z"},{"id":"fs-104-ui-packaging-fix","specNumber":"104","title":"Fix @leanspec/ui standalone packaging issue","status":"complete","priority":"high","tags":["packaging","bug-fix"],"createdAt":"2025-11-18T09:26:38.346Z"},{"id":"fs-105-docs-site-enhancements","specNumber":"105","title":"Documentation Site Optimization and Enhancements","status":"complete","priority":"medium","tags":[],"createdAt":"2025-11-18T13:42:51.756Z"},{"id":"fs-106-ui-package-documentation","specNumber":"106","title":"UI Package Documentation and Integration","status":"complete","priority":"medium","tags":[],"createdAt":"2025-11-18T14:33:07.663Z"},{"id":"fs-107-ui-ux-refinements","specNumber":"107","title":"UI/UX Refinements - Spec Detail & List Views","status":"complete","priority":"medium","tags":["ui","ux","lessons-learned"],"createdAt":"2025-11-20T02:27:35.059Z"},{"id":"fs-108-fix-zh-intro","specNumber":"108","title":"Fix Outdated Chinese Documentation Content","status":"complete","priority":"high","tags":["docs","translation","i18n"],"createdAt":"2025-11-20T05:43:14.669Z"},{"id":"fs-109-local-project-switching","specNumber":"109","title":"Local Multi-Project Switching in Web UI","status":"complete","priority":"high","tags":["web","ux","dx","enhancement"],"createdAt":"2025-11-20T05:48:22.711Z"},{"id":"fs-110-project-aware-agents-generation","specNumber":"110","title":"Context-Aware AGENTS.md Generation for Init","status":"planned","priority":"high","tags":["init","templates","ai-agents","dx"],"createdAt":"2025-11-20T06:23:35.088Z"},{"id":"fs-111-mcp-prompts-refinement","specNumber":"111","title":"MCP Prompts Refinement","status":"complete","priority":"medium","tags":["mcp","ux","prompts","ai-agents"],"createdAt":"2025-11-20T07:11:55.891Z"},{"id":"fs-112-project-management-ui","specNumber":"112","title":"project-management-ui","status":"complete","priority":"medium","tags":[],"createdAt":"2025-11-20T08:12:59.970Z"}]}],"$L1a","$L1b"]}]}]}]}]
25
+ 1c:I[42634,["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"MainSidebar"]
26
+ 1d:I[68399,["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js","/_next/static/chunks/4a7396c9a77e64d5.js"],"default"]
27
+ 1e:I[87985,["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],""]
28
+ 1f:I[74916,["/_next/static/chunks/220ba5cb8fe4dd69.js","/_next/static/chunks/b9b9d7565bc2c2ad.js","/_next/static/chunks/1089ca88f6bef846.js","/_next/static/chunks/afb7c5a4255f4081.js","/_next/static/chunks/17471c87082c392c.js","/_next/static/chunks/f9db24028d8c058e.js"],"Toast"]
29
+ 1a:["$","div",null,{"className":"flex w-full min-w-0","children":[["$","$L1c",null,{}],["$","main",null,{"className":"flex-1 min-h-[calc(100vh-3.5rem)] min-w-0 w-full lg:w-[calc(100vw-var(--main-sidebar-width,240px))]","children":["$","$L3",null,{"parallelRouterKey":"children","error":"$1d","errorStyles":[],"errorScripts":[["$","script","script-0",{"src":"/_next/static/chunks/4a7396c9a77e64d5.js","async":true}]],"template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[["$","div",null,{"className":"min-h-screen bg-background flex items-center justify-center px-4","children":["$","div",null,{"className":"text-center space-y-6","children":[["$","div",null,{"className":"space-y-2","children":[["$","h1",null,{"className":"text-6xl font-bold text-primary","children":"404"}],["$","h2",null,{"className":"text-2xl font-semibold","children":"Page Not Found"}],["$","p",null,{"className":"text-muted-foreground max-w-md mx-auto","children":"The page you’re looking for doesn’t exist or has been moved."}]]}],["$","div",null,{"className":"flex gap-4 justify-center","children":[["$","$L1e",null,{"href":"/","children":"Go Home","className":"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 bg-primary text-primary-foreground shadow hover:bg-primary/90 h-9 px-4 py-2","ref":null}],["$","$L1e",null,{"href":"/specs","children":"View Specs","className":"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground h-9 px-4 py-2","ref":null}]]}]]}]}],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}]
30
+ 1b:["$","$L1f",null,{}]
31
+ 14:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1, maximum-scale=5"}]]
32
+ 20:I[90269,["/_next/static/chunks/6a05a93ec8fa7b83.js","/_next/static/chunks/a02c1f50ff00204f.js"],"IconMark"]
33
+ 16:[["$","title","0",{"children":"LeanSpec Web - Interactive Spec Showcase"}],["$","meta","1",{"name":"description","content":"Browse and explore LeanSpec specifications in a rich, interactive format"}],["$","meta","2",{"property":"og:title","content":"LeanSpec Web"}],["$","meta","3",{"property":"og:description","content":"Browse and explore LeanSpec specifications in a rich, interactive format"}],["$","meta","4",{"property":"og:type","content":"website"}],["$","meta","5",{"name":"twitter:card","content":"summary"}],["$","meta","6",{"name":"twitter:title","content":"LeanSpec Web"}],["$","meta","7",{"name":"twitter:description","content":"Browse and explore LeanSpec specifications in a rich, interactive format"}],["$","link","8",{"rel":"icon","href":"/favicon.ico"}],["$","link","9",{"rel":"icon","href":"/logo.svg","type":"image/svg+xml"}],["$","link","10",{"rel":"apple-touch-icon","href":"/logo.svg"}],["$","$L20","11",{}]]
34
+ b:null