@leanspec/ui 0.2.9-dev.20251205030455 → 0.2.10
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/packages/ui/.next/BUILD_ID +1 -1
- package/.next/standalone/packages/ui/.next/app-path-routes-manifest.json +5 -0
- package/.next/standalone/packages/ui/.next/build-manifest.json +2 -2
- 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 +40 -0
- 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.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 -20
- package/.next/standalone/packages/ui/.next/server/app/_not-found.segments/_full.segment.rsc +18 -20
- package/.next/standalone/packages/ui/.next/server/app/_not-found.segments/_index.segment.rsc +23 -26
- 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.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/dependencies/route.js.nft.json +1 -1
- 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.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/context/route.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/dependencies/route.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/dependencies/route.js.nft.json +1 -1
- 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]/dependency-graph/route/app-paths-manifest.json +3 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/dependency-graph/route/build-manifest.json +11 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/dependency-graph/route/server-reference-manifest.json +4 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/dependency-graph/route.js +8 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/dependency-graph/route.js.map +5 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/dependency-graph/route.js.nft.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/dependency-graph/route_client-reference-manifest.js +2 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/metadata/route/app-paths-manifest.json +3 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/metadata/route/build-manifest.json +11 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/metadata/route/server-reference-manifest.json +4 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/metadata/route.js +8 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/metadata/route.js.map +5 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/metadata/route.js.nft.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/metadata/route_client-reference-manifest.js +2 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/specs/[spec]/route.js +1 -1
- 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 -1
- 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]/tags/route/app-paths-manifest.json +3 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/tags/route/build-manifest.json +11 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/tags/route/server-reference-manifest.json +4 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/tags/route.js +8 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/tags/route.js.map +5 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/tags/route.js.nft.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/tags/route_client-reference-manifest.js +2 -0
- package/.next/standalone/packages/ui/.next/server/app/api/projects/[id]/validate/route.js.nft.json +1 -1
- 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.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]/metadata/route/app-paths-manifest.json +3 -0
- package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/metadata/route/build-manifest.json +11 -0
- package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/metadata/route/server-reference-manifest.json +4 -0
- package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/metadata/route.js +8 -0
- package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/metadata/route.js.map +5 -0
- package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/metadata/route.js.nft.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/api/specs/[id]/metadata/route_client-reference-manifest.js +2 -0
- 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/api/tags/route/app-paths-manifest.json +3 -0
- package/.next/standalone/packages/ui/.next/server/app/api/tags/route/build-manifest.json +11 -0
- package/.next/standalone/packages/ui/.next/server/app/api/tags/route/server-reference-manifest.json +4 -0
- package/.next/standalone/packages/ui/.next/server/app/api/tags/route.js +8 -0
- package/.next/standalone/packages/ui/.next/server/app/api/tags/route.js.map +5 -0
- package/.next/standalone/packages/ui/.next/server/app/api/tags/route.js.nft.json +1 -0
- package/.next/standalone/packages/ui/.next/server/app/api/tags/route_client-reference-manifest.js +2 -0
- package/.next/standalone/packages/ui/.next/server/app/context/page.js +4 -3
- 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.js +4 -3
- package/.next/standalone/packages/ui/.next/server/app/dependencies/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/dependencies/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/page.js +2 -2
- 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.js +2 -2
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/context/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/context/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/dependencies/page.js +2 -2
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/dependencies/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/dependencies/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/page.js +2 -2
- 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.js +2 -2
- 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.js +2 -2
- 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.js +2 -2
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/stats/page.js.nft.json +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/[projectId]/stats/page_client-reference-manifest.js +1 -1
- package/.next/standalone/packages/ui/.next/server/app/projects/page.js +2 -2
- 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 -25
- package/.next/standalone/packages/ui/.next/server/app/projects.segments/_full.segment.rsc +24 -25
- package/.next/standalone/packages/ui/.next/server/app/projects.segments/_index.segment.rsc +20 -24
- 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.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.js +4 -3
- 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.js +4 -3
- 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 +5 -0
- package/.next/standalone/packages/ui/.next/server/chunks/284a8_app_api_projects_[id]_specs_[spec]_dependency-graph_route_actions_f18476ed.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/730ea_ui__next-internal_server_app_api_projects_[id]_tags_route_actions_40899744.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/730ea_ui__next-internal_server_app_api_specs_[id]_metadata_route_actions_139bb09f.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__0afcada7._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__0e63a440._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__0ec6f9b0._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__0edb782a._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__0fbfea15._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__1706515f._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__1f037512._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__38780e00._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__3a535244._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__41f43652._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__5081ac6f._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__526764b2._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__548e27d4._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__71d98924._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__74af400b._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__8075fe29._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__9ce722b4._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__9cf3bf21._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__a2d7cbed._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__b1ad8b69._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__c7a4906b._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__de15d2aa._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__e16f7651._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__e2fcb5c6._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__e8d9903e._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__f6936b89._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/f825c_server_app_api_projects_[id]_specs_[spec]_metadata_route_actions_35af9a8c.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/packages_ui__next-internal_server_app_api_tags_route_actions_64625b2c.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__01bfc8ff._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/{[root-of-the-server]__13f96ef4._.js → [root-of-the-server]__174e1ca1._.js} +2 -2
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/{[root-of-the-server]__38c56adc._.js → [root-of-the-server]__2d9202e8._.js} +2 -2
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__338c65fe._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__366688dd._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__44b603f9._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__4ec37765._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__69a0d63a._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__7f55abaa._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__c158c9a9._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__c7735439._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__e2c760eb._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/{[root-of-the-server]__84124d4b._.js → [root-of-the-server]__ead1539c._.js} +2 -2
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__ec5b96a5._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_000dd317._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/{_adb9d7cb._.js → _22274047._.js} +2 -2
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_59616aa6._.js +3 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_5e1484f9._.js +7 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_8ab6f9ca._.js +1 -1
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_be836d6a._.js +5 -0
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_ec637d7c._.js +1 -1
- 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 +1 -1
- 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/0c7bbb59865774a1.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/0fe978002ba489fb.js +3 -0
- package/.next/standalone/packages/ui/.next/static/chunks/1169d4ac8f9df687.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/241b6b1c83610ebf.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/39931c5cecf4c4b7.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/6d7922838a3513a4.js +1 -0
- package/.next/{static/chunks/7a00633903e066b4.js → standalone/packages/ui/.next/static/chunks/781328ee279ffc41.js} +1 -1
- package/.next/standalone/packages/ui/.next/static/chunks/937cb3894a606899.js +5 -0
- package/.next/standalone/packages/ui/.next/static/chunks/9cf644b700f37825.css +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/bc0f8f7f8dc0a352.js +1 -0
- package/.next/standalone/packages/ui/.next/static/chunks/dbce73f7087f2470.js +10 -0
- package/.next/standalone/packages/ui/.next/static/chunks/f0a083ac29b4b6c2.js +1 -0
- package/.next/standalone/packages/ui/dist/BUILD_ID +1 -0
- package/.next/standalone/packages/ui/dist/public/f864aa7e7061c0600e35cf3d879b27cf.txt +1 -0
- package/.next/standalone/packages/ui/dist/public/favicon.ico +0 -0
- package/.next/standalone/packages/ui/dist/public/file.svg +1 -0
- package/.next/standalone/packages/ui/dist/public/github-mark-white.svg +1 -0
- package/.next/standalone/packages/ui/dist/public/github-mark.svg +1 -0
- package/.next/standalone/packages/ui/dist/public/globe.svg +1 -0
- package/.next/standalone/packages/ui/dist/public/icon.svg +7 -0
- package/.next/standalone/packages/ui/dist/public/logo-dark-bg.svg +17 -0
- package/.next/standalone/packages/ui/dist/public/logo-with-bg.svg +17 -0
- package/.next/standalone/packages/ui/dist/public/logo.svg +17 -0
- package/.next/standalone/packages/ui/dist/public/next.svg +1 -0
- package/.next/standalone/packages/ui/dist/public/vercel.svg +1 -0
- package/.next/standalone/packages/ui/dist/public/window.svg +1 -0
- package/.next/standalone/packages/ui/dist/standalone/packages/web/README.md +196 -0
- package/.next/standalone/packages/ui/dist/standalone/packages/web/package.json +75 -0
- package/.next/standalone/packages/ui/dist/standalone/packages/web/server.js +44 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/014-complete-custom-frontmatter/README.md +175 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/016-github-action/README.md +317 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/017-vscode-extension/README.md +261 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/CLI-DESIGN.md +380 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/CONFIGURATION-EXAMPLES.md +230 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/CONFIGURATION.md +285 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/IMPLEMENTATION.md +358 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/README.md +303 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/TESTING.md +368 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/018-spec-validation/VALIDATION-RULES.md +327 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/024-pattern-aware-list-grouping/README.md +117 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/025-template-config-updates/README.md +73 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/026-init-pattern-selection/README.md +109 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/034-copilot-slash-commands/README.md +107 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/035-live-specs-showcase/ARCHITECTURE.md +244 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/035-live-specs-showcase/IMPLEMENTATION.md +429 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/035-live-specs-showcase/README.md +302 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/036-pm-integrations/README.md +158 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DEMO-AI-ASSISTED.md +359 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DEMO-FULL-LIFECYCLE.md +86 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DEMO-REAL-FEATURE.md +437 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DEMO-SCRIPT.md +365 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DOGFOODING-FINAL.md +203 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DOGFOODING-SESSION-2025-11-06.md +174 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/DOGFOODING-SUMMARY.md +156 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/IMPLEMENTATION.md +183 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/MARKETING.md +229 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/NEXT-STEPS-DEMO.md +243 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/README.md +217 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/SESSION-2025-11-06.md +166 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/043-official-launch-02/TESTING.md +126 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/045-unified-dashboard/ACTUAL-IMPLEMENTATION.md +108 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/045-unified-dashboard/DESIGN.md +382 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/045-unified-dashboard/IMPLEMENTATION.md +144 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/045-unified-dashboard/RATIONALE.md +146 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/045-unified-dashboard/README.md +208 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/045-unified-dashboard/TESTING.md +182 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/047-git-backfill-timestamps/README.md +314 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/048-spec-complexity-analysis/FINDINGS.md +113 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/048-spec-complexity-analysis/GUIDELINES.md +237 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/048-spec-complexity-analysis/README.md +149 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/049-leanspec-first-principles/ANALYSIS-COMPARISONS.md +175 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/049-leanspec-first-principles/ANALYSIS-CONSTRAINTS.md +254 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/049-leanspec-first-principles/FIRST-PRINCIPLES.md +376 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/049-leanspec-first-principles/OPERATIONALIZATION-ROADMAP.md +240 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/049-leanspec-first-principles/OPERATIONALIZATION-TOOLS.md +175 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/049-leanspec-first-principles/README.md +374 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/051-docs-system-prompt-principles/README.md +339 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/052-branding-assets/README.md +128 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/053-spec-assets-philosophy/README.md +97 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/054-validate-output-lint-style/DESIGN-DECISIONS.md +93 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/054-validate-output-lint-style/OUTPUT-FORMAT-SPEC.md +146 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/054-validate-output-lint-style/README.md +175 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/ANALYSIS-PART1.md +397 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/ANALYSIS-PART2.md +342 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/ANALYSIS.md +44 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/CHANGES.md +150 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/CONCERNS-ANALYSIS.md +351 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/DOCS-ALIGNMENT-ANALYSIS.md +238 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/README.md +280 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/REDESIGN-DRAFT.md +372 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/055-readme-redesign-ai-first/REDESIGN-REFINED.md +466 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/056-docs-site-accuracy-audit/AUDIT-RESULTS.md +178 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/056-docs-site-accuracy-audit/README.md +174 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/057-docs-validation-comprehensive/README.md +295 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/057-docs-validation-comprehensive/VALIDATION-RESULTS.md +487 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/058-docs-overview-polish/ANALYSIS.md +241 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/058-docs-overview-polish/DESIGN.md +279 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/058-docs-overview-polish/IMPLEMENTATION.md +642 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/058-docs-overview-polish/NOTES.md +125 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/058-docs-overview-polish/README.md +286 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/059-programmatic-spec-management/ARCHITECTURE.md +392 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/059-programmatic-spec-management/COMMANDS.md +1002 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/059-programmatic-spec-management/CONTEXT-ENGINEERING.md +411 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/059-programmatic-spec-management/IMPLEMENTATION.md +812 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/059-programmatic-spec-management/README.md +504 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/059-programmatic-spec-management/TESTING.md +724 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/060-core-concepts-coherence/README.md +125 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/061-ai-assisted-spec-writing/README.md +299 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/062-docs-info-architecture-v2/IMPLEMENTATION-PLAN.md +174 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/062-docs-info-architecture-v2/PAGE-SPECIFICATIONS.md +265 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/062-docs-info-architecture-v2/PROBLEM-ANALYSIS.md +36 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/062-docs-info-architecture-v2/README.md +243 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/062-docs-info-architecture-v2/SOLUTION-DESIGN.md +82 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/063-migration-from-existing-tools/DESIGN.md +338 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/063-migration-from-existing-tools/EXAMPLES.md +354 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/063-migration-from-existing-tools/IMPLEMENTATION.md +189 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/063-migration-from-existing-tools/README.md +119 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/064-docs-site-zh-translation/README.md +170 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/065-v03-planning/README.md +158 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/066-context-economy-thresholds-refinement/README.md +842 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/067-monorepo-core-extraction/README.md +358 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/068-live-specs-ux-enhancements/DESIGN.md +444 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/068-live-specs-ux-enhancements/README.md +357 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/069-token-counting-utils/README.md +551 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/070-mcp-token-counting-tool/README.md +372 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/071-simplified-token-validation/README.md +489 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/072-ai-agent-first-use-workflow/README.md +285 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/073-template-engine-agents-md/README.md +323 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/074-content-at-creation/README.md +136 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/075-intelligent-search-engine/README.md +399 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/076-programmatic-spec-relationships/README.md +301 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/077-archiving-strategy/README.md +235 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/078-sub-spec-template-system/README.md +303 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/079-cli-alphabetical-organization/README.md +196 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/080-mcp-server-modular-architecture/README.md +388 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/081-web-app-ux-redesign/README.md +824 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/082-web-realtime-sync-architecture/DATABASE.md +111 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/082-web-realtime-sync-architecture/DEPLOYMENT.md +69 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/082-web-realtime-sync-architecture/FILESYSTEM.md +77 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/082-web-realtime-sync-architecture/IMPLEMENTATION.md +184 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/082-web-realtime-sync-architecture/README.md +496 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/083-web-navigation-performance/README.md +490 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/084-sub-spec-visibility-in-tools/README.md +389 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/085-cli-relationship-commands/README.md +920 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/086-template-component-deduplication/README.md +146 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/087-cli-ui-command/README.md +607 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/088-core-concepts-terminology-only/README.md +104 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/089-sdd-practical-tutorials/README.md +124 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/090-leanspec-sdd-case-studies/README.md +129 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/091-chinese-localization-strategy/README.md +244 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/092-docs-site-submodule-migration/README.md +148 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/093-spec-detail-ui-improvements/README.md +54 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/001-typescript-cli-migration/README.md +37 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/002-template-system-redesign/README.md +60 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/003-init-system-redesign/README.md +113 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/004-existing-project-integration/README.md +69 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/004-existing-project-integration/SUMMARY.md +112 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/005-structured-frontmatter/README.md +229 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/006-pm-visualization-tools/README.md +406 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/007-system-prompt-updates/README.md +168 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/008-commander-migration/README.md +174 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/009-cli-ux-enhancement/README.md +212 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/010-commands-refactor/README.md +249 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/011-test-results/README.md +60 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/011-test-results/TEST_SUMMARY.md +139 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/012-sub-spec-files/README.md +722 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/013-custom-spec-templates/README.md +413 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/015-npm-publishing/README.md +255 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/019-readme-improvement/README.md +252 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/020-documentation-website/README.md +253 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/021-docusaurus-vercel-migration/README.md +612 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/022-flexible-folder-structure/README.md +794 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/023-folder-structure-improvements/DESIGN.md +834 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/023-folder-structure-improvements/README.md +255 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/027-cli-ui-ux-optimization/README.md +454 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/028-cli-ui-modernization/README.md +172 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/029-visualization-improvements/IMPLEMENTATION.md +152 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/029-visualization-improvements/README.md +95 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/030-created-date-format-bug/README.md +87 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/031-gantt-ux-improvements/README.md +230 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/032-console-log-chalk-security/README.md +89 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/033-mcp-server/README.md +89 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/037-docs-overhaul/README.md +166 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/038-flat-structure-migration/README.md +276 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/038-mcp-frontmatter-bug-fix/README.md +122 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/039-simplify-viewer-commands/README.md +198 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/039-template-variable-sync/README.md +192 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/040-spec-viewer-commands/README.md +171 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/042-mcp-error-handling/README.md +200 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/044-spec-relationships-clarity/README.md +317 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/046-stats-dashboard-refactor/DESIGN.md +276 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/046-stats-dashboard-refactor/IMPLEMENTATION.md +241 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/046-stats-dashboard-refactor/README.md +139 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/046-stats-dashboard-refactor/TESTING.md +328 -0
- package/.next/standalone/packages/ui/dist/standalone/specs/archived/050-tool-redesign-first-principles/README.md +400 -0
- package/.next/standalone/packages/ui/dist/static/chunks/0c19c69aa7625475.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/116800b03245a1e5.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/15843a3d7584e314.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/19e80edf527aef5c.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/465954d5af3284a9.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/5abeeb89f1412a80.js +3 -0
- package/.next/standalone/packages/ui/dist/static/chunks/5c2072ad938de8ed.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/6a05a93ec8fa7b83.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/778e42188e450b39.css +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/a02c1f50ff00204f.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/a45464b9776dd88e.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/a6dad97d9634a72d.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/b0ea0ac61604f843.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/c06e85b449720194.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/c557ac675be79771.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/cad005a57ffbb2d3.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/cdf6fe33bc65efbc.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/d12ed5dbe44caed7.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/d1ebe5c1a344f4ca.js +5 -0
- package/.next/standalone/packages/ui/dist/static/chunks/d42cf1682bc46652.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/dde5d8bddd7fbfcf.js +1 -0
- package/.next/standalone/packages/ui/dist/static/chunks/ebd89051637b9a47.js +4 -0
- package/.next/standalone/packages/ui/dist/static/chunks/ec82875d18b29f47.js +2 -0
- package/.next/standalone/packages/ui/dist/static/chunks/f0b701df9769bcc5.js +19 -0
- package/.next/standalone/packages/ui/dist/static/chunks/turbopack-1c09a99f4c9e28d3.js +3 -0
- package/.next/standalone/packages/ui/package.json +1 -1
- package/.next/standalone/packages/ui/server.js +1 -1
- package/.next/standalone/packages/ui/src/app/api/dependencies/route.ts +4 -67
- package/.next/standalone/packages/ui/src/app/api/projects/[id]/dependencies/route.ts +3 -52
- package/.next/standalone/packages/ui/src/app/api/projects/[id]/specs/[spec]/dependency-graph/route.ts +129 -0
- package/.next/standalone/packages/ui/src/app/api/projects/[id]/specs/[spec]/metadata/route.ts +170 -0
- package/.next/standalone/packages/ui/src/app/api/projects/[id]/specs/[spec]/status/route.ts +9 -2
- package/.next/standalone/packages/ui/src/app/api/projects/[id]/tags/route.ts +25 -0
- package/.next/standalone/packages/ui/src/app/api/specs/[id]/metadata/route.ts +184 -0
- package/.next/standalone/packages/ui/src/app/api/tags/route.ts +16 -0
- package/.next/standalone/packages/ui/src/app/context/page.tsx +22 -0
- package/.next/standalone/packages/ui/src/app/dashboard-client.tsx +14 -4
- package/.next/standalone/packages/ui/src/app/dependencies/dependencies-client.tsx +2 -2
- package/.next/standalone/packages/ui/src/app/dependencies/page.tsx +25 -13
- package/.next/standalone/packages/ui/src/app/projects/[projectId]/dependencies/page.tsx +1 -14
- package/.next/standalone/packages/ui/src/app/projects/page.tsx +234 -113
- package/.next/standalone/packages/ui/src/app/specs/[id]/page.tsx +24 -1
- package/.next/standalone/packages/ui/src/app/specs/page.tsx +22 -0
- package/.next/standalone/packages/ui/src/app/specs/specs-client.tsx +1 -1
- package/.next/standalone/packages/ui/src/app/stats/page.tsx +22 -0
- package/.next/standalone/packages/ui/src/components/editable-spec-metadata.tsx +152 -0
- package/.next/standalone/packages/ui/src/components/main-sidebar.tsx +6 -0
- package/.next/standalone/packages/ui/src/components/priority-editor.tsx +153 -0
- package/.next/standalone/packages/ui/src/components/project-switcher.tsx +53 -8
- package/.next/standalone/packages/ui/src/components/spec-detail-client.tsx +23 -20
- package/.next/standalone/packages/ui/src/components/status-editor.tsx +153 -0
- package/.next/standalone/packages/ui/src/components/tags-editor.tsx +238 -0
- package/.next/standalone/packages/ui/src/components/ui/command.tsx +1 -1
- package/.next/standalone/packages/ui/src/lib/db/service-queries.ts +151 -15
- package/.next/standalone/packages/ui/src/lib/projects/registry.ts +1 -1
- package/.next/standalone/packages/ui/src/lib/specs/sources/multi-project-source.ts +21 -5
- package/.next/standalone/packages/ui/tsconfig.tsbuildinfo +1 -1
- package/.next/static/chunks/0c7bbb59865774a1.js +1 -0
- package/.next/static/chunks/0fe978002ba489fb.js +3 -0
- package/.next/static/chunks/1169d4ac8f9df687.js +1 -0
- package/.next/static/chunks/241b6b1c83610ebf.js +1 -0
- package/.next/static/chunks/39931c5cecf4c4b7.js +1 -0
- package/.next/static/chunks/6d7922838a3513a4.js +1 -0
- package/.next/{standalone/packages/ui/.next/static/chunks/7a00633903e066b4.js → static/chunks/781328ee279ffc41.js} +1 -1
- package/.next/static/chunks/937cb3894a606899.js +5 -0
- package/.next/static/chunks/9cf644b700f37825.css +1 -0
- package/.next/static/chunks/bc0f8f7f8dc0a352.js +1 -0
- package/.next/static/chunks/dbce73f7087f2470.js +10 -0
- package/.next/static/chunks/f0a083ac29b4b6c2.js +1 -0
- package/.next/static/s9uUE9DnvJD2xIz-iBGMe/_buildManifest.js +11 -0
- package/.next/static/s9uUE9DnvJD2xIz-iBGMe/_clientMiddlewareManifest.json +1 -0
- package/.next/static/s9uUE9DnvJD2xIz-iBGMe/_ssgManifest.js +1 -0
- package/package.json +2 -2
- package/.next/standalone/node_modules/.pnpm/source-map@0.8.0-beta.0/node_modules/source-map/package.json +0 -95
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__18aca702._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__27348781._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__3a7f0840._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__3e17db24._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__6e06fd2a._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__97b99cc0._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__9d9758e1._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__b212b9bd._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__b9c03a57._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__e99e7672._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__f38a5f20._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/[root-of-the-server]__fa8cf2bc._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__53f4506c._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__921689ca._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__a9d7fd42._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__b27b2469._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/[root-of-the-server]__b3633d6e._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_03aa8d19._.js +0 -7
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_28fe1532._.js +0 -5
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_90eed09a._.js +0 -3
- package/.next/standalone/packages/ui/.next/server/chunks/ssr/_f9129aae._.js +0 -3
- package/.next/standalone/packages/ui/.next/static/chunks/04de9ed512b8098b.js +0 -10
- package/.next/standalone/packages/ui/.next/static/chunks/3d12a8c3152b526d.js +0 -3
- package/.next/standalone/packages/ui/.next/static/chunks/7931c6cb379305b1.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/7f9a218732be8099.js +0 -5
- package/.next/standalone/packages/ui/.next/static/chunks/8a6e8f3394240dbb.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/8d8c106c6848d15b.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/a640b005f2e15d98.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/a7075a240adea8e8.js +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/ddb2935cfe5310c7.css +0 -1
- package/.next/standalone/packages/ui/.next/static/chunks/f924ae32752e1583.js +0 -1
- package/.next/static/chunks/04de9ed512b8098b.js +0 -10
- package/.next/static/chunks/3d12a8c3152b526d.js +0 -3
- package/.next/static/chunks/7931c6cb379305b1.js +0 -1
- package/.next/static/chunks/7f9a218732be8099.js +0 -5
- package/.next/static/chunks/8a6e8f3394240dbb.js +0 -1
- package/.next/static/chunks/8d8c106c6848d15b.js +0 -1
- package/.next/static/chunks/a640b005f2e15d98.js +0 -1
- package/.next/static/chunks/a7075a240adea8e8.js +0 -1
- package/.next/static/chunks/ddb2935cfe5310c7.css +0 -1
- package/.next/static/chunks/f924ae32752e1583.js +0 -1
- /package/.next/standalone/packages/ui/.next/static/{T8X9UGfigRL0qWZiBHNjy → s9uUE9DnvJD2xIz-iBGMe}/_buildManifest.js +0 -0
- /package/.next/standalone/packages/ui/.next/static/{T8X9UGfigRL0qWZiBHNjy → s9uUE9DnvJD2xIz-iBGMe}/_clientMiddlewareManifest.json +0 -0
- /package/.next/standalone/packages/ui/.next/static/{T8X9UGfigRL0qWZiBHNjy → s9uUE9DnvJD2xIz-iBGMe}/_ssgManifest.js +0 -0
- /package/.next/{static/T8X9UGfigRL0qWZiBHNjy → standalone/packages/ui/dist/static/4ZnYN1WbN4LGJQOwP6FkT}/_buildManifest.js +0 -0
- /package/.next/{static/T8X9UGfigRL0qWZiBHNjy → standalone/packages/ui/dist/static/4ZnYN1WbN4LGJQOwP6FkT}/_clientMiddlewareManifest.json +0 -0
- /package/.next/{static/T8X9UGfigRL0qWZiBHNjy → standalone/packages/ui/dist/static/4ZnYN1WbN4LGJQOwP6FkT}/_ssgManifest.js +0 -0
package/.next/standalone/packages/ui/dist/standalone/specs/072-ai-agent-first-use-workflow/README.md
ADDED
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
---
|
|
2
|
+
status: in-progress
|
|
3
|
+
created: '2025-11-13'
|
|
4
|
+
tags:
|
|
5
|
+
- onboarding
|
|
6
|
+
- ai-agents
|
|
7
|
+
- ux
|
|
8
|
+
- mcp
|
|
9
|
+
priority: high
|
|
10
|
+
created_at: '2025-11-13T08:20:28.110Z'
|
|
11
|
+
updated_at: '2025-11-13T08:21:45.345Z'
|
|
12
|
+
transitions:
|
|
13
|
+
- status: in-progress
|
|
14
|
+
at: '2025-11-13T08:21:45.345Z'
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# ai-agent-first-use-workflow
|
|
18
|
+
|
|
19
|
+
> **Status**: ⏳ In progress · **Priority**: High · **Created**: 2025-11-13 · **Tags**: onboarding, ai-agents, ux, mcp
|
|
20
|
+
|
|
21
|
+
**Project**: lean-spec
|
|
22
|
+
**Team**: Core Development
|
|
23
|
+
|
|
24
|
+
## Overview
|
|
25
|
+
|
|
26
|
+
**Problem**: Real users report that AI agents are not following the standard workflow to leverage LeanSpec MCP/CLI tools on their first use. Observed issues:
|
|
27
|
+
|
|
28
|
+
1. **Skipping Discovery**: Agents don't use discovery commands (`lean-spec board`, `lean-spec list`) to understand project context before creating specs
|
|
29
|
+
2. **Manual Spec Creation**: Agents create spec files manually (e.g., `specs/my-feature.md`) instead of using `lean-spec create`, resulting in:
|
|
30
|
+
- Missing sequence numbers
|
|
31
|
+
- Wrong directory structure (flat files vs `NNN-name/README.md`)
|
|
32
|
+
- Missing/malformed frontmatter
|
|
33
|
+
- Breaking LeanSpec tooling
|
|
34
|
+
|
|
35
|
+
**Root Causes**:
|
|
36
|
+
1. Current AGENTS.md buries discovery workflow ~200 lines down in "SDD Workflow"
|
|
37
|
+
2. No explicit instruction to **ALWAYS use `lean-spec create`** instead of manual file creation
|
|
38
|
+
3. CLI/MCP tool usage not emphasized as mandatory, appears optional
|
|
39
|
+
|
|
40
|
+
**Impact**:
|
|
41
|
+
- Specs created with wrong structure, breaking `lean-spec list`, `board`, etc.
|
|
42
|
+
- Duplicate/conflicting specs from lack of discovery
|
|
43
|
+
- Missing proper metadata and sequence numbers
|
|
44
|
+
- Poor first impression of LeanSpec's AI integration
|
|
45
|
+
- Users need extensive manual corrections
|
|
46
|
+
|
|
47
|
+
**Goal**: Make the discovery-first workflow unmissable and automatic for AI agents on first use.
|
|
48
|
+
|
|
49
|
+
## Design
|
|
50
|
+
|
|
51
|
+
### Problem Analysis
|
|
52
|
+
|
|
53
|
+
Current AGENTS.md structure (all templates):
|
|
54
|
+
1. **First Principles** (60+ lines) - Great but heavy for first use
|
|
55
|
+
2. **Core Rules** - Generic, no actionable first step
|
|
56
|
+
3. **Essential Commands** - Listed but not emphasized as mandatory first action
|
|
57
|
+
4. **SDD Workflow** - "Discover" is step 1 but appears ~200 lines down
|
|
58
|
+
|
|
59
|
+
**What AI agents need on FIRST interaction:**
|
|
60
|
+
```
|
|
61
|
+
🚨 CRITICAL FIRST STEPS:
|
|
62
|
+
|
|
63
|
+
1. DISCOVER project context:
|
|
64
|
+
- CLI: `lean-spec board` (preferred - shows status + health)
|
|
65
|
+
- MCP: Use board prompt or list tool
|
|
66
|
+
|
|
67
|
+
2. ALWAYS use proper tools to create specs:
|
|
68
|
+
- CLI: `lean-spec create <name>`
|
|
69
|
+
- MCP: Use create_spec tool
|
|
70
|
+
- ❌ NEVER manually create spec files
|
|
71
|
+
|
|
72
|
+
Skipping these steps breaks LeanSpec tooling and structure.
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Solution: Add Prominent First-Use Section
|
|
76
|
+
|
|
77
|
+
Add a new section **immediately after project description**, before everything else:
|
|
78
|
+
|
|
79
|
+
**Content to add:**
|
|
80
|
+
|
|
81
|
+
## 🚨 First Interaction Protocol
|
|
82
|
+
|
|
83
|
+
**STOP**: Before doing anything, follow these mandatory steps:
|
|
84
|
+
|
|
85
|
+
### Step 1: Discover Context (REQUIRED)
|
|
86
|
+
|
|
87
|
+
**Using CLI** (recommended):
|
|
88
|
+
- `lean-spec board` - Best: shows status, health, WIP at a glance
|
|
89
|
+
- `lean-spec list` - Alternative: see all specs
|
|
90
|
+
|
|
91
|
+
**Using MCP**:
|
|
92
|
+
- Use the `board` prompt (preferred)
|
|
93
|
+
- Or use the `list` tool
|
|
94
|
+
|
|
95
|
+
### Step 2: Always Use Proper Tools (REQUIRED)
|
|
96
|
+
|
|
97
|
+
**To create specs:**
|
|
98
|
+
- CLI: `lean-spec create <name>`
|
|
99
|
+
- MCP: Use the create_spec tool
|
|
100
|
+
|
|
101
|
+
❌ **NEVER manually create spec files** (e.g., `specs/my-feature.md`)
|
|
102
|
+
✅ **ALWAYS use the CLI/MCP tools**
|
|
103
|
+
|
|
104
|
+
**Why?**
|
|
105
|
+
- `lean-spec create` auto-generates sequence numbers
|
|
106
|
+
- Creates correct directory structure (`NNN-name/README.md`)
|
|
107
|
+
- Adds proper frontmatter with timestamps
|
|
108
|
+
- Manual creation breaks tooling (`list`, `board`, `search`)
|
|
109
|
+
|
|
110
|
+
### Step 3: Update Status as You Work
|
|
111
|
+
|
|
112
|
+
- `lean-spec update <spec> --status in-progress` - Mark started
|
|
113
|
+
- `lean-spec update <spec> --status complete` - Mark done
|
|
114
|
+
|
|
115
|
+
**Why This Matters**:
|
|
116
|
+
- Discovery prevents duplicate work and finds related specs
|
|
117
|
+
- Using proper tools maintains structure and metadata
|
|
118
|
+
- Status updates enable project tracking and visibility
|
|
119
|
+
|
|
120
|
+
### Implementation Strategy
|
|
121
|
+
|
|
122
|
+
**Phase 1: Update All Templates** (Immediate)
|
|
123
|
+
- Add "First Interaction Protocol" section to all template AGENTS.md files:
|
|
124
|
+
- `packages/cli/templates/minimal/files/AGENTS.md`
|
|
125
|
+
- `packages/cli/templates/standard/files/AGENTS.md`
|
|
126
|
+
- `packages/cli/templates/enterprise/files/AGENTS.md`
|
|
127
|
+
- Position: Right after project description, before Core Rules
|
|
128
|
+
- Use prominent emoji/visual markers (🚨)
|
|
129
|
+
- Keep it short (<150 tokens)
|
|
130
|
+
|
|
131
|
+
**Phase 2: Update Root AGENTS.md** (Reference implementation)
|
|
132
|
+
- Update `/AGENTS.md` to include this pattern
|
|
133
|
+
- Serves as canonical example
|
|
134
|
+
|
|
135
|
+
**Phase 3: Update Documentation**
|
|
136
|
+
- Update `docs-site/docs/guide/usage/ai-assisted/agent-configuration.mdx`
|
|
137
|
+
- Add first-use protocol to example templates
|
|
138
|
+
- Update MCP integration guide to emphasize discovery-first
|
|
139
|
+
|
|
140
|
+
**Phase 4: MCP Server Enhancement** (Optional, future)
|
|
141
|
+
- Add server-side hint when AI makes first call without discovery
|
|
142
|
+
- Track if `board` or `list` was called this session
|
|
143
|
+
- Return gentle reminder if agent tries `create_spec` without discovery first
|
|
144
|
+
- Detect if specs are being manually created (filesystem monitoring)
|
|
145
|
+
|
|
146
|
+
### Content Guidelines
|
|
147
|
+
|
|
148
|
+
**Keep it:**
|
|
149
|
+
- ✅ Visual (emojis, formatting)
|
|
150
|
+
- ✅ Actionable (specific commands with examples)
|
|
151
|
+
- ✅ Short (~200 tokens max for expanded version)
|
|
152
|
+
- ✅ At the top (can't miss it)
|
|
153
|
+
- ✅ Explains WHY (prevents duplicates, maintains structure)
|
|
154
|
+
- ✅ Explicit about what NOT to do (❌ don't manually create files)
|
|
155
|
+
|
|
156
|
+
**Avoid:**
|
|
157
|
+
- ❌ Philosophy (save for later sections)
|
|
158
|
+
- ❌ Lengthy explanations
|
|
159
|
+
- ❌ Buried in other content
|
|
160
|
+
- ❌ Optional/suggested tone (make it mandatory)
|
|
161
|
+
|
|
162
|
+
## Plan
|
|
163
|
+
|
|
164
|
+
- [ ] **Phase 1: Update template AGENTS.md files**
|
|
165
|
+
- [ ] Update `packages/cli/templates/minimal/files/AGENTS.md`
|
|
166
|
+
- [ ] Update `packages/cli/templates/standard/files/AGENTS.md`
|
|
167
|
+
- [ ] Update `packages/cli/templates/enterprise/files/AGENTS.md`
|
|
168
|
+
- [ ] Test with each template via `lean-spec init`
|
|
169
|
+
|
|
170
|
+
- [ ] **Phase 2: Update root AGENTS.md**
|
|
171
|
+
- [ ] Add First Interaction Protocol section
|
|
172
|
+
- [ ] Verify positioning and visibility
|
|
173
|
+
|
|
174
|
+
- [ ] **Phase 3: Update documentation**
|
|
175
|
+
- [ ] Update agent-configuration.mdx with first-use emphasis
|
|
176
|
+
- [ ] Update mcp-integration.mdx to highlight discovery pattern
|
|
177
|
+
- [ ] Add verification section for first-use behavior
|
|
178
|
+
|
|
179
|
+
- [ ] **Phase 4: Validation & Testing**
|
|
180
|
+
- [ ] Test with real AI agents (Copilot, Claude, etc.)
|
|
181
|
+
- [ ] Verify discovery commands are used before creation
|
|
182
|
+
- [ ] Collect feedback from test users
|
|
183
|
+
|
|
184
|
+
## Test
|
|
185
|
+
|
|
186
|
+
**Success Criteria:**
|
|
187
|
+
|
|
188
|
+
- [ ] **Visibility Test**: First Interaction Protocol appears in first 100 lines of all AGENTS.md templates
|
|
189
|
+
- [ ] **Discovery Test**: AI agent runs `lean-spec board` (or MCP equivalent) BEFORE creating specs
|
|
190
|
+
- [ ] **Tool Usage Test**: AI agent uses `lean-spec create` instead of manually creating files
|
|
191
|
+
- [ ] **Structure Test**: Created specs have correct structure (`NNN-name/README.md`, proper frontmatter)
|
|
192
|
+
- [ ] **Content Test**: Section includes discovery priority (board > list), tool usage mandate
|
|
193
|
+
- [ ] **Template Test**: All three templates (minimal, standard, enterprise) include the section
|
|
194
|
+
- [ ] **User Feedback**: At least 3 real users confirm agents follow proper workflow
|
|
195
|
+
|
|
196
|
+
**Testing Protocol:**
|
|
197
|
+
|
|
198
|
+
1. **Fresh Project Test**:
|
|
199
|
+
```bash
|
|
200
|
+
mkdir test-lean-spec-project
|
|
201
|
+
cd test-lean-spec-project
|
|
202
|
+
lean-spec init --template standard
|
|
203
|
+
# Ask AI agent: "Create a spec for authentication"
|
|
204
|
+
# Expected:
|
|
205
|
+
# 1. Agent runs `lean-spec board` FIRST
|
|
206
|
+
# 2. Agent uses `lean-spec create authentication`
|
|
207
|
+
# 3. Spec created at specs/001-authentication/README.md (not specs/authentication.md)
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
2. **MCP Test** (with Copilot/Claude):
|
|
211
|
+
- Configure MCP for test project
|
|
212
|
+
- Ask: "Show me the project board"
|
|
213
|
+
- Expected: Uses MCP board prompt or list tool
|
|
214
|
+
- Ask: "Create a user profile spec"
|
|
215
|
+
- Expected: Uses create_spec tool (NOT manual file creation)
|
|
216
|
+
- Verify: Check `specs/` directory has `NNN-user-profile/README.md` structure
|
|
217
|
+
|
|
218
|
+
3. **Existing Project Test**:
|
|
219
|
+
- Project with 5+ existing specs
|
|
220
|
+
- Ask AI: "Add a rate limiting feature"
|
|
221
|
+
- Expected:
|
|
222
|
+
- Agent runs `lean-spec board` to see context
|
|
223
|
+
- Agent searches for related specs (`lean-spec search "rate"`)
|
|
224
|
+
- Agent uses `lean-spec create rate-limiting`
|
|
225
|
+
- New spec properly numbered (e.g., `006-rate-limiting/`)
|
|
226
|
+
|
|
227
|
+
4. **Manual Creation Prevention Test**:
|
|
228
|
+
- Ask AI: "Create a spec for email notifications"
|
|
229
|
+
- Monitor filesystem
|
|
230
|
+
- Expected: NO direct file creation in specs/
|
|
231
|
+
- Expected: Uses `lean-spec create` or MCP create_spec tool
|
|
232
|
+
|
|
233
|
+
## Notes
|
|
234
|
+
|
|
235
|
+
### Why This Wasn't Caught Earlier
|
|
236
|
+
|
|
237
|
+
- LeanSpec dogfoods itself - our AGENTS.md was customized and had implicit context
|
|
238
|
+
- Templates were created for "configured" projects, not first-time use
|
|
239
|
+
- MCP testing focused on tool functionality, not workflow adherence
|
|
240
|
+
- Documentation showed capabilities but didn't enforce discovery-first pattern
|
|
241
|
+
- Testing focused on successful tool calls, not detecting manual file creation
|
|
242
|
+
- No real-world user testing with fresh AI agent interactions
|
|
243
|
+
|
|
244
|
+
### Alternative Approaches Considered
|
|
245
|
+
|
|
246
|
+
1. **MCP Server-Side Enforcement**: Have MCP server refuse `create` calls until discovery is done
|
|
247
|
+
- ❌ Too restrictive, breaks legitimate workflows
|
|
248
|
+
- ❌ Doesn't help CLI-only users
|
|
249
|
+
- ✅ Could work as optional "training wheels" mode
|
|
250
|
+
|
|
251
|
+
2. **Interactive Init Prompt**: During `lean-spec init`, show AI-focused onboarding
|
|
252
|
+
- ❌ Doesn't help projects initialized before update
|
|
253
|
+
- ❌ Users might skip or miss it
|
|
254
|
+
- ✅ Good supplementary approach
|
|
255
|
+
|
|
256
|
+
3. **System Prompt Enhancement**: Provide starter prompts in docs
|
|
257
|
+
- ❌ Users don't always read docs
|
|
258
|
+
- ❌ Varies by AI tool configuration
|
|
259
|
+
- ✅ Good documentation enhancement
|
|
260
|
+
|
|
261
|
+
**Decision**: Start with prominent AGENTS.md section (lowest friction, highest impact). Consider others as enhancements.
|
|
262
|
+
|
|
263
|
+
### Related Work
|
|
264
|
+
|
|
265
|
+
- `specs/061-ai-assisted-spec-writing` - AI writing guidance (complements this)
|
|
266
|
+
- `specs/034-copilot-slash-commands` - VS Code integration (future commands for discovery)
|
|
267
|
+
- `specs/070-mcp-token-counting-tool` - MCP server enhancements (future server-side hints)
|
|
268
|
+
|
|
269
|
+
### Open Questions
|
|
270
|
+
|
|
271
|
+
- Should we add visual indicators (banner, ASCII art) to make section even more prominent?
|
|
272
|
+
- Should MCP server log discovery patterns and warn if skipped?
|
|
273
|
+
- How do we measure success beyond anecdotal user reports?
|
|
274
|
+
- Can we detect manual spec creation and provide helpful error messages?
|
|
275
|
+
- Should `lean-spec validate` check for manually created specs (missing sequence, wrong structure)?
|
|
276
|
+
|
|
277
|
+
### Key Insight from User Feedback
|
|
278
|
+
|
|
279
|
+
**Discovery Tool Priority**: `board` > `list` because:
|
|
280
|
+
- `board` shows status, WIP, and project health in one view
|
|
281
|
+
- `list` only shows spec names without context
|
|
282
|
+
- New users get better overview from board
|
|
283
|
+
- Aligns with "see the forest before the trees" principle
|
|
284
|
+
|
|
285
|
+
**Manual Creation Problem**: More serious than just skipping discovery - agents that manually create files bypass the entire LeanSpec system, breaking tooling and structure.
|
package/.next/standalone/packages/ui/dist/standalone/specs/073-template-engine-agents-md/README.md
ADDED
|
@@ -0,0 +1,323 @@
|
|
|
1
|
+
---
|
|
2
|
+
status: complete
|
|
3
|
+
created: '2025-11-13'
|
|
4
|
+
tags:
|
|
5
|
+
- templates
|
|
6
|
+
- maintainability
|
|
7
|
+
- dx
|
|
8
|
+
- refactor
|
|
9
|
+
- ai-first
|
|
10
|
+
priority: medium
|
|
11
|
+
related:
|
|
12
|
+
- '025'
|
|
13
|
+
- '072'
|
|
14
|
+
- '074'
|
|
15
|
+
- '078'
|
|
16
|
+
created_at: '2025-11-13T08:35:40.229Z'
|
|
17
|
+
updated_at: '2025-11-13T10:32:28.046Z'
|
|
18
|
+
transitions:
|
|
19
|
+
- status: in-progress
|
|
20
|
+
at: '2025-11-13T09:26:58.535Z'
|
|
21
|
+
- status: complete
|
|
22
|
+
at: '2025-11-13T09:29:32.737Z'
|
|
23
|
+
- status: in-progress
|
|
24
|
+
at: '2025-11-13T09:48:01.526Z'
|
|
25
|
+
- status: complete
|
|
26
|
+
at: '2025-11-13T10:32:28.046Z'
|
|
27
|
+
completed_at: '2025-11-13T09:29:32.737Z'
|
|
28
|
+
completed: '2025-11-13'
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
# template-engine-agents-md
|
|
32
|
+
|
|
33
|
+
> **Status**: ✅ Complete · **Priority**: Medium · **Created**: 2025-11-13 · **Tags**: templates, maintainability, dx, refactor, ai-first
|
|
34
|
+
|
|
35
|
+
**Project**: lean-spec
|
|
36
|
+
**Team**: Core Development
|
|
37
|
+
|
|
38
|
+
## Overview
|
|
39
|
+
|
|
40
|
+
**Problem**: Template AGENTS.md files have significant duplication and drift issues:
|
|
41
|
+
|
|
42
|
+
1. **Duplication**: Core content (First Principles, commands, workflow) duplicated across 3+ templates
|
|
43
|
+
2. **Maintenance Burden**: Single change (like nested code blocks rule) requires updating 4+ files
|
|
44
|
+
3. **Drift Risk**: Templates diverge over time as updates miss some files
|
|
45
|
+
4. **Template System Mismatch**: Current `.lean-spec/templates/` only handles spec files (README.md), not supporting files (AGENTS.md)
|
|
46
|
+
|
|
47
|
+
**Example**: Just added "nested code blocks" rule to all 4 AGENTS.md files - this is not scalable.
|
|
48
|
+
|
|
49
|
+
**Current State**:
|
|
50
|
+
- Root `AGENTS.md` (reference implementation)
|
|
51
|
+
- `packages/cli/templates/minimal/files/AGENTS.md`
|
|
52
|
+
- `packages/cli/templates/standard/files/AGENTS.md`
|
|
53
|
+
- `packages/cli/templates/enterprise/files/AGENTS.md`
|
|
54
|
+
- Each ~85-125 lines with 70%+ shared content
|
|
55
|
+
|
|
56
|
+
**Goal**: Use template engine to generate AGENTS.md from shared components, eliminate duplication, prevent drift.
|
|
57
|
+
|
|
58
|
+
**Scope**: This spec covers Phase 1 only (AGENTS.md template engine). Phase 2 (sub-spec template system) was split into spec 078.
|
|
59
|
+
|
|
60
|
+
**Related Specs**:
|
|
61
|
+
- `012-sub-spec-files` (archived) - Original sub-spec design (implemented)
|
|
62
|
+
- `013-custom-spec-templates` (archived) - Template system v1
|
|
63
|
+
- `025-template-config-updates` - Config format updates
|
|
64
|
+
- `072-ai-agent-first-use-workflow` - Current AGENTS.md improvement driving this
|
|
65
|
+
- `074-content-at-creation` - Spec creation with content flags (similar AI-first approach)
|
|
66
|
+
- `078-sub-spec-template-system` - Phase 2 split into separate spec (sub-spec generation)
|
|
67
|
+
|
|
68
|
+
## Design
|
|
69
|
+
|
|
70
|
+
### Problem Analysis
|
|
71
|
+
|
|
72
|
+
**Current AGENTS.md Structure**:
|
|
73
|
+
|
|
74
|
+
```
|
|
75
|
+
1. Project description (varies)
|
|
76
|
+
2. Core Rules (mostly shared, 1-2 project-specific rules)
|
|
77
|
+
3. Discovery Commands (identical across templates)
|
|
78
|
+
4. Spec Frontmatter (varies by template - minimal/standard/enterprise)
|
|
79
|
+
5. When to Use Specs (similar with minor variations)
|
|
80
|
+
6. Workflow (enterprise has approval, others standard)
|
|
81
|
+
7. Quality Standards (identical)
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
**Shared (~70%)**: Core Rules, Discovery Commands, Quality Standards, most workflow steps
|
|
85
|
+
**Variable (~30%)**: Project description, frontmatter fields, approval workflow
|
|
86
|
+
|
|
87
|
+
### Solution: Two-Part Improvement
|
|
88
|
+
|
|
89
|
+
#### Part 1: Template Engine for AGENTS.md (Immediate)
|
|
90
|
+
|
|
91
|
+
Use simple template engine (Handlebars or similar) with shared components:
|
|
92
|
+
|
|
93
|
+
**Structure**:
|
|
94
|
+
```
|
|
95
|
+
packages/cli/templates/
|
|
96
|
+
├── _shared/
|
|
97
|
+
│ ├── agents-components/
|
|
98
|
+
│ │ ├── core-rules.md
|
|
99
|
+
│ │ ├── discovery-commands.md
|
|
100
|
+
│ │ ├── essential-commands.md
|
|
101
|
+
│ │ ├── workflow-standard.md
|
|
102
|
+
│ │ ├── workflow-enterprise.md
|
|
103
|
+
│ │ └── quality-standards.md
|
|
104
|
+
│ └── agents-template.hbs
|
|
105
|
+
├── minimal/
|
|
106
|
+
│ ├── config.json
|
|
107
|
+
│ ├── agents-config.json # NEW: defines which components + vars
|
|
108
|
+
│ └── files/
|
|
109
|
+
│ └── spec-template.md
|
|
110
|
+
├── standard/
|
|
111
|
+
│ ├── config.json
|
|
112
|
+
│ ├── agents-config.json
|
|
113
|
+
│ └── files/
|
|
114
|
+
│ └── spec-template.md
|
|
115
|
+
└── enterprise/
|
|
116
|
+
├── config.json
|
|
117
|
+
├── agents-config.json
|
|
118
|
+
└── files/
|
|
119
|
+
└── spec-template.md
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
**agents-config.json** (example for standard):
|
|
123
|
+
```json
|
|
124
|
+
{
|
|
125
|
+
"project_name": "{project_name}",
|
|
126
|
+
"description": "Lightweight spec methodology for AI-powered development.",
|
|
127
|
+
"components": [
|
|
128
|
+
"core-rules",
|
|
129
|
+
"discovery-commands",
|
|
130
|
+
"essential-commands",
|
|
131
|
+
"frontmatter-standard",
|
|
132
|
+
"workflow-standard",
|
|
133
|
+
"quality-standards"
|
|
134
|
+
],
|
|
135
|
+
"customRules": [],
|
|
136
|
+
"workflowType": "standard"
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
**Build Process**:
|
|
141
|
+
```bash
|
|
142
|
+
# During package build or on-demand
|
|
143
|
+
npm run build:agents-templates
|
|
144
|
+
# Generates AGENTS.md in each template from shared components
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
**Benefits**:
|
|
148
|
+
- ✅ Single source of truth for shared content
|
|
149
|
+
- ✅ Easy to update all templates (edit one component file)
|
|
150
|
+
- ✅ Template-specific customization still possible
|
|
151
|
+
- ✅ Prevents drift automatically
|
|
152
|
+
- ✅ Can version control both source and generated files
|
|
153
|
+
|
|
154
|
+
### Technical Approach
|
|
155
|
+
|
|
156
|
+
**AGENTS.md Template Engine**:
|
|
157
|
+
- Tool: Handlebars.js (lightweight, widely used)
|
|
158
|
+
- Build script: `scripts/build-agents-templates.ts`
|
|
159
|
+
- Runs during: `pnpm build` or `pnpm build:templates`
|
|
160
|
+
- Generated files committed to repo (easier distribution)
|
|
161
|
+
|
|
162
|
+
**Note**: Originally this spec included Phase 2 (Sub-Spec Template System) for generating optional sub-spec files. That has been split into spec 078 for clearer separation of concerns
|
|
163
|
+
|
|
164
|
+
### Alternative Approaches Considered
|
|
165
|
+
|
|
166
|
+
1. **Runtime Template Composition**: Generate AGENTS.md during `lean-spec init`
|
|
167
|
+
- ❌ Requires template engine in runtime dependency
|
|
168
|
+
- ❌ More complex error handling
|
|
169
|
+
- ✅ Could work but build-time is simpler
|
|
170
|
+
|
|
171
|
+
2. **Symbolic Links**: Link shared content
|
|
172
|
+
- ❌ Breaks on Windows
|
|
173
|
+
- ❌ Confusing in version control
|
|
174
|
+
- ❌ Doesn't solve the problem
|
|
175
|
+
|
|
176
|
+
3. **Single AGENTS.md with Conditionals**: One file with template-specific sections
|
|
177
|
+
- ❌ Becomes unreadable
|
|
178
|
+
- ❌ Hard to maintain
|
|
179
|
+
- ❌ Doesn't scale
|
|
180
|
+
|
|
181
|
+
**Decision**: Build-time generation with Handlebars is the sweet spot - simple, reliable, works everywhere.
|
|
182
|
+
|
|
183
|
+
## Plan
|
|
184
|
+
|
|
185
|
+
### Phase 1: AGENTS.md Template Engine
|
|
186
|
+
|
|
187
|
+
- [x] **Setup Template Infrastructure**
|
|
188
|
+
- [x] Create `packages/cli/templates/_shared/agents-components/` directory
|
|
189
|
+
- [x] Extract shared components from existing AGENTS.md files
|
|
190
|
+
- [x] Create `agents-template.hbs` main template
|
|
191
|
+
- [x] Add Handlebars dependency to CLI package
|
|
192
|
+
|
|
193
|
+
- [x] **Create Component Files**
|
|
194
|
+
- [x] `core-rules-base.md` - 4 shared rules
|
|
195
|
+
- [x] `discovery-commands.md` - identical across templates
|
|
196
|
+
- [x] `essential-commands.md` - command reference
|
|
197
|
+
- [x] `frontmatter-minimal.md` - minimal frontmatter guidance
|
|
198
|
+
- [x] `frontmatter-standard.md` - standard frontmatter
|
|
199
|
+
- [x] `frontmatter-enterprise.md` - enterprise frontmatter
|
|
200
|
+
- [x] `workflow-standard.md` - standard SDD workflow
|
|
201
|
+
- [x] `workflow-enterprise.md` - enterprise approval workflow
|
|
202
|
+
- [x] `quality-standards.md` - identical across templates
|
|
203
|
+
|
|
204
|
+
- [x] **Create Template Configs**
|
|
205
|
+
- [x] `minimal/agents-config.json`
|
|
206
|
+
- [x] `standard/agents-config.json`
|
|
207
|
+
- [x] `enterprise/agents-config.json`
|
|
208
|
+
|
|
209
|
+
- [x] **Build Script**
|
|
210
|
+
- [x] Create `scripts/build-agents-templates.ts`
|
|
211
|
+
- [x] Implement template composition logic
|
|
212
|
+
- [x] Add validation for generated output
|
|
213
|
+
- [x] Integrate into `pnpm build` script
|
|
214
|
+
|
|
215
|
+
- [x] **Validation & Testing**
|
|
216
|
+
- [x] Verify generated AGENTS.md matches current versions
|
|
217
|
+
- [x] Test `lean-spec init` with each template
|
|
218
|
+
- [x] Update CI to fail if generated files out of sync
|
|
219
|
+
- [ ] Add pre-commit hook to regenerate if source changed (deferred - CI validation sufficient)
|
|
220
|
+
|
|
221
|
+
**Note**: Phase 2 (Sub-Spec Template System) has been moved to spec 078-sub-spec-template-system
|
|
222
|
+
|
|
223
|
+
## Test
|
|
224
|
+
|
|
225
|
+
**Phase 1: AGENTS.md Template Engine**
|
|
226
|
+
|
|
227
|
+
- [ ] **Component Extraction Test**: Generated AGENTS.md matches current files byte-for-byte
|
|
228
|
+
- [ ] **Build Integration Test**: `pnpm build` successfully generates all templates
|
|
229
|
+
- [ ] **Template Variability Test**: Each template (minimal/standard/enterprise) has correct unique content
|
|
230
|
+
- [ ] **Shared Content Test**: Changes to shared components propagate to all templates
|
|
231
|
+
- [ ] **CI Validation Test**: CI fails if source components changed but generated files not updated
|
|
232
|
+
|
|
233
|
+
**Test Protocol**:
|
|
234
|
+
```bash
|
|
235
|
+
# 1. Generate templates
|
|
236
|
+
pnpm build:templates
|
|
237
|
+
|
|
238
|
+
# 2. Compare with current
|
|
239
|
+
diff packages/cli/templates/minimal/files/AGENTS.md packages/cli/templates/minimal/files/AGENTS.md.bak
|
|
240
|
+
|
|
241
|
+
# 3. Test template selection during init
|
|
242
|
+
lean-spec init --template standard
|
|
243
|
+
# Verify AGENTS.md was copied correctly
|
|
244
|
+
|
|
245
|
+
# 4. Modify shared component
|
|
246
|
+
echo "\n6. Test rule" >> templates/_shared/agents-components/core-rules-base.md
|
|
247
|
+
pnpm build:templates
|
|
248
|
+
# Verify all AGENTS.md files updated
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
## Notes
|
|
252
|
+
|
|
253
|
+
### Why This Matters
|
|
254
|
+
|
|
255
|
+
**Immediate Pain**: Just added "nested code blocks" rule to 4 files. Next update will be same pain.
|
|
256
|
+
|
|
257
|
+
**Long-term Impact**:
|
|
258
|
+
- As LeanSpec grows, AGENTS.md will evolve frequently (new commands, updated workflows, etc.)
|
|
259
|
+
- Every change requires 4-file update currently
|
|
260
|
+
- Risk of inconsistency grows over time
|
|
261
|
+
- Template engine fixes this permanently
|
|
262
|
+
|
|
263
|
+
### Build vs Runtime Trade-offs
|
|
264
|
+
|
|
265
|
+
**Build-time generation** (chosen):
|
|
266
|
+
- ✅ No runtime overhead
|
|
267
|
+
- ✅ Simple distribution (generated files in npm package)
|
|
268
|
+
- ✅ Easy to audit (see generated output in git)
|
|
269
|
+
- ✅ No template engine dependency at runtime
|
|
270
|
+
- ⚠️ Must remember to rebuild after editing components
|
|
271
|
+
|
|
272
|
+
**Runtime generation** (rejected):
|
|
273
|
+
- ✅ Always fresh
|
|
274
|
+
- ❌ Template engine in runtime deps
|
|
275
|
+
- ❌ More complex error handling
|
|
276
|
+
**Decision**: Build-time generation with Handlebars is the sweet spot - simple, reliable, works everywhere.
|
|
277
|
+
|
|
278
|
+
### Phase 2 Split Decision
|
|
279
|
+
|
|
280
|
+
**Why split into separate spec (078)?**
|
|
281
|
+
- Phase 1 (AGENTS.md template engine) is complete and independent
|
|
282
|
+
- Phase 2 (sub-spec template system) is a different feature with different scope
|
|
283
|
+
- Cleaner separation allows independent planning and archiving
|
|
284
|
+
- Phase 1 can be archived when appropriate while Phase 2 continues as spec 078
|
|
285
|
+
|
|
286
|
+
### Related Specs
|
|
287
|
+
|
|
288
|
+
See Overview section for full list of related specs.
|
|
289
|
+
|
|
290
|
+
### Open Questions
|
|
291
|
+
|
|
292
|
+
- Should we also template-ize spec templates (README.md)? Or just AGENTS.md?
|
|
293
|
+
- ~~Do we need a `lean-spec templates validate` command?~~ ✅ Implemented as `pnpm validate:templates`
|
|
294
|
+
- ~~Should CI auto-regenerate and commit, or just fail?~~ ✅ CI fails on drift (regeneration is manual)
|
|
295
|
+
- Can we detect if AGENTS.md was manually edited and warn?
|
|
296
|
+
- ~~Should we support optional sub-specs?~~ ✅ Moved to spec 078
|
|
297
|
+
|
|
298
|
+
### Success Metrics
|
|
299
|
+
|
|
300
|
+
- **Maintenance Time**: Adding new rule takes 1 file edit + build (not 4 file edits) ✅ **Achieved**
|
|
301
|
+
- **Consistency**: No drift between templates (verified by tests) ✅ **Achieved** (CI validation in place)
|
|
302
|
+
- **Flexibility**: Easy to create new templates with different combinations ✅ **Achieved**
|
|
303
|
+
|
|
304
|
+
## Completion Summary
|
|
305
|
+
|
|
306
|
+
**Status**: Complete ✅
|
|
307
|
+
|
|
308
|
+
**Completed Work**:
|
|
309
|
+
1. ✅ Template infrastructure created with component-based architecture
|
|
310
|
+
2. ✅ All component files extracted and organized
|
|
311
|
+
3. ✅ Build system integrated (`pnpm build:templates`)
|
|
312
|
+
4. ✅ Validation system implemented (`pnpm validate:templates`)
|
|
313
|
+
5. ✅ CI integration added to prevent drift
|
|
314
|
+
6. ✅ Manual testing completed for all three templates (minimal, standard, enterprise)
|
|
315
|
+
7. ✅ Documentation updated with validation guide
|
|
316
|
+
|
|
317
|
+
**Benefits Realized**:
|
|
318
|
+
- Single source of truth for shared content
|
|
319
|
+
- Automated validation prevents template drift
|
|
320
|
+
- Easy maintenance: update once, propagates to all templates
|
|
321
|
+
- CI ensures quality and consistency
|
|
322
|
+
|
|
323
|
+
**Note**: Originally planned Phase 2 (Sub-Spec Template System) has been split into spec 078-sub-spec-template-system for clearer separation of concerns
|