@leanspec/ui 0.2.8 → 0.2.9-dev.20251205030455
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.
- package/.next/standalone/node_modules/.pnpm/better-sqlite3@11.10.0/node_modules/better-sqlite3/build/Release/better_sqlite3.node +0 -0
- package/.next/standalone/node_modules/.pnpm/source-map@0.8.0-beta.0/node_modules/source-map/package.json +95 -0
- package/.next/standalone/packages/ui/.next/BUILD_ID +1 -1
- package/.next/standalone/packages/ui/.next/app-path-routes-manifest.json +8 -0
- package/.next/standalone/packages/ui/.next/build-manifest.json +4 -4
- package/.next/standalone/packages/ui/.next/prerender-manifest.json +3 -3
- package/.next/standalone/packages/ui/.next/required-server-files.json +4 -4
- package/.next/standalone/packages/ui/.next/routes-manifest.json +60 -0
- package/.next/standalone/packages/ui/.next/server/app/_global-error/page/build-manifest.json +2 -2
- package/.next/standalone/packages/ui/.next/server/app/_global-error/page.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/_global-error.html +2 -2
- package/.next/standalone/packages/ui/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/packages/ui/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/packages/ui/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/packages/ui/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/packages/ui/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/packages/ui/.next/server/app/_not-found/page/build-manifest.json +2 -2
- package/.next/standalone/packages/ui/.next/server/app/_not-found/page.js +2 -2
- package/.next/standalone/packages/ui/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/_not-found.html +2 -2
- package/.next/standalone/packages/ui/.next/server/app/_not-found.rsc +18 -18
- package/.next/standalone/packages/ui/.next/server/app/_not-found.segments/_full.segment.rsc +18 -18
- package/.next/standalone/packages/ui/.next/server/app/_not-found.segments/_index.segment.rsc +11 -11
- package/.next/standalone/packages/ui/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
- package/.next/standalone/packages/ui/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/.next/standalone/packages/ui/.next/server/app/_not-found.segments/_tree.segment.rsc +5 -5
- package/.next/standalone/packages/ui/.next/server/app/api/context/route.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/context/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/dependencies/route/app-paths-manifest.json +3 -0
- package/.next/standalone/packages/ui/.next/server/app/api/dependencies/route/build-manifest.json +11 -0
- package/.next/standalone/packages/ui/.next/server/app/api/dependencies/route/server-reference-manifest.json +4 -0
- package/.next/standalone/packages/ui/.next/server/app/api/dependencies/route.js +8 -0
- package/.next/standalone/packages/ui/.next/server/app/api/dependencies/route.js.map +5 -0
- package/.next/standalone/packages/ui/.next/server/app/api/dependencies/route.js.nft.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/api/dependencies/route_client-reference-manifest.js +2 -0
- package/.next/standalone/packages/ui/.next/server/app/api/local-projects/[id]/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/local-projects/discover/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/local-projects/list-directory/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/local-projects/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/context/route/app-paths-manifest.json +3 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/context/route/build-manifest.json +11 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/context/route/server-reference-manifest.json +4 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/context/route.js +8 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/context/route.js.map +5 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/context/route.js.nft.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/context/route_client-reference-manifest.js +2 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/dependencies/route/app-paths-manifest.json +3 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/dependencies/route/build-manifest.json +11 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/dependencies/route/server-reference-manifest.json +4 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/dependencies/route.js +8 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/dependencies/route.js.map +5 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/dependencies/route.js.nft.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/dependencies/route_client-reference-manifest.js +2 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/route.js +1 -3
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/route.js +1 -2
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/status/route.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/status/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/route.js +1 -2
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/stats/route.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/stats/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/validate/route/app-paths-manifest.json +3 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/validate/route/build-manifest.json +11 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/validate/route/server-reference-manifest.json +4 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/validate/route.js +6 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/validate/route.js.map +5 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/validate/route.js.nft.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/validate/route_client-reference-manifest.js +2 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/route.js +1 -3
- package/.next/standalone/packages/ui/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/revalidate/route.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/revalidate/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/dependency-graph/route.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/dependency-graph/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/route.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/status/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/subspecs/[file]/route.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/subspecs/[file]/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/stats/route.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/stats/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/context/page/build-manifest.json +2 -2
- package/.next/standalone/packages/ui/.next/server/app/context/page.js +2 -2
- package/.next/standalone/packages/ui/.next/server/app/context/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/context/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/dependencies/page/app-paths-manifest.json +3 -0
- package/.next/standalone/packages/ui/.next/server/app/dependencies/page/build-manifest.json +18 -0
- package/.next/standalone/packages/ui/.next/server/app/dependencies/page/next-font-manifest.json +6 -0
- package/.next/standalone/packages/ui/.next/server/app/dependencies/page/react-loadable-manifest.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/dependencies/page/server-reference-manifest.json +4 -0
- package/.next/standalone/packages/ui/.next/server/app/dependencies/page.js +19 -0
- package/.next/standalone/packages/ui/.next/server/app/dependencies/page.js.map +5 -0
- package/.next/standalone/packages/ui/.next/server/app/dependencies/page.js.nft.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/dependencies/page_client-reference-manifest.js +2 -0
- package/.next/standalone/packages/ui/.next/server/app/page/build-manifest.json +2 -2
- package/.next/standalone/packages/ui/.next/server/app/page.js +4 -3
- package/.next/standalone/packages/ui/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/context/page/app-paths-manifest.json +3 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/context/page/build-manifest.json +18 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/context/page/next-font-manifest.json +6 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/context/page/react-loadable-manifest.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/context/page/server-reference-manifest.json +4 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/context/page.js +21 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/context/page.js.map +5 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/context/page.js.nft.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/context/page_client-reference-manifest.js +2 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/dependencies/page/app-paths-manifest.json +3 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/dependencies/page/build-manifest.json +18 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/dependencies/page/next-font-manifest.json +6 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/dependencies/page/react-loadable-manifest.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/dependencies/page/server-reference-manifest.json +4 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/dependencies/page.js +21 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/dependencies/page.js.map +5 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/dependencies/page.js.nft.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/dependencies/page_client-reference-manifest.js +2 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page/build-manifest.json +2 -2
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page.js +7 -7
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/[specId]/page/build-manifest.json +2 -2
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/[specId]/page.js +8 -7
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/[specId]/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/[specId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/page/build-manifest.json +2 -2
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/page.js +7 -6
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/specs/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/stats/page/app-paths-manifest.json +3 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/stats/page/build-manifest.json +18 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/stats/page/next-font-manifest.json +6 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/stats/page/react-loadable-manifest.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/stats/page/server-reference-manifest.json +4 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/stats/page.js +21 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/stats/page.js.map +5 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/stats/page.js.nft.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/stats/page_client-reference-manifest.js +2 -0
- package/.next/standalone/packages/ui/.next/server/app/projects/page/build-manifest.json +2 -2
- package/.next/standalone/packages/ui/.next/server/app/projects/page.js +7 -6
- package/.next/standalone/packages/ui/.next/server/app/projects/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects.html +2 -2
- package/.next/standalone/packages/ui/.next/server/app/projects.rsc +24 -23
- package/.next/standalone/packages/ui/.next/server/app/projects.segments/_full.segment.rsc +24 -23
- package/.next/standalone/packages/ui/.next/server/app/projects.segments/_index.segment.rsc +9 -9
- package/.next/standalone/packages/ui/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/packages/ui/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/packages/ui/.next/server/app/projects.segments/projects.segment.rsc +1 -1
- package/.next/standalone/packages/ui/.next/server/app/specs/[id]/page/build-manifest.json +2 -2
- package/.next/standalone/packages/ui/.next/server/app/specs/[id]/page.js +2 -2
- package/.next/standalone/packages/ui/.next/server/app/specs/[id]/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/specs/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/specs/page/build-manifest.json +2 -2
- package/.next/standalone/packages/ui/.next/server/app/specs/page.js +2 -2
- package/.next/standalone/packages/ui/.next/server/app/specs/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/specs/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/stats/page/build-manifest.json +2 -2
- package/.next/standalone/packages/ui/.next/server/app/stats/page.js +2 -2
- package/.next/standalone/packages/ui/.next/server/app/stats/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/stats/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app-paths-manifest.json +8 -0
- package/.next/standalone/packages/ui/.next/server/chunks/6681a__next-internal_server_app_api_projects_[id]_dependencies_route_actions_7ac49581.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/730ea_ui__next-internal_server_app_api_projects_[id]_context_route_actions_96adca70.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/730ea_ui__next-internal_server_app_api_projects_[id]_validate_route_actions_b60372c9.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[externals]_better-sqlite3_a1cc22cb._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__1706515f._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__18aca702._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__27348781._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__3a7f0840._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__3e17db24._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__5f1e0195._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__6e06fd2a._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__71d98924._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__97b99cc0._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__9d9758e1._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__b1ad8b69._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__b212b9bd._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__b9c03a57._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__e99e7672._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__f38a5f20._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/{[root-of-the-server]__126dea7b._.js → [root-of-the-server]__fa8cf2bc._.js} +2 -2
- package/.next/standalone/packages/ui/.next/server/chunks/packages_ui__next-internal_server_app_api_dependencies_route_actions_cf6b14c3.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/packages_ui_src_lib_specs_sources_database-source_ts_b8c1af87._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/packages_ui_src_lib_specs_sources_database-source_ts_baa0160d._.js +72 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/730ea_ui__next-internal_server_app_projects_[projectId]_context_page_actions_e4940a48.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/730ea_ui__next-internal_server_app_projects_[projectId]_stats_page_actions_82a85203.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__0f0dade1._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__13f96ef4._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__212c8580._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__2b66bcca._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__312221a2._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__366688dd._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/{[root-of-the-server]__fd80e4dd._.js → [root-of-the-server]__38c56adc._.js} +2 -2
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__44b603f9._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__46b71f61._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__53f4506c._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__665ae766._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__84124d4b._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__921689ca._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__a34731d8._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__a9d7fd42._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__b0d6e2ad._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__b27b2469._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__b3633d6e._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__dcee62dd._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_000dd317._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_03aa8d19._.js +7 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/{_39562b2a._.js → _170362f4._.js} +3 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_1a642e67._.js +4 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_28fe1532._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/{_85effc18._.js → _2bc76f88._.js} +3 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/{_fdd7780b._.js → _3f059230._.js} +3 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_58b98a8f._.js +4 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_8ab6f9ca._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_90eed09a._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/{_22274047._.js → _adb9d7cb._.js} +2 -2
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_b303aeea._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/{_bae6d2b8._.js → _b421ba4a._.js} +3 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_d840ffc6._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_da18b655._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_ec637d7c._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_f05260d6._.js +4 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_f38e75b7._.js +4 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_f9129aae._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/f825c_server_app_projects_[projectId]_dependencies_page_actions_ba2321b8.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_0056f1f2._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_015f83ca._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_30b0b05a._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_478d57e5._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_4e3e790c._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_80605a06._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/{node_modules__pnpm_f5b29533._.js → node_modules__pnpm_8680dc29._.js} +2 -2
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/{node_modules__pnpm_e175b92a._.js → node_modules__pnpm_94a0b1f5._.js} +2 -2
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_b4ff5c78._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_bb80de48._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/{node_modules__pnpm_7791e3b8._.js → node_modules__pnpm_d3262b3d._.js} +2 -2
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_e8075f9b._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_f919ef4a._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui__next-internal_server_app_dependencies_page_actions_57387d47.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui_src_app_context_context-client_tsx_4ba99a62._.js +2 -2
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui_src_app_dependencies_dependencies-client_tsx_0e82443a._.js +4 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui_src_app_projects_layout_tsx_86c2ce0f._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui_src_app_projects_page_tsx_6e166c8e._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui_src_app_specs_specs-client_tsx_0bb8f8f8._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui_src_components_spec-detail-wrapper_tsx_fd35401c._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/packages_ui_src_components_specs-nav-sidebar_tsx_8237ed13._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/middleware-build-manifest.js +2 -2
- package/.next/standalone/packages/ui/.next/server/pages/404.html +2 -2
- package/.next/standalone/packages/ui/.next/server/pages/500.html +2 -2
- package/.next/standalone/packages/ui/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/packages/ui/.next/static/chunks/04de9ed512b8098b.js +10 -0
- package/.next/standalone/packages/ui/.next/static/chunks/1e0689744f87e958.js +2 -0
- package/.next/standalone/packages/ui/.next/static/chunks/3d12a8c3152b526d.js +3 -0
- package/.next/standalone/packages/ui/.next/static/chunks/4610aea3ca2e69eb.js +2 -0
- package/.next/standalone/packages/ui/.next/static/chunks/46275d9d67603bf5.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/7931c6cb379305b1.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/7a00633903e066b4.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/{942cf63b4032c808.js → 7df6308e6cfcf902.js} +1 -1
- package/.next/standalone/packages/ui/.next/static/chunks/7f9a218732be8099.js +5 -0
- package/.next/standalone/packages/ui/.next/static/chunks/840c6743a491a398.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/8a6e8f3394240dbb.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/8d8c106c6848d15b.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/a5e25b9fa6b88eee.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/a640b005f2e15d98.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/a7075a240adea8e8.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/b53250480fde6816.js +1 -0
- package/.next/{static/chunks/794f3931f1ca12d2.js → standalone/packages/ui/.next/static/chunks/bbd498aa5689c057.js} +1 -1
- package/.next/standalone/packages/ui/.next/static/chunks/c26909a25ca9fc9b.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/c658e22a605e0ed1.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/c92660d8d0c4763d.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/{e3bc96a996e2a314.js → d26f4109b44eb240.js} +1 -1
- package/.next/standalone/packages/ui/.next/static/chunks/{3276ca6fd9005903.js → d52a048b511c32bd.js} +1 -1
- package/.next/standalone/packages/ui/.next/static/chunks/ddb2935cfe5310c7.css +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/e399b4afc7936907.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/f924ae32752e1583.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/ff11efb770d5a0bc.js +1 -0
- package/.next/{static/chunks/turbopack-5fa55215af0efb15.js → standalone/packages/ui/.next/static/chunks/turbopack-261c5dcdd873f310.js} +1 -1
- package/.next/standalone/packages/ui/package.json +3 -1
- package/.next/standalone/packages/ui/server.js +1 -1
- package/.next/standalone/packages/ui/src/app/api/dependencies/route.ts +81 -0
- package/.next/standalone/packages/ui/src/app/api/projects/[id]/context/route.ts +39 -0
- package/.next/standalone/packages/ui/src/app/api/projects/[id]/dependencies/route.ts +69 -0
- package/.next/standalone/packages/ui/src/app/api/projects/[id]/route.ts +25 -9
- package/.next/standalone/packages/ui/src/app/api/projects/[id]/specs/[spec]/route.ts +14 -14
- package/.next/standalone/packages/ui/src/app/api/projects/[id]/specs/route.ts +9 -8
- package/.next/standalone/packages/ui/src/app/api/projects/[id]/validate/route.ts +49 -0
- package/.next/standalone/packages/ui/src/app/api/projects/route.ts +18 -5
- package/.next/standalone/packages/ui/src/app/api/specs/[id]/dependency-graph/route.test.ts +0 -2
- package/.next/standalone/packages/ui/src/app/api/specs/[id]/dependency-graph/route.ts +0 -15
- package/.next/standalone/packages/ui/src/app/context/context-client.tsx +23 -1
- package/.next/standalone/packages/ui/src/app/dashboard-client.tsx +29 -58
- package/.next/standalone/packages/ui/src/app/dependencies/constants.ts +25 -0
- package/.next/standalone/packages/ui/src/app/dependencies/dependencies-client.tsx +700 -0
- package/.next/standalone/packages/ui/src/app/dependencies/index.ts +19 -0
- package/.next/standalone/packages/ui/src/app/dependencies/page.tsx +38 -0
- package/.next/standalone/packages/ui/src/app/dependencies/spec-node.tsx +80 -0
- package/.next/standalone/packages/ui/src/app/dependencies/spec-sidebar.tsx +171 -0
- package/.next/standalone/packages/ui/src/app/dependencies/types.ts +37 -0
- package/.next/standalone/packages/ui/src/app/dependencies/utils.ts +194 -0
- package/.next/standalone/packages/ui/src/app/page.tsx +24 -0
- package/.next/standalone/packages/ui/src/app/projects/[projectId]/context/page.tsx +41 -0
- package/.next/standalone/packages/ui/src/app/projects/[projectId]/dependencies/page.tsx +43 -0
- package/.next/standalone/packages/ui/src/app/projects/[projectId]/page.tsx +18 -2
- package/.next/standalone/packages/ui/src/app/projects/[projectId]/stats/page.tsx +24 -0
- package/.next/standalone/packages/ui/src/app/projects/layout.tsx +7 -0
- package/.next/standalone/packages/ui/src/app/projects/page.tsx +167 -20
- package/.next/standalone/packages/ui/src/app/specs/specs-client.tsx +27 -17
- package/.next/standalone/packages/ui/src/components/color-picker.tsx +73 -0
- package/.next/standalone/packages/ui/src/components/context-file-detail.tsx +308 -0
- package/.next/standalone/packages/ui/src/components/context-file-viewer.tsx +96 -2
- package/.next/standalone/packages/ui/src/components/create-project-dialog.tsx +3 -5
- package/.next/standalone/packages/ui/src/components/directory-picker.tsx +1 -0
- package/.next/standalone/packages/ui/src/components/main-sidebar.tsx +31 -6
- package/.next/standalone/packages/ui/src/components/markdown-link.tsx +15 -8
- package/.next/standalone/packages/ui/src/components/project-switcher.tsx +24 -5
- package/.next/standalone/packages/ui/src/components/quick-search.tsx +3 -1
- package/.next/standalone/packages/ui/src/components/spec-dependency-graph.tsx +13 -52
- package/.next/standalone/packages/ui/src/components/spec-detail-client.tsx +36 -11
- package/.next/standalone/packages/ui/src/components/spec-detail-wrapper.tsx +3 -4
- package/.next/standalone/packages/ui/src/components/specs-nav-sidebar.tsx +8 -6
- package/.next/standalone/packages/ui/src/contexts/project-context.tsx +24 -0
- package/.next/standalone/packages/ui/src/lib/db/service-queries.ts +85 -31
- package/.next/standalone/packages/ui/src/lib/dependency-graph.ts +0 -13
- package/.next/standalone/packages/ui/src/types/specs.ts +6 -4
- package/.next/standalone/packages/ui/tsconfig.tsbuildinfo +1 -1
- package/.next/static/chunks/04de9ed512b8098b.js +10 -0
- package/.next/static/chunks/1e0689744f87e958.js +2 -0
- package/.next/static/chunks/3d12a8c3152b526d.js +3 -0
- package/.next/static/chunks/4610aea3ca2e69eb.js +2 -0
- package/.next/static/chunks/46275d9d67603bf5.js +1 -0
- package/.next/static/chunks/7931c6cb379305b1.js +1 -0
- package/.next/static/chunks/7a00633903e066b4.js +1 -0
- package/.next/static/chunks/{942cf63b4032c808.js → 7df6308e6cfcf902.js} +1 -1
- package/.next/static/chunks/7f9a218732be8099.js +5 -0
- package/.next/static/chunks/840c6743a491a398.js +1 -0
- package/.next/static/chunks/8a6e8f3394240dbb.js +1 -0
- package/.next/static/chunks/8d8c106c6848d15b.js +1 -0
- package/.next/static/chunks/a5e25b9fa6b88eee.js +1 -0
- package/.next/static/chunks/a640b005f2e15d98.js +1 -0
- package/.next/static/chunks/a7075a240adea8e8.js +1 -0
- package/.next/static/chunks/b53250480fde6816.js +1 -0
- package/.next/{standalone/packages/ui/.next/static/chunks/794f3931f1ca12d2.js → static/chunks/bbd498aa5689c057.js} +1 -1
- package/.next/static/chunks/c26909a25ca9fc9b.js +1 -0
- package/.next/static/chunks/c658e22a605e0ed1.js +1 -0
- package/.next/static/chunks/c92660d8d0c4763d.js +1 -0
- package/.next/static/chunks/{e3bc96a996e2a314.js → d26f4109b44eb240.js} +1 -1
- package/.next/static/chunks/{3276ca6fd9005903.js → d52a048b511c32bd.js} +1 -1
- package/.next/static/chunks/ddb2935cfe5310c7.css +1 -0
- package/.next/static/chunks/e399b4afc7936907.js +1 -0
- package/.next/static/chunks/f924ae32752e1583.js +1 -0
- package/.next/static/chunks/ff11efb770d5a0bc.js +1 -0
- package/.next/{standalone/packages/ui/.next/static/chunks/turbopack-5fa55215af0efb15.js → static/chunks/turbopack-261c5dcdd873f310.js} +1 -1
- package/package.json +4 -2
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__65667b70._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__675a763e._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__803d07f0._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__8233e09b._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__84cdc14a._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__8a9ab1a3._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__aa677b0d._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__ae726e9c._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__bdc3963a._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__f06435b0._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__f5c6d6b8._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__fb91986f._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/packages_ui_src_lib_db_index_ts_556307fa._.js +0 -74
- package/.next/standalone/packages/ui/.next/server/chunks/packages_ui_src_lib_specs_sources_database-source_ts_0bd881ee._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__01bfc8ff._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__12b4eb41._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__4ec37765._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__50122e7e._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__6e739186._.js +0 -7
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__88a691ee._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__a4c56419._.js +0 -7
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__b6632d78._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__bdbbba01._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__cc589a54._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__daee3355._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__ead1539c._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_0f9ffe32._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_315f3b3a._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_3b617676._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_9dcf102b._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_ac867463._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_b397e94a._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_3ba1438c._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/node_modules__pnpm_8272a49c._.js +0 -3
- package/.next/standalone/packages/ui/.next/static/chunks/1eb8283995f370c6.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/20f4141ccb5d4eb4.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/2c85b8059e42248a.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/336e8e8fc6b0fba8.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/37a1236ed50645a6.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/3b6b058ebd14dbed.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/9d84ba08a41145ec.js +0 -5
- package/.next/standalone/packages/ui/.next/static/chunks/b8353eb8c6fb895e.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/c4b1faff3361a749.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/d7420d2a867e57b5.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/dae403679aae65f4.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/efded9da04c960d8.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/f382932f1a5d6359.js +0 -10
- package/.next/standalone/packages/ui/.next/static/chunks/f43b6e43b4da1a32.css +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/f6dd06e6d22d2d12.js +0 -3
- package/.next/standalone/packages/ui/dist/BUILD_ID +0 -1
- package/.next/standalone/packages/ui/dist/public/f864aa7e7061c0600e35cf3d879b27cf.txt +0 -1
- package/.next/standalone/packages/ui/dist/public/favicon.ico +0 -0
- package/.next/standalone/packages/ui/dist/public/file.svg +0 -1
- package/.next/standalone/packages/ui/dist/public/github-mark-white.svg +0 -1
- package/.next/standalone/packages/ui/dist/public/github-mark.svg +0 -1
- package/.next/standalone/packages/ui/dist/public/globe.svg +0 -1
- package/.next/standalone/packages/ui/dist/public/icon.svg +0 -7
- package/.next/standalone/packages/ui/dist/public/logo-dark-bg.svg +0 -17
- package/.next/standalone/packages/ui/dist/public/logo-with-bg.svg +0 -17
- package/.next/standalone/packages/ui/dist/public/logo.svg +0 -17
- package/.next/standalone/packages/ui/dist/public/next.svg +0 -1
- package/.next/standalone/packages/ui/dist/public/vercel.svg +0 -1
- package/.next/standalone/packages/ui/dist/public/window.svg +0 -1
- package/.next/standalone/packages/ui/dist/standalone/packages/web/README.md +0 -196
- package/.next/standalone/packages/ui/dist/standalone/packages/web/package.json +0 -75
- package/.next/standalone/packages/ui/dist/standalone/packages/web/server.js +0 -44
- package/.next/standalone/packages/ui/dist/standalone/specs/014-complete-custom-frontmatter/README.md +0 -175
- package/.next/standalone/packages/ui/dist/standalone/specs/016-github-action/README.md +0 -317
- package/.next/standalone/packages/ui/dist/standalone/specs/017-vscode-extension/README.md +0 -261
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/CLI-DESIGN.md +0 -380
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/CONFIGURATION-EXAMPLES.md +0 -230
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/CONFIGURATION.md +0 -285
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/IMPLEMENTATION.md +0 -358
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/README.md +0 -303
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/TESTING.md +0 -368
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/VALIDATION-RULES.md +0 -327
- package/.next/standalone/packages/ui/dist/standalone/specs/024-pattern-aware-list-grouping/README.md +0 -117
- package/.next/standalone/packages/ui/dist/standalone/specs/025-template-config-updates/README.md +0 -73
- package/.next/standalone/packages/ui/dist/standalone/specs/026-init-pattern-selection/README.md +0 -109
- package/.next/standalone/packages/ui/dist/standalone/specs/034-copilot-slash-commands/README.md +0 -107
- package/.next/standalone/packages/ui/dist/standalone/specs/035-live-specs-showcase/ARCHITECTURE.md +0 -244
- package/.next/standalone/packages/ui/dist/standalone/specs/035-live-specs-showcase/IMPLEMENTATION.md +0 -429
- package/.next/standalone/packages/ui/dist/standalone/specs/035-live-specs-showcase/README.md +0 -302
- package/.next/standalone/packages/ui/dist/standalone/specs/036-pm-integrations/README.md +0 -158
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DEMO-AI-ASSISTED.md +0 -359
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DEMO-FULL-LIFECYCLE.md +0 -86
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DEMO-REAL-FEATURE.md +0 -437
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DEMO-SCRIPT.md +0 -365
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DOGFOODING-FINAL.md +0 -203
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DOGFOODING-SESSION-2025-11-06.md +0 -174
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DOGFOODING-SUMMARY.md +0 -156
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/IMPLEMENTATION.md +0 -183
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/MARKETING.md +0 -229
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/NEXT-STEPS-DEMO.md +0 -243
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/README.md +0 -217
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/SESSION-2025-11-06.md +0 -166
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/TESTING.md +0 -126
- package/.next/standalone/packages/ui/dist/standalone/specs/045-unified-dashboard/ACTUAL-IMPLEMENTATION.md +0 -108
- package/.next/standalone/packages/ui/dist/standalone/specs/045-unified-dashboard/DESIGN.md +0 -382
- package/.next/standalone/packages/ui/dist/standalone/specs/045-unified-dashboard/IMPLEMENTATION.md +0 -144
- package/.next/standalone/packages/ui/dist/standalone/specs/045-unified-dashboard/RATIONALE.md +0 -146
- package/.next/standalone/packages/ui/dist/standalone/specs/045-unified-dashboard/README.md +0 -208
- package/.next/standalone/packages/ui/dist/standalone/specs/045-unified-dashboard/TESTING.md +0 -182
- package/.next/standalone/packages/ui/dist/standalone/specs/047-git-backfill-timestamps/README.md +0 -314
- package/.next/standalone/packages/ui/dist/standalone/specs/048-spec-complexity-analysis/FINDINGS.md +0 -113
- package/.next/standalone/packages/ui/dist/standalone/specs/048-spec-complexity-analysis/GUIDELINES.md +0 -237
- package/.next/standalone/packages/ui/dist/standalone/specs/048-spec-complexity-analysis/README.md +0 -149
- package/.next/standalone/packages/ui/dist/standalone/specs/049-leanspec-first-principles/ANALYSIS-COMPARISONS.md +0 -175
- package/.next/standalone/packages/ui/dist/standalone/specs/049-leanspec-first-principles/ANALYSIS-CONSTRAINTS.md +0 -254
- package/.next/standalone/packages/ui/dist/standalone/specs/049-leanspec-first-principles/FIRST-PRINCIPLES.md +0 -376
- package/.next/standalone/packages/ui/dist/standalone/specs/049-leanspec-first-principles/OPERATIONALIZATION-ROADMAP.md +0 -240
- package/.next/standalone/packages/ui/dist/standalone/specs/049-leanspec-first-principles/OPERATIONALIZATION-TOOLS.md +0 -175
- package/.next/standalone/packages/ui/dist/standalone/specs/049-leanspec-first-principles/README.md +0 -374
- package/.next/standalone/packages/ui/dist/standalone/specs/051-docs-system-prompt-principles/README.md +0 -339
- package/.next/standalone/packages/ui/dist/standalone/specs/052-branding-assets/README.md +0 -128
- package/.next/standalone/packages/ui/dist/standalone/specs/053-spec-assets-philosophy/README.md +0 -97
- package/.next/standalone/packages/ui/dist/standalone/specs/054-validate-output-lint-style/DESIGN-DECISIONS.md +0 -93
- package/.next/standalone/packages/ui/dist/standalone/specs/054-validate-output-lint-style/OUTPUT-FORMAT-SPEC.md +0 -146
- package/.next/standalone/packages/ui/dist/standalone/specs/054-validate-output-lint-style/README.md +0 -175
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/ANALYSIS-PART1.md +0 -397
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/ANALYSIS-PART2.md +0 -342
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/ANALYSIS.md +0 -44
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/CHANGES.md +0 -150
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/CONCERNS-ANALYSIS.md +0 -351
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/DOCS-ALIGNMENT-ANALYSIS.md +0 -238
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/README.md +0 -280
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/REDESIGN-DRAFT.md +0 -372
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/REDESIGN-REFINED.md +0 -466
- package/.next/standalone/packages/ui/dist/standalone/specs/056-docs-site-accuracy-audit/AUDIT-RESULTS.md +0 -178
- package/.next/standalone/packages/ui/dist/standalone/specs/056-docs-site-accuracy-audit/README.md +0 -174
- package/.next/standalone/packages/ui/dist/standalone/specs/057-docs-validation-comprehensive/README.md +0 -295
- package/.next/standalone/packages/ui/dist/standalone/specs/057-docs-validation-comprehensive/VALIDATION-RESULTS.md +0 -487
- package/.next/standalone/packages/ui/dist/standalone/specs/058-docs-overview-polish/ANALYSIS.md +0 -241
- package/.next/standalone/packages/ui/dist/standalone/specs/058-docs-overview-polish/DESIGN.md +0 -279
- package/.next/standalone/packages/ui/dist/standalone/specs/058-docs-overview-polish/IMPLEMENTATION.md +0 -642
- package/.next/standalone/packages/ui/dist/standalone/specs/058-docs-overview-polish/NOTES.md +0 -125
- package/.next/standalone/packages/ui/dist/standalone/specs/058-docs-overview-polish/README.md +0 -286
- package/.next/standalone/packages/ui/dist/standalone/specs/059-programmatic-spec-management/ARCHITECTURE.md +0 -392
- package/.next/standalone/packages/ui/dist/standalone/specs/059-programmatic-spec-management/COMMANDS.md +0 -1002
- package/.next/standalone/packages/ui/dist/standalone/specs/059-programmatic-spec-management/CONTEXT-ENGINEERING.md +0 -411
- package/.next/standalone/packages/ui/dist/standalone/specs/059-programmatic-spec-management/IMPLEMENTATION.md +0 -812
- package/.next/standalone/packages/ui/dist/standalone/specs/059-programmatic-spec-management/README.md +0 -504
- package/.next/standalone/packages/ui/dist/standalone/specs/059-programmatic-spec-management/TESTING.md +0 -724
- package/.next/standalone/packages/ui/dist/standalone/specs/060-core-concepts-coherence/README.md +0 -125
- package/.next/standalone/packages/ui/dist/standalone/specs/061-ai-assisted-spec-writing/README.md +0 -299
- package/.next/standalone/packages/ui/dist/standalone/specs/062-docs-info-architecture-v2/IMPLEMENTATION-PLAN.md +0 -174
- package/.next/standalone/packages/ui/dist/standalone/specs/062-docs-info-architecture-v2/PAGE-SPECIFICATIONS.md +0 -265
- package/.next/standalone/packages/ui/dist/standalone/specs/062-docs-info-architecture-v2/PROBLEM-ANALYSIS.md +0 -36
- package/.next/standalone/packages/ui/dist/standalone/specs/062-docs-info-architecture-v2/README.md +0 -243
- package/.next/standalone/packages/ui/dist/standalone/specs/062-docs-info-architecture-v2/SOLUTION-DESIGN.md +0 -82
- package/.next/standalone/packages/ui/dist/standalone/specs/063-migration-from-existing-tools/DESIGN.md +0 -338
- package/.next/standalone/packages/ui/dist/standalone/specs/063-migration-from-existing-tools/EXAMPLES.md +0 -354
- package/.next/standalone/packages/ui/dist/standalone/specs/063-migration-from-existing-tools/IMPLEMENTATION.md +0 -189
- package/.next/standalone/packages/ui/dist/standalone/specs/063-migration-from-existing-tools/README.md +0 -119
- package/.next/standalone/packages/ui/dist/standalone/specs/064-docs-site-zh-translation/README.md +0 -170
- package/.next/standalone/packages/ui/dist/standalone/specs/065-v03-planning/README.md +0 -158
- package/.next/standalone/packages/ui/dist/standalone/specs/066-context-economy-thresholds-refinement/README.md +0 -842
- package/.next/standalone/packages/ui/dist/standalone/specs/067-monorepo-core-extraction/README.md +0 -358
- package/.next/standalone/packages/ui/dist/standalone/specs/068-live-specs-ux-enhancements/DESIGN.md +0 -444
- package/.next/standalone/packages/ui/dist/standalone/specs/068-live-specs-ux-enhancements/README.md +0 -357
- package/.next/standalone/packages/ui/dist/standalone/specs/069-token-counting-utils/README.md +0 -551
- package/.next/standalone/packages/ui/dist/standalone/specs/070-mcp-token-counting-tool/README.md +0 -372
- package/.next/standalone/packages/ui/dist/standalone/specs/071-simplified-token-validation/README.md +0 -489
- package/.next/standalone/packages/ui/dist/standalone/specs/072-ai-agent-first-use-workflow/README.md +0 -285
- package/.next/standalone/packages/ui/dist/standalone/specs/073-template-engine-agents-md/README.md +0 -323
- package/.next/standalone/packages/ui/dist/standalone/specs/074-content-at-creation/README.md +0 -136
- package/.next/standalone/packages/ui/dist/standalone/specs/075-intelligent-search-engine/README.md +0 -399
- package/.next/standalone/packages/ui/dist/standalone/specs/076-programmatic-spec-relationships/README.md +0 -301
- package/.next/standalone/packages/ui/dist/standalone/specs/077-archiving-strategy/README.md +0 -235
- package/.next/standalone/packages/ui/dist/standalone/specs/078-sub-spec-template-system/README.md +0 -303
- package/.next/standalone/packages/ui/dist/standalone/specs/079-cli-alphabetical-organization/README.md +0 -196
- package/.next/standalone/packages/ui/dist/standalone/specs/080-mcp-server-modular-architecture/README.md +0 -388
- package/.next/standalone/packages/ui/dist/standalone/specs/081-web-app-ux-redesign/README.md +0 -824
- package/.next/standalone/packages/ui/dist/standalone/specs/082-web-realtime-sync-architecture/DATABASE.md +0 -111
- package/.next/standalone/packages/ui/dist/standalone/specs/082-web-realtime-sync-architecture/DEPLOYMENT.md +0 -69
- package/.next/standalone/packages/ui/dist/standalone/specs/082-web-realtime-sync-architecture/FILESYSTEM.md +0 -77
- package/.next/standalone/packages/ui/dist/standalone/specs/082-web-realtime-sync-architecture/IMPLEMENTATION.md +0 -184
- package/.next/standalone/packages/ui/dist/standalone/specs/082-web-realtime-sync-architecture/README.md +0 -496
- package/.next/standalone/packages/ui/dist/standalone/specs/083-web-navigation-performance/README.md +0 -490
- package/.next/standalone/packages/ui/dist/standalone/specs/084-sub-spec-visibility-in-tools/README.md +0 -389
- package/.next/standalone/packages/ui/dist/standalone/specs/085-cli-relationship-commands/README.md +0 -920
- package/.next/standalone/packages/ui/dist/standalone/specs/086-template-component-deduplication/README.md +0 -146
- package/.next/standalone/packages/ui/dist/standalone/specs/087-cli-ui-command/README.md +0 -607
- package/.next/standalone/packages/ui/dist/standalone/specs/088-core-concepts-terminology-only/README.md +0 -104
- package/.next/standalone/packages/ui/dist/standalone/specs/089-sdd-practical-tutorials/README.md +0 -124
- package/.next/standalone/packages/ui/dist/standalone/specs/090-leanspec-sdd-case-studies/README.md +0 -129
- package/.next/standalone/packages/ui/dist/standalone/specs/091-chinese-localization-strategy/README.md +0 -244
- package/.next/standalone/packages/ui/dist/standalone/specs/092-docs-site-submodule-migration/README.md +0 -148
- package/.next/standalone/packages/ui/dist/standalone/specs/093-spec-detail-ui-improvements/README.md +0 -54
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/001-typescript-cli-migration/README.md +0 -37
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/002-template-system-redesign/README.md +0 -60
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/003-init-system-redesign/README.md +0 -113
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/004-existing-project-integration/README.md +0 -69
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/004-existing-project-integration/SUMMARY.md +0 -112
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/005-structured-frontmatter/README.md +0 -229
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/006-pm-visualization-tools/README.md +0 -406
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/007-system-prompt-updates/README.md +0 -168
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/008-commander-migration/README.md +0 -174
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/009-cli-ux-enhancement/README.md +0 -212
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/010-commands-refactor/README.md +0 -249
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/011-test-results/README.md +0 -60
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/011-test-results/TEST_SUMMARY.md +0 -139
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/012-sub-spec-files/README.md +0 -722
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/013-custom-spec-templates/README.md +0 -413
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/015-npm-publishing/README.md +0 -255
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/019-readme-improvement/README.md +0 -252
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/020-documentation-website/README.md +0 -253
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/021-docusaurus-vercel-migration/README.md +0 -612
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/022-flexible-folder-structure/README.md +0 -794
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/023-folder-structure-improvements/DESIGN.md +0 -834
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/023-folder-structure-improvements/README.md +0 -255
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/027-cli-ui-ux-optimization/README.md +0 -454
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/028-cli-ui-modernization/README.md +0 -172
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/029-visualization-improvements/IMPLEMENTATION.md +0 -152
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/029-visualization-improvements/README.md +0 -95
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/030-created-date-format-bug/README.md +0 -87
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/031-gantt-ux-improvements/README.md +0 -230
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/032-console-log-chalk-security/README.md +0 -89
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/033-mcp-server/README.md +0 -89
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/037-docs-overhaul/README.md +0 -166
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/038-flat-structure-migration/README.md +0 -276
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/038-mcp-frontmatter-bug-fix/README.md +0 -122
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/039-simplify-viewer-commands/README.md +0 -198
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/039-template-variable-sync/README.md +0 -192
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/040-spec-viewer-commands/README.md +0 -171
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/042-mcp-error-handling/README.md +0 -200
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/044-spec-relationships-clarity/README.md +0 -317
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/046-stats-dashboard-refactor/DESIGN.md +0 -276
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/046-stats-dashboard-refactor/IMPLEMENTATION.md +0 -241
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/046-stats-dashboard-refactor/README.md +0 -139
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/046-stats-dashboard-refactor/TESTING.md +0 -328
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/050-tool-redesign-first-principles/README.md +0 -400
- package/.next/standalone/packages/ui/dist/static/chunks/0c19c69aa7625475.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/116800b03245a1e5.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/15843a3d7584e314.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/19e80edf527aef5c.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/465954d5af3284a9.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/5abeeb89f1412a80.js +0 -3
- package/.next/standalone/packages/ui/dist/static/chunks/5c2072ad938de8ed.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/6a05a93ec8fa7b83.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/778e42188e450b39.css +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/a02c1f50ff00204f.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/a45464b9776dd88e.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/a6dad97d9634a72d.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/b0ea0ac61604f843.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/c06e85b449720194.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/c557ac675be79771.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/cad005a57ffbb2d3.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/cdf6fe33bc65efbc.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/d12ed5dbe44caed7.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/d1ebe5c1a344f4ca.js +0 -5
- package/.next/standalone/packages/ui/dist/static/chunks/d42cf1682bc46652.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/dde5d8bddd7fbfcf.js +0 -1
- package/.next/standalone/packages/ui/dist/static/chunks/ebd89051637b9a47.js +0 -4
- package/.next/standalone/packages/ui/dist/static/chunks/ec82875d18b29f47.js +0 -2
- package/.next/standalone/packages/ui/dist/static/chunks/f0b701df9769bcc5.js +0 -19
- package/.next/standalone/packages/ui/dist/static/chunks/turbopack-1c09a99f4c9e28d3.js +0 -3
- package/.next/static/-Mn9iD4O5f_khGd1P3kmB/_buildManifest.js +0 -11
- package/.next/static/-Mn9iD4O5f_khGd1P3kmB/_clientMiddlewareManifest.json +0 -1
- package/.next/static/-Mn9iD4O5f_khGd1P3kmB/_ssgManifest.js +0 -1
- package/.next/static/chunks/1eb8283995f370c6.js +0 -1
- package/.next/static/chunks/20f4141ccb5d4eb4.js +0 -1
- package/.next/static/chunks/2c85b8059e42248a.js +0 -1
- package/.next/static/chunks/336e8e8fc6b0fba8.js +0 -1
- package/.next/static/chunks/37a1236ed50645a6.js +0 -1
- package/.next/static/chunks/3b6b058ebd14dbed.js +0 -1
- package/.next/static/chunks/9d84ba08a41145ec.js +0 -5
- package/.next/static/chunks/b8353eb8c6fb895e.js +0 -1
- package/.next/static/chunks/c4b1faff3361a749.js +0 -1
- package/.next/static/chunks/d7420d2a867e57b5.js +0 -1
- package/.next/static/chunks/dae403679aae65f4.js +0 -1
- package/.next/static/chunks/efded9da04c960d8.js +0 -1
- package/.next/static/chunks/f382932f1a5d6359.js +0 -10
- package/.next/static/chunks/f43b6e43b4da1a32.css +0 -1
- package/.next/static/chunks/f6dd06e6d22d2d12.js +0 -3
- /package/.next/standalone/packages/ui/.next/static/{-Mn9iD4O5f_khGd1P3kmB → T8X9UGfigRL0qWZiBHNjy}/_buildManifest.js +0 -0
- /package/.next/standalone/packages/ui/.next/static/{-Mn9iD4O5f_khGd1P3kmB → T8X9UGfigRL0qWZiBHNjy}/_clientMiddlewareManifest.json +0 -0
- /package/.next/standalone/packages/ui/.next/static/{-Mn9iD4O5f_khGd1P3kmB → T8X9UGfigRL0qWZiBHNjy}/_ssgManifest.js +0 -0
- /package/.next/{standalone/packages/ui/dist/static/4ZnYN1WbN4LGJQOwP6FkT → static/T8X9UGfigRL0qWZiBHNjy}/_buildManifest.js +0 -0
- /package/.next/{standalone/packages/ui/dist/static/4ZnYN1WbN4LGJQOwP6FkT → static/T8X9UGfigRL0qWZiBHNjy}/_clientMiddlewareManifest.json +0 -0
- /package/.next/{standalone/packages/ui/dist/static/4ZnYN1WbN4LGJQOwP6FkT → static/T8X9UGfigRL0qWZiBHNjy}/_ssgManifest.js +0 -0
package/.next/standalone/packages/ui/dist/standalone/specs/archived/012-sub-spec-files/README.md
DELETED
|
@@ -1,722 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
status: complete
|
|
3
|
-
created: '2025-11-01'
|
|
4
|
-
tags:
|
|
5
|
-
- enhancement
|
|
6
|
-
- cli
|
|
7
|
-
- specs
|
|
8
|
-
- organization
|
|
9
|
-
priority: medium
|
|
10
|
-
completed: '2025-11-02'
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
# Sub-Spec Files Management
|
|
14
|
-
|
|
15
|
-
> **Status**: ✅ Complete · **Priority**: Medium · **Created**: 2025-11-01 · **Tags**: enhancement, cli, specs, organization
|
|
16
|
-
|
|
17
|
-
## Implementation Status
|
|
18
|
-
|
|
19
|
-
**Phase 1 (Core Support) - ✅ Implemented (2025-11-06)**
|
|
20
|
-
- ✅ `loadSubFiles()` function implemented in `spec-loader.ts`
|
|
21
|
-
- ✅ `lean-spec files <spec>` command implemented
|
|
22
|
-
- ✅ `lean-spec view <spec>/SUBFILE.md` - View sub-spec files directly
|
|
23
|
-
- ✅ `lean-spec open <spec>/SUBFILE.md` - Open sub-spec files in editor
|
|
24
|
-
- ✅ Sub-spec viewing with all output modes (formatted, --raw, --json)
|
|
25
|
-
- ✅ Full test coverage for sub-spec viewing
|
|
26
|
-
- ✅ Documentation updated (README.md, AGENTS.md, CLI help)
|
|
27
|
-
|
|
28
|
-
**Not Yet Implemented:**
|
|
29
|
-
- ⏸️ Phase 2: Enhanced `lean-spec create` with `--files` option
|
|
30
|
-
- ⏸️ Phase 3: `lean-spec validate` link checker
|
|
31
|
-
- ⏸️ Phase 4: `lean-spec merge` command
|
|
32
|
-
|
|
33
|
-
**Key Feature:** You can now view and open sub-spec files using paths like:
|
|
34
|
-
```bash
|
|
35
|
-
lean-spec view 045/IMPLEMENTATION.md
|
|
36
|
-
lean-spec view my-spec/TESTING.md --raw
|
|
37
|
-
lean-spec open 012/DESIGN.md
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
## Overview
|
|
41
|
-
|
|
42
|
-
Enable specs to contain multiple organized documents beyond just `README.md`. As specs grow in complexity, teams need to split content into focused sub-documents while maintaining discoverability and structure.
|
|
43
|
-
|
|
44
|
-
**Current State**: Each spec is a single `README.md` file. Some specs informally add extra files (e.g., `SUMMARY.md`, `TEST_SUMMARY.md`), but there's no standardized approach or tooling support.
|
|
45
|
-
|
|
46
|
-
**Goal**: Provide a lightweight, discoverable system for organizing multi-document specs that:
|
|
47
|
-
- Keeps the main `README.md` as the entry point (backwards compatible)
|
|
48
|
-
- Allows structured sub-documents with clear naming conventions
|
|
49
|
-
- Provides CLI commands to discover and work with sub-files
|
|
50
|
-
- Maintains the LeanSpec philosophy: only add structure when you feel the pain
|
|
51
|
-
|
|
52
|
-
## The Problem
|
|
53
|
-
|
|
54
|
-
Real-world scenarios where single-file specs break down:
|
|
55
|
-
|
|
56
|
-
1. **Test Documentation**: A feature spec with extensive test plans/results
|
|
57
|
-
- `README.md` - Feature spec
|
|
58
|
-
- `TESTING.md` - Test strategy and results
|
|
59
|
-
- `TEST_SUMMARY.md` - Quick test summary
|
|
60
|
-
|
|
61
|
-
2. **API Specifications**: API design with detailed endpoints
|
|
62
|
-
- `README.md` - API overview and design decisions
|
|
63
|
-
- `ENDPOINTS.md` - Detailed endpoint specifications
|
|
64
|
-
- `SCHEMAS.md` - Data models and validation rules
|
|
65
|
-
- `EXAMPLES.md` - Request/response examples
|
|
66
|
-
|
|
67
|
-
3. **Architecture Decisions**: Complex system designs
|
|
68
|
-
- `README.md` - Architecture overview
|
|
69
|
-
- `DECISIONS.md` - ADR-style decision log
|
|
70
|
-
- `DIAGRAMS.md` - Architecture diagrams and explanations
|
|
71
|
-
- `MIGRATION.md` - Migration strategy from old to new
|
|
72
|
-
|
|
73
|
-
4. **Epic/Feature Sets**: Large features broken into phases
|
|
74
|
-
- `README.md` - Epic overview
|
|
75
|
-
- `PHASE1.md` - Phase 1 implementation details
|
|
76
|
-
- `PHASE2.md` - Phase 2 implementation details
|
|
77
|
-
- `ROLLOUT.md` - Deployment and rollout strategy
|
|
78
|
-
|
|
79
|
-
5. **Research & Prototyping**: Exploratory work with multiple approaches
|
|
80
|
-
- `README.md` - Research goals and summary
|
|
81
|
-
- `APPROACH_A.md` - First approach investigation
|
|
82
|
-
- `APPROACH_B.md` - Alternative approach
|
|
83
|
-
- `FINDINGS.md` - Comparative analysis and recommendation
|
|
84
|
-
|
|
85
|
-
## Design
|
|
86
|
-
|
|
87
|
-
### File Organization Principles
|
|
88
|
-
|
|
89
|
-
**1. README.md is Always the Entry Point**
|
|
90
|
-
- Every spec MUST have a `README.md`
|
|
91
|
-
- It contains the frontmatter (single source of truth for metadata)
|
|
92
|
-
- It provides overview and links to sub-documents
|
|
93
|
-
- Tooling always loads `README.md` first
|
|
94
|
-
|
|
95
|
-
**2. Naming Conventions**
|
|
96
|
-
|
|
97
|
-
Follow these patterns for discoverability:
|
|
98
|
-
|
|
99
|
-
```
|
|
100
|
-
specs/YYYYMMDD/NNN-spec-name/
|
|
101
|
-
├── README.md # Main spec (required, has frontmatter)
|
|
102
|
-
├── TESTING.md # Test-related content
|
|
103
|
-
├── API.md # API specifications
|
|
104
|
-
├── ARCHITECTURE.md # Architecture decisions
|
|
105
|
-
├── MIGRATION.md # Migration strategy
|
|
106
|
-
├── PHASE{N}.md # Phase-based breakdown
|
|
107
|
-
├── RESEARCH.md # Research findings
|
|
108
|
-
├── DECISIONS.md # Decision log (ADR-style)
|
|
109
|
-
├── EXAMPLES.md # Code/usage examples
|
|
110
|
-
├── DIAGRAMS.md # Visual diagrams
|
|
111
|
-
├── ROLLOUT.md # Deployment plans
|
|
112
|
-
└── assets/ # Images, diagrams, etc.
|
|
113
|
-
├── diagram.png
|
|
114
|
-
└── flow.svg
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
**3. Sub-Document Structure**
|
|
118
|
-
|
|
119
|
-
Each sub-document should follow this lightweight template:
|
|
120
|
-
|
|
121
|
-
```markdown
|
|
122
|
-
# {Document Title}
|
|
123
|
-
|
|
124
|
-
> Part of spec: [009-sub-spec-files](README.md)
|
|
125
|
-
|
|
126
|
-
## {Section}
|
|
127
|
-
|
|
128
|
-
Content here...
|
|
129
|
-
|
|
130
|
-
## Related Documents
|
|
131
|
-
|
|
132
|
-
- [Main Spec](README.md) - Overview and goals
|
|
133
|
-
- [Testing](TESTING.md) - Test strategy
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
**4. README.md Integration**
|
|
137
|
-
|
|
138
|
-
Main spec should link to sub-documents in a clear section:
|
|
139
|
-
|
|
140
|
-
```markdown
|
|
141
|
-
## Documentation Structure
|
|
142
|
-
|
|
143
|
-
This spec is organized into multiple documents:
|
|
144
|
-
|
|
145
|
-
- **[Testing Strategy](TESTING.md)** - Test plans and results
|
|
146
|
-
- **[API Specification](API.md)** - Detailed endpoint specs
|
|
147
|
-
- **[Migration Plan](MIGRATION.md)** - How to migrate from v1 to v2
|
|
148
|
-
|
|
149
|
-
## Quick Links
|
|
150
|
-
|
|
151
|
-
- 📋 [Full test results](TESTING.md#results)
|
|
152
|
-
- 🔗 [API endpoints](API.md#endpoints)
|
|
153
|
-
- 🚀 [Rollout timeline](MIGRATION.md#timeline)
|
|
154
|
-
```
|
|
155
|
-
|
|
156
|
-
### CLI Commands
|
|
157
|
-
|
|
158
|
-
#### 1. `lean-spec create` Enhancement
|
|
159
|
-
|
|
160
|
-
Support creating specs with templates that include sub-files:
|
|
161
|
-
|
|
162
|
-
```bash
|
|
163
|
-
# Create spec with sub-files from template
|
|
164
|
-
lean-spec create my-api-spec --template=api
|
|
165
|
-
# Creates: README.md, API.md, SCHEMAS.md, EXAMPLES.md
|
|
166
|
-
|
|
167
|
-
# Create spec with custom sub-files
|
|
168
|
-
lean-spec create my-feature --files=TESTING.md,MIGRATION.md
|
|
169
|
-
# Creates: README.md, TESTING.md, MIGRATION.md
|
|
170
|
-
|
|
171
|
-
# Add sub-file to existing spec
|
|
172
|
-
lean-spec add specs/20251101/001-my-spec/TESTING.md
|
|
173
|
-
# Creates TESTING.md with proper template and links
|
|
174
|
-
```
|
|
175
|
-
|
|
176
|
-
#### 2. `lean-spec files` - List Sub-Documents
|
|
177
|
-
|
|
178
|
-
Show all files in a spec:
|
|
179
|
-
|
|
180
|
-
```bash
|
|
181
|
-
$ lean-spec files specs/20251101/009-sub-spec-files
|
|
182
|
-
|
|
183
|
-
📄 Files in 009-sub-spec-files
|
|
184
|
-
|
|
185
|
-
Required:
|
|
186
|
-
✓ README.md (2.4 KB) Main spec
|
|
187
|
-
|
|
188
|
-
Documents:
|
|
189
|
-
✓ TESTING.md (1.8 KB) Test strategy and results
|
|
190
|
-
✓ API.md (3.2 KB) API endpoints and schemas
|
|
191
|
-
✓ MIGRATION.md (1.1 KB) Migration plan
|
|
192
|
-
|
|
193
|
-
Assets:
|
|
194
|
-
✓ assets/diagram.png (45 KB) Architecture diagram
|
|
195
|
-
✓ assets/flow.svg (8 KB) User flow
|
|
196
|
-
|
|
197
|
-
Total: 6 files, 61.5 KB
|
|
198
|
-
```
|
|
199
|
-
|
|
200
|
-
**Options:**
|
|
201
|
-
- `--type=docs` - Show only markdown documents
|
|
202
|
-
- `--type=assets` - Show only assets
|
|
203
|
-
- `--tree` - Show as tree structure
|
|
204
|
-
- `--json` - Output as JSON
|
|
205
|
-
|
|
206
|
-
#### 3. `lean-spec toc` - Generate Table of Contents
|
|
207
|
-
|
|
208
|
-
Auto-generate cross-document table of contents:
|
|
209
|
-
|
|
210
|
-
```bash
|
|
211
|
-
$ lean-spec toc specs/20251101/009-sub-spec-files
|
|
212
|
-
|
|
213
|
-
# 009-sub-spec-files
|
|
214
|
-
|
|
215
|
-
## Overview
|
|
216
|
-
- [Main Spec](README.md#overview)
|
|
217
|
-
- [Design](README.md#design)
|
|
218
|
-
|
|
219
|
-
## Testing
|
|
220
|
-
- [Test Strategy](TESTING.md#strategy)
|
|
221
|
-
- [Test Results](TESTING.md#results)
|
|
222
|
-
- [Coverage Report](TESTING.md#coverage)
|
|
223
|
-
|
|
224
|
-
## API
|
|
225
|
-
- [Endpoints](API.md#endpoints)
|
|
226
|
-
- [Create User](API.md#create-user)
|
|
227
|
-
- [Update User](API.md#update-user)
|
|
228
|
-
- [Schemas](API.md#schemas)
|
|
229
|
-
|
|
230
|
-
## Migration
|
|
231
|
-
- [Timeline](MIGRATION.md#timeline)
|
|
232
|
-
- [Breaking Changes](MIGRATION.md#breaking-changes)
|
|
233
|
-
- [Rollback Plan](MIGRATION.md#rollback)
|
|
234
|
-
```
|
|
235
|
-
|
|
236
|
-
**Options:**
|
|
237
|
-
- `--depth=2` - Control heading depth
|
|
238
|
-
- `--output=TOC.md` - Write to file
|
|
239
|
-
- `--insert` - Insert into README.md
|
|
240
|
-
|
|
241
|
-
#### 4. `lean-spec validate` - Check Spec Integrity
|
|
242
|
-
|
|
243
|
-
Validate spec structure and cross-references:
|
|
244
|
-
|
|
245
|
-
```bash
|
|
246
|
-
$ lean-spec validate specs/20251101/009-sub-spec-files
|
|
247
|
-
|
|
248
|
-
✓ README.md exists and has valid frontmatter
|
|
249
|
-
✓ All sub-documents linked from README.md
|
|
250
|
-
✗ Broken link in TESTING.md: [See API](API.md#nonexistent)
|
|
251
|
-
✗ Orphaned file: DEPRECATED.md (not linked from any document)
|
|
252
|
-
⚠ Large asset: assets/video.mp4 (250 MB)
|
|
253
|
-
|
|
254
|
-
2 errors, 1 warning
|
|
255
|
-
```
|
|
256
|
-
|
|
257
|
-
**Checks:**
|
|
258
|
-
- README.md exists with valid frontmatter
|
|
259
|
-
- All sub-documents are referenced from README.md or other docs
|
|
260
|
-
- No broken internal links
|
|
261
|
-
- No orphaned files
|
|
262
|
-
- Asset size warnings (>10 MB)
|
|
263
|
-
- Naming convention compliance
|
|
264
|
-
|
|
265
|
-
**Options:**
|
|
266
|
-
- `--fix` - Auto-fix issues (add links, remove orphans)
|
|
267
|
-
- `--strict` - Fail on warnings
|
|
268
|
-
- `--check-external` - Validate external links too
|
|
269
|
-
|
|
270
|
-
#### 5. `lean-spec merge` - Combine Multi-Doc Spec
|
|
271
|
-
|
|
272
|
-
Merge all documents into single file for sharing:
|
|
273
|
-
|
|
274
|
-
```bash
|
|
275
|
-
$ lean-spec merge specs/20251101/009-sub-spec-files
|
|
276
|
-
|
|
277
|
-
📦 Merging 009-sub-spec-files...
|
|
278
|
-
|
|
279
|
-
✓ README.md
|
|
280
|
-
✓ TESTING.md
|
|
281
|
-
✓ API.md
|
|
282
|
-
✓ MIGRATION.md
|
|
283
|
-
|
|
284
|
-
Created: specs/20251101/009-sub-spec-files-MERGED.md (8.5 KB)
|
|
285
|
-
```
|
|
286
|
-
|
|
287
|
-
Output structure:
|
|
288
|
-
```markdown
|
|
289
|
-
# 009-sub-spec-files (Merged)
|
|
290
|
-
|
|
291
|
-
> Merged from multiple documents on 2025-11-01
|
|
292
|
-
|
|
293
|
-
## Table of Contents
|
|
294
|
-
...
|
|
295
|
-
|
|
296
|
-
## Main Spec
|
|
297
|
-
[Content from README.md]
|
|
298
|
-
|
|
299
|
-
## Testing
|
|
300
|
-
[Content from TESTING.md]
|
|
301
|
-
|
|
302
|
-
## API
|
|
303
|
-
[Content from API.md]
|
|
304
|
-
|
|
305
|
-
## Migration
|
|
306
|
-
[Content from MIGRATION.md]
|
|
307
|
-
```
|
|
308
|
-
|
|
309
|
-
**Options:**
|
|
310
|
-
- `--output=file.md` - Custom output path
|
|
311
|
-
- `--include-assets` - Embed images as base64
|
|
312
|
-
- `--pdf` - Generate PDF (requires pandoc)
|
|
313
|
-
- `--exclude=DEPRECATED.md` - Skip specific files
|
|
314
|
-
|
|
315
|
-
### Template System Integration
|
|
316
|
-
|
|
317
|
-
Extend template system to support multi-file specs:
|
|
318
|
-
|
|
319
|
-
**New Template Structure:**
|
|
320
|
-
```
|
|
321
|
-
templates/api-spec/
|
|
322
|
-
├── config.json
|
|
323
|
-
├── README.md
|
|
324
|
-
├── spec-template.md # Main README.md template
|
|
325
|
-
├── API.md # API endpoints template
|
|
326
|
-
├── SCHEMAS.md # Data schemas template
|
|
327
|
-
├── EXAMPLES.md # Examples template
|
|
328
|
-
└── files/
|
|
329
|
-
└── AGENTS.md
|
|
330
|
-
```
|
|
331
|
-
|
|
332
|
-
**config.json Enhancement:**
|
|
333
|
-
```json
|
|
334
|
-
{
|
|
335
|
-
"name": "api-spec",
|
|
336
|
-
"description": "API specification with detailed endpoints",
|
|
337
|
-
"subFiles": [
|
|
338
|
-
{
|
|
339
|
-
"name": "API.md",
|
|
340
|
-
"description": "API endpoints and specifications",
|
|
341
|
-
"required": false
|
|
342
|
-
},
|
|
343
|
-
{
|
|
344
|
-
"name": "SCHEMAS.md",
|
|
345
|
-
"description": "Data models and validation",
|
|
346
|
-
"required": false
|
|
347
|
-
},
|
|
348
|
-
{
|
|
349
|
-
"name": "EXAMPLES.md",
|
|
350
|
-
"description": "Request/response examples",
|
|
351
|
-
"required": true
|
|
352
|
-
}
|
|
353
|
-
]
|
|
354
|
-
}
|
|
355
|
-
```
|
|
356
|
-
|
|
357
|
-
### Integration with Existing Commands
|
|
358
|
-
|
|
359
|
-
**Search Enhancement:**
|
|
360
|
-
```bash
|
|
361
|
-
# Search across all spec documents
|
|
362
|
-
lean-spec search "authentication" --all-docs
|
|
363
|
-
|
|
364
|
-
# Search only in specific sub-document type
|
|
365
|
-
lean-spec search "test" --in=TESTING.md
|
|
366
|
-
```
|
|
367
|
-
|
|
368
|
-
**Stats Enhancement:**
|
|
369
|
-
```bash
|
|
370
|
-
$ lean-spec stats --verbose
|
|
371
|
-
|
|
372
|
-
📊 Spec Statistics
|
|
373
|
-
|
|
374
|
-
Specs: 48 total
|
|
375
|
-
Documents: 132 total (2.75 docs/spec avg)
|
|
376
|
-
README.md: 48
|
|
377
|
-
TESTING.md: 23
|
|
378
|
-
API.md: 15
|
|
379
|
-
MIGRATION.md: 12
|
|
380
|
-
Other: 34
|
|
381
|
-
```
|
|
382
|
-
|
|
383
|
-
### Spec Loader Changes
|
|
384
|
-
|
|
385
|
-
Update `spec-loader.ts` to support sub-files:
|
|
386
|
-
|
|
387
|
-
```typescript
|
|
388
|
-
export interface SpecInfo {
|
|
389
|
-
path: string;
|
|
390
|
-
fullPath: string;
|
|
391
|
-
filePath: string; // Main README.md
|
|
392
|
-
name: string;
|
|
393
|
-
date: string;
|
|
394
|
-
frontmatter: SpecFrontmatter;
|
|
395
|
-
content?: string;
|
|
396
|
-
subFiles?: SubFileInfo[]; // New field
|
|
397
|
-
}
|
|
398
|
-
|
|
399
|
-
export interface SubFileInfo {
|
|
400
|
-
name: string; // e.g., "TESTING.md"
|
|
401
|
-
path: string; // Absolute path
|
|
402
|
-
size: number; // File size in bytes
|
|
403
|
-
type: 'document' | 'asset'; // Type classification
|
|
404
|
-
content?: string; // Optional content
|
|
405
|
-
}
|
|
406
|
-
|
|
407
|
-
// New function to load sub-files
|
|
408
|
-
export async function loadSubFiles(
|
|
409
|
-
specDir: string,
|
|
410
|
-
options: { includeContent?: boolean } = {}
|
|
411
|
-
): Promise<SubFileInfo[]> {
|
|
412
|
-
// Read all files in spec directory
|
|
413
|
-
// Classify as document (.md) or asset (other)
|
|
414
|
-
// Exclude README.md (main file)
|
|
415
|
-
// Load content if requested
|
|
416
|
-
}
|
|
417
|
-
|
|
418
|
-
// Enhanced loadAllSpecs with sub-files
|
|
419
|
-
export async function loadAllSpecs(options: {
|
|
420
|
-
includeArchived?: boolean;
|
|
421
|
-
includeContent?: boolean;
|
|
422
|
-
includeSubFiles?: boolean; // New option
|
|
423
|
-
filter?: SpecFilterOptions;
|
|
424
|
-
}): Promise<SpecInfo[]> {
|
|
425
|
-
// ... existing logic
|
|
426
|
-
|
|
427
|
-
if (options.includeSubFiles) {
|
|
428
|
-
specInfo.subFiles = await loadSubFiles(specDir, {
|
|
429
|
-
includeContent: options.includeContent
|
|
430
|
-
});
|
|
431
|
-
}
|
|
432
|
-
}
|
|
433
|
-
```
|
|
434
|
-
|
|
435
|
-
## Use Cases
|
|
436
|
-
|
|
437
|
-
### Use Case 1: API Specification
|
|
438
|
-
|
|
439
|
-
**Scenario**: Team is designing a new REST API with 20+ endpoints.
|
|
440
|
-
|
|
441
|
-
**Structure**:
|
|
442
|
-
```
|
|
443
|
-
specs/20251101/010-user-api-v2/
|
|
444
|
-
├── README.md # Overview, design decisions, goals
|
|
445
|
-
├── ENDPOINTS.md # Detailed endpoint specifications
|
|
446
|
-
├── SCHEMAS.md # Request/response schemas
|
|
447
|
-
├── AUTHENTICATION.md # Auth strategy and flows
|
|
448
|
-
├── EXAMPLES.md # Example requests/responses
|
|
449
|
-
├── MIGRATION.md # Migration from v1
|
|
450
|
-
└── assets/
|
|
451
|
-
└── api-flow.svg # API flow diagram
|
|
452
|
-
```
|
|
453
|
-
|
|
454
|
-
**Workflow**:
|
|
455
|
-
```bash
|
|
456
|
-
# Create from template
|
|
457
|
-
lean-spec create user-api-v2 --template=api-spec
|
|
458
|
-
|
|
459
|
-
# Work on different aspects
|
|
460
|
-
code specs/.../README.md # High-level design
|
|
461
|
-
code specs/.../ENDPOINTS.md # Endpoint details
|
|
462
|
-
code specs/.../AUTHENTICATION.md # Auth design
|
|
463
|
-
|
|
464
|
-
# Validate structure
|
|
465
|
-
lean-spec validate specs/.../user-api-v2
|
|
466
|
-
|
|
467
|
-
# Generate unified TOC
|
|
468
|
-
lean-spec toc specs/.../user-api-v2 --insert
|
|
469
|
-
|
|
470
|
-
# Share with stakeholders
|
|
471
|
-
lean-spec merge specs/.../user-api-v2 --pdf
|
|
472
|
-
```
|
|
473
|
-
|
|
474
|
-
### Use Case 2: Complex Feature with Testing
|
|
475
|
-
|
|
476
|
-
**Scenario**: Building a payment system with extensive testing requirements.
|
|
477
|
-
|
|
478
|
-
**Structure**:
|
|
479
|
-
```
|
|
480
|
-
specs/20251101/011-payment-processing/
|
|
481
|
-
├── README.md # Feature overview and goals
|
|
482
|
-
├── ARCHITECTURE.md # System design
|
|
483
|
-
├── TESTING.md # Test strategy
|
|
484
|
-
├── TEST_RESULTS.md # Test execution results
|
|
485
|
-
├── SECURITY.md # Security considerations
|
|
486
|
-
├── ROLLOUT.md # Phased rollout plan
|
|
487
|
-
└── assets/
|
|
488
|
-
├── flow-diagram.png
|
|
489
|
-
└── test-coverage.png
|
|
490
|
-
```
|
|
491
|
-
|
|
492
|
-
### Use Case 3: Research Spike
|
|
493
|
-
|
|
494
|
-
**Scenario**: Evaluating multiple approaches for caching strategy.
|
|
495
|
-
|
|
496
|
-
**Structure**:
|
|
497
|
-
```
|
|
498
|
-
specs/20251101/012-caching-strategy/
|
|
499
|
-
├── README.md # Research goals and summary
|
|
500
|
-
├── REDIS.md # Redis approach analysis
|
|
501
|
-
├── MEMCACHED.md # Memcached approach analysis
|
|
502
|
-
├── IN_MEMORY.md # In-memory approach analysis
|
|
503
|
-
├── COMPARISON.md # Side-by-side comparison
|
|
504
|
-
├── RECOMMENDATION.md # Final recommendation
|
|
505
|
-
└── assets/
|
|
506
|
-
├── redis-perf.png
|
|
507
|
-
└── memcached-perf.png
|
|
508
|
-
```
|
|
509
|
-
|
|
510
|
-
**Workflow**:
|
|
511
|
-
```bash
|
|
512
|
-
# Create research spec
|
|
513
|
-
lean-spec create caching-strategy
|
|
514
|
-
|
|
515
|
-
# Add sub-documents as you research
|
|
516
|
-
lean-spec add specs/.../caching-strategy/REDIS.md
|
|
517
|
-
lean-spec add specs/.../caching-strategy/MEMCACHED.md
|
|
518
|
-
|
|
519
|
-
# Generate comparison TOC
|
|
520
|
-
lean-spec toc specs/.../caching-strategy
|
|
521
|
-
|
|
522
|
-
# Validate completeness
|
|
523
|
-
lean-spec validate specs/.../caching-strategy
|
|
524
|
-
```
|
|
525
|
-
|
|
526
|
-
## Implementation Plan
|
|
527
|
-
|
|
528
|
-
### Phase 1: Core Support (v1.0)
|
|
529
|
-
- [ ] Update `SpecInfo` type to include `subFiles`
|
|
530
|
-
- [ ] Implement `loadSubFiles()` function
|
|
531
|
-
- [ ] Add `--include-sub-files` option to `lean-spec list`
|
|
532
|
-
- [ ] Add `lean-spec files <spec>` command
|
|
533
|
-
- [ ] Update templates to support sub-file definitions
|
|
534
|
-
- [ ] Document naming conventions
|
|
535
|
-
|
|
536
|
-
### Phase 2: Creation & Management (v1.1)
|
|
537
|
-
- [ ] Enhance `lean-spec create` with `--files` option
|
|
538
|
-
- [ ] Add `lean-spec add <spec>/<file>` command
|
|
539
|
-
- [ ] Create sub-file templates for common types
|
|
540
|
-
- [ ] Add API spec template with sub-files
|
|
541
|
-
- [ ] Update documentation
|
|
542
|
-
|
|
543
|
-
### Phase 3: Validation & Tools (v1.2)
|
|
544
|
-
- [ ] Implement `lean-spec validate` command
|
|
545
|
-
- [ ] Add link checker for cross-references
|
|
546
|
-
- [ ] Add orphan file detection
|
|
547
|
-
- [ ] Implement `lean-spec toc` command
|
|
548
|
-
- [ ] Add TOC auto-insertion
|
|
549
|
-
|
|
550
|
-
### Phase 4: Advanced Features (v2.0)
|
|
551
|
-
- [ ] Implement `lean-spec merge` command
|
|
552
|
-
- [ ] Add PDF export support (via pandoc)
|
|
553
|
-
- [ ] Enhance search to include all sub-documents
|
|
554
|
-
- [ ] Add stats for sub-file distribution
|
|
555
|
-
- [ ] Implement asset optimization warnings
|
|
556
|
-
|
|
557
|
-
## Testing
|
|
558
|
-
|
|
559
|
-
### Unit Tests
|
|
560
|
-
- [ ] `loadSubFiles()` returns all markdown files except README.md
|
|
561
|
-
- [ ] `loadSubFiles()` classifies files correctly (docs vs assets)
|
|
562
|
-
- [ ] `loadSubFiles()` includes content when requested
|
|
563
|
-
- [ ] Sub-file loading works with archived specs
|
|
564
|
-
- [ ] Empty spec directory returns empty sub-files array
|
|
565
|
-
|
|
566
|
-
### Integration Tests
|
|
567
|
-
- [ ] `lean-spec files` lists all sub-documents correctly
|
|
568
|
-
- [ ] `lean-spec files --type=docs` filters to markdown only
|
|
569
|
-
- [ ] `lean-spec files --tree` shows proper hierarchy
|
|
570
|
-
- [ ] `lean-spec create --files=X,Y` creates all files
|
|
571
|
-
- [ ] `lean-spec add` creates properly templated file
|
|
572
|
-
- [ ] `lean-spec validate` detects broken links
|
|
573
|
-
- [ ] `lean-spec validate` detects orphaned files
|
|
574
|
-
- [ ] `lean-spec toc` generates correct TOC
|
|
575
|
-
- [ ] `lean-spec toc --insert` updates README.md correctly
|
|
576
|
-
- [ ] `lean-spec merge` combines all documents
|
|
577
|
-
- [ ] `lean-spec search --all-docs` searches sub-files
|
|
578
|
-
- [ ] Templates with sub-files create all documents
|
|
579
|
-
|
|
580
|
-
### Edge Cases
|
|
581
|
-
- [ ] Spec with only README.md (no sub-files)
|
|
582
|
-
- [ ] Spec with 50+ sub-files (performance)
|
|
583
|
-
- [ ] Sub-file with circular references
|
|
584
|
-
- [ ] Non-markdown files in spec directory
|
|
585
|
-
- [ ] README.md not explicitly excluded from sub-files
|
|
586
|
-
- [ ] Symlinks in spec directory
|
|
587
|
-
- [ ] Sub-directories within spec folder
|
|
588
|
-
|
|
589
|
-
## Non-Goals
|
|
590
|
-
|
|
591
|
-
- **Not building a wiki**: This is for spec organization, not general documentation
|
|
592
|
-
- **Not version control**: Git already handles versioning of all files
|
|
593
|
-
- **Not a CMS**: No database, no complex content management
|
|
594
|
-
- **Not automatic splitting**: No AI-powered document splitting (user decides structure)
|
|
595
|
-
- **Not enforcing structure**: Sub-files remain optional, use when needed
|
|
596
|
-
|
|
597
|
-
## Design Decisions
|
|
598
|
-
|
|
599
|
-
### Why Keep README.md as Entry Point?
|
|
600
|
-
|
|
601
|
-
**Decision**: Always require README.md with frontmatter.
|
|
602
|
-
|
|
603
|
-
**Rationale**:
|
|
604
|
-
- Backwards compatibility with existing specs
|
|
605
|
-
- Clear entry point for tools and humans
|
|
606
|
-
- Single source of truth for metadata
|
|
607
|
-
- Familiar convention (GitHub, GitLab, etc.)
|
|
608
|
-
- Frontmatter only in one place (avoid sync issues)
|
|
609
|
-
|
|
610
|
-
### Why Naming Conventions?
|
|
611
|
-
|
|
612
|
-
**Decision**: Recommend standard names (TESTING.md, API.md) but don't enforce.
|
|
613
|
-
|
|
614
|
-
**Rationale**:
|
|
615
|
-
- Discoverability: predictable names help navigation
|
|
616
|
-
- Tooling: standard names enable smart defaults
|
|
617
|
-
- Convention over configuration: reduce decision fatigue
|
|
618
|
-
- Flexibility: not enforced, just recommended
|
|
619
|
-
|
|
620
|
-
**Alternative Considered**: Free-form naming (rejected - too chaotic)
|
|
621
|
-
|
|
622
|
-
### Why Not Nested Directories?
|
|
623
|
-
|
|
624
|
-
**Decision**: Keep all documents at spec root level (flat structure).
|
|
625
|
-
|
|
626
|
-
**Rationale**:
|
|
627
|
-
- Simpler to discover and link
|
|
628
|
-
- Avoid over-organization
|
|
629
|
-
- Assets can live in `assets/` subdirectory
|
|
630
|
-
- Nested structure adds complexity without much benefit
|
|
631
|
-
|
|
632
|
-
**Alternative Considered**: Full directory hierarchy (rejected - violates LeanSpec minimalism)
|
|
633
|
-
|
|
634
|
-
### Why Not Automatic TOC in README.md?
|
|
635
|
-
|
|
636
|
-
**Decision**: Make TOC generation opt-in (`lean-spec toc --insert`).
|
|
637
|
-
|
|
638
|
-
**Rationale**:
|
|
639
|
-
- Not all specs need TOC (simple ones don't benefit)
|
|
640
|
-
- Manual control over when/where TOC appears
|
|
641
|
-
- Avoid auto-generated content in version control
|
|
642
|
-
- Keep README.md human-authored by default
|
|
643
|
-
|
|
644
|
-
**Alternative Considered**: Auto-generate TOC on every change (rejected - too automatic)
|
|
645
|
-
|
|
646
|
-
## Migration Path
|
|
647
|
-
|
|
648
|
-
### For Existing Specs
|
|
649
|
-
|
|
650
|
-
Specs with informal sub-files (like `SUMMARY.md`) will continue working. New commands will simply recognize them.
|
|
651
|
-
|
|
652
|
-
**No breaking changes**:
|
|
653
|
-
- Existing specs with only README.md: no change
|
|
654
|
-
- Existing specs with extra files: now discoverable via `lean-spec files`
|
|
655
|
-
- All existing commands continue working
|
|
656
|
-
|
|
657
|
-
**Gradual adoption**:
|
|
658
|
-
1. Start using recommended naming conventions
|
|
659
|
-
2. Add links in README.md to sub-documents
|
|
660
|
-
3. Use `lean-spec validate` to check structure
|
|
661
|
-
4. Use `lean-spec toc` to auto-generate navigation
|
|
662
|
-
|
|
663
|
-
## Documentation Updates
|
|
664
|
-
|
|
665
|
-
- [ ] Update README.md with sub-file examples
|
|
666
|
-
- [ ] Add "Organizing Large Specs" guide
|
|
667
|
-
- [ ] Update AGENTS.md with sub-file discovery guidance
|
|
668
|
-
- [ ] Document naming conventions
|
|
669
|
-
- [ ] Add template documentation for multi-file specs
|
|
670
|
-
- [ ] Create examples in `examples/` directory
|
|
671
|
-
|
|
672
|
-
## Related Specs
|
|
673
|
-
|
|
674
|
-
- `20251101/002-structured-frontmatter` - Frontmatter stays in README.md only
|
|
675
|
-
- `20251101/003-pm-visualization-tools` - Stats could show sub-file distribution
|
|
676
|
-
- `20251031/002-template-system-redesign` - Templates need sub-file support
|
|
677
|
-
|
|
678
|
-
## Questions
|
|
679
|
-
|
|
680
|
-
1. **Should sub-files have their own frontmatter?**
|
|
681
|
-
- No - frontmatter only in README.md (single source of truth)
|
|
682
|
-
- Sub-files can have simple header with link back to main spec
|
|
683
|
-
|
|
684
|
-
2. **How to handle conflicting content between files?**
|
|
685
|
-
- README.md is authoritative for metadata and high-level info
|
|
686
|
-
- Sub-files provide detailed content
|
|
687
|
-
- Use validation to detect inconsistencies
|
|
688
|
-
|
|
689
|
-
3. **Should `lean-spec search` include sub-files by default?**
|
|
690
|
-
- Yes - search all content by default
|
|
691
|
-
- Add `--main-only` flag to search only README.md
|
|
692
|
-
|
|
693
|
-
4. **Size limits for sub-files?**
|
|
694
|
-
- No hard limits
|
|
695
|
-
- Warning for assets >10 MB
|
|
696
|
-
- Recommendation: keep docs <100 KB each
|
|
697
|
-
|
|
698
|
-
5. **Asset management?**
|
|
699
|
-
- Keep in `assets/` subdirectory
|
|
700
|
-
- Reference with relative paths: ``
|
|
701
|
-
- No special handling needed (git handles binary files)
|
|
702
|
-
|
|
703
|
-
## Success Metrics
|
|
704
|
-
|
|
705
|
-
- 20% of new specs use sub-files within 2 months
|
|
706
|
-
- Zero complaints about backward compatibility
|
|
707
|
-
- `lean-spec files` command used regularly (top 5 commands)
|
|
708
|
-
- Templates with sub-files are popular choices
|
|
709
|
-
- Documentation receives positive feedback
|
|
710
|
-
|
|
711
|
-
## Future Considerations
|
|
712
|
-
|
|
713
|
-
- **Interactive TOC builder**: CLI wizard to help organize large specs
|
|
714
|
-
- **Template gallery**: Community-contributed multi-file templates
|
|
715
|
-
- **Link graph visualization**: See connections between documents
|
|
716
|
-
- **Content suggestions**: AI-powered recommendations for splitting large README.md
|
|
717
|
-
- **Export formats**: HTML, PDF, EPUB for sharing outside git
|
|
718
|
-
- **Diff tools**: Compare versions of multi-file specs
|
|
719
|
-
|
|
720
|
-
---
|
|
721
|
-
|
|
722
|
-
**Remember**: Sub-files are for complexity management. Most specs should stay simple with just README.md. Only add structure when you feel the pain.
|