businesslens 0.5.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (312) hide show
  1. package/CHANGELOG.md +253 -0
  2. package/README.md +111 -106
  3. package/dist/cli.d.ts +1 -0
  4. package/dist/cli.js +2106 -819
  5. package/dist/logo-Bmv9IEAA.js +160 -0
  6. package/dist/logo.d.ts +16 -0
  7. package/dist/logo.js +3 -0
  8. package/dist/portable-BG1UM2eJ.js +576 -0
  9. package/dist/portable-D-39sG6M.d.ts +1192 -0
  10. package/dist/report-digest-B5HEnjj6.js +16 -0
  11. package/dist/report-digest.d.ts +13 -0
  12. package/dist/report-digest.js +4 -0
  13. package/dist/report-view-model.d.ts +98 -0
  14. package/dist/report-view-model.js +80 -0
  15. package/dist/report.d.ts +2 -0
  16. package/dist/report.js +3 -0
  17. package/dist/viewer/200.html +1 -0
  18. package/dist/viewer/404.html +1 -0
  19. package/dist/viewer/_fonts/2vrrJ3MJLeeRdsxoGShjYhieJbC2KYTsL2TxP6pMbHw-M0DkDLNITN2p_m211B__nX1QX-Xza3m69L-nMauwf2g.woff2 +0 -0
  20. package/dist/viewer/_fonts/3EoiQ3JXV9M854bFdDwbRdGEY3-Du8oUds3aqK5whzM-0k8mcMMDR7LSyG5LPtIn07Rq92oTawhgfoVy5edJiuM.woff2 +0 -0
  21. package/dist/viewer/_fonts/4QnBRRPRkqsZZsI-BMyAY6O8mcHveU0lVITGztsdgaU-6W9goIX2kkUb_cEk1DVhEit9nFnfoMy0U1qs3xF4uAE.woff2 +0 -0
  22. package/dist/viewer/_fonts/7HAR14LKTzhJQKjIswIdjqbb_ir_9ierJYPiQk1I0T4-CAhl9c6lKjXQV_OAVGFlQ8ZIg0kI00oZ4sqnwBOU2vo.woff2 +0 -0
  23. package/dist/viewer/_fonts/7qYB9pTPpQMGJcc1oBw4aJs8qrR5AEqnE_aISylzMZk-bEs5OXN1qanFoMWgw9Rbj_qKdScgEiDVW5fwM_e-DbY.woff2 +0 -0
  24. package/dist/viewer/_fonts/7u0-77UfQZ7R5xCkHtH-6FcLzzYcD0xArs2lWsaXoxo-nx_kVkjHkrHGl_yt9uLKYpDnl16LRpt038O6up8FgXw.woff2 +0 -0
  25. package/dist/viewer/_fonts/8s05g7h1BsO8lFAzNqHs5fJZFxS-xwv8O45ZLDdw4Xc-0o1JXtxv_7kmP3VcvEp-9kAlLtZv249JWMmVsfIzhxw.woff2 +0 -0
  26. package/dist/viewer/_fonts/9IYWZwGkalWblbQ0qUB1NVEWKltx8MGbUCCI8A-nXvc-A42XFuaMkcGV8IU4tyjaz8jlX4w7e0oOK9ZL1W1A_tg.woff2 +0 -0
  27. package/dist/viewer/_fonts/Be-n02WlyGlCYr6AKZTu1ZLO7yH-M5nlZkD_wXnLEHI-dzPF0VM_shn45xQxjIQGDrk8A3rEcAn5G6IvnYsvdnc.woff2 +0 -0
  28. package/dist/viewer/_fonts/G1z3mcby8z4pfQp_shaJSYZuXyNpaES81jf-Uy3wFLc-QdRJEr2TP9Yyj3gppGIo3wyzXYHET_I1oHxOKv4_UBc.woff2 +0 -0
  29. package/dist/viewer/_fonts/IOQmCJk1c1X8tTiR2_xRphUddTG90WpG00y3mrL7asc-fI5Z9vM1TPimFu47KjlvcLJubuCXAUmRe99EOBGK4Jg.woff2 +0 -0
  30. package/dist/viewer/_fonts/MlNgkMyhKIDysanNTo08JXs1NKT7N3PAiE-rd67y0tk-4_8EiC-OPpJkFXcZG4fmdwz7sj_gpRAqn-822cldaKI.woff2 +0 -0
  31. package/dist/viewer/_fonts/NaeHrWP1-iMKUUbIzW8qCa662095DhNYoHJXtkNCjkM-1gqKNyA5_uizWtQDHl7DvGwhfCQZkjE87-e8v9ZSzew.woff2 +0 -0
  32. package/dist/viewer/_fonts/P-opX31986DaGyCeEVxGapeAZVhWZEmsnHrtz-8uNjk-Qdxvbv5v3sdw4jMVvggdQIwnhFnU5CSX7ZkcKlqcM5E.woff2 +0 -0
  33. package/dist/viewer/_fonts/P20rFYUuJYBG6P413-kmy1MH2c5-AHidHeOkhurVW9E-s9pky6iiS9O9L4P9FGQnIeXl7IrK7HsqmKdubOA2j4w.woff2 +0 -0
  34. package/dist/viewer/_fonts/TFWlwoCp6ug4N2WAg-6QAZ14xTmMw01biXyVG4455dI-q3iMkKdBtHvY5CwbWL9amwnIlWjCh_MBY6rJ1ZpktWQ.woff2 +0 -0
  35. package/dist/viewer/_fonts/Y7f-8GVyzqqVUZE9RGKSEwHKp-J5xG9W9JvAuAXnukE-a6vWQ8lr44WUpidIwQELsd_UxxoksjFr_7OFl0B1cj4.woff2 +0 -0
  36. package/dist/viewer/_fonts/YFhrCfizGmZCCsX1GkJqSsa1Ln3ZkYEBQx1kS5GBSNM-lnlTSm_m0Am_5BfksHFyxTS8HwzeRUIimtrJh-2-hQk.woff2 +0 -0
  37. package/dist/viewer/_fonts/abc3urfYpum3NohTJJ82tZYrJ0Qq6V1DDuV4nEN3-K8-2_2ztTmYY0L6UFJjC5ut8vWYRD-RsvXGTIbWQjKw8ig.woff2 +0 -0
  38. package/dist/viewer/_fonts/c9UOtWdvEkMdkWxin3fO_nOvZfFevXVtanKkemdlzVs-NZc_1h0ba5jh8strJX03YaVqHCE1TFVMTjG6rHlowdk.woff2 +0 -0
  39. package/dist/viewer/_fonts/csHsi_ayDY-1Bb0elJrgXc5EYv_3ZUHTjyt6t6R_hvI-2j_LO_XEAFCarGnUMAZp9mH1XcHyWmBOSOM3UU8Yh80.woff2 +0 -0
  40. package/dist/viewer/_fonts/de9Hn98X7qjvQryMTK_S5_8pcE2ixEzuPClwbeHVxAI-2R9bduNO98qcxzo2cGRCSP20RqlwtuSKwb6RYUOUHtQ.woff2 +0 -0
  41. package/dist/viewer/_fonts/fxn6Ta_PXKaftNQ6o3GFS9b6XU2VmWsDHvzQlBYv26k-RCwtZl_Z0-eqoKkgjV2Lvu8bNskZv3RiHclp-qdyFbE.woff2 +0 -0
  42. package/dist/viewer/_fonts/ib-aovnRDsdvSBzUC6Ll2tdWY2U3C9FsxsqLnPpAg18-c_nItv4f1UIuWsSuQgkfygxojtODoHxU-eKvW69FGyI.woff2 +0 -0
  43. package/dist/viewer/_fonts/iwtMiRQr9MVxkS-mqNWNDfuQrs4GB3dvByMM9ojyFHw-ExrDYapJHBuMovYABEGrabFChkrO9vAYi7UAvRk2fC8.woff2 +0 -0
  44. package/dist/viewer/_fonts/k9VNYFZ3lbLjdFOvyoe_t6P1Z4y9X5RYYVuXmoEo_ig-nTKWoqtzyKxAIKIx8JNNQ2Q8SwgTTBWZ4p5o2jmFO3k.woff2 +0 -0
  45. package/dist/viewer/_fonts/ljD0O_drjiflVTw1FPwOjK1CL1HwVPYB7us-BfZqHuQ-ZjVgBNdLadH_Dw6T1hPTCJa6wTlqofsHYwtGtzawATs.woff2 +0 -0
  46. package/dist/viewer/_fonts/oA7rp6XLB_UIP_utZxXIDlSPcMeVLGKMaeey_kAD0fo-98JsXCHs_mcC6olFARmc-2GM9H4YyxJhTUClXLaqEOU.woff2 +0 -0
  47. package/dist/viewer/_fonts/r2KASPa1NYEuoln4lN0W3EcSZ4QcjSeSmKvuJKUW_e0-EBXL59uF8lOU0BbZ0Qd0HKaqxnk9ahNM_OUahEvA2bA.woff2 +0 -0
  48. package/dist/viewer/_fonts/sZOWZh4Lseqiy1g9lJ-6sp_l7Tnfae4gGZYr6PHqLgc-NVanILUbCWR2T4cC6yna0eytAT4QEmYcMi_qN_YFwrA.woff2 +0 -0
  49. package/dist/viewer/_fonts/tHIC4jbWRecrkBLYzXeJ-l-FMVE3IC-WCOr8aeczZzk-HpEbV83Au1R7ttgKEHICBgfH9eJ1oI4aqhcwYRiyk_E.woff2 +0 -0
  50. package/dist/viewer/_fonts/uqOUEfp6GyasEjSs6mPL4xH4Ogfg9dejwyGqFvieEhQ-1DC4lhOKAtHn_hSVO1eAmsDfxgXpJii8eq16JZynm5s.woff2 +0 -0
  51. package/dist/viewer/_fonts/vSGurvFi7J9DFpc3gRh0zb7zfLGEZfPgQADV5W675RU-SOsE32TvAEDx4Ogk8IUoJ8eiJFzZUTZWzAjnjTzmlhU.woff2 +0 -0
  52. package/dist/viewer/_fonts/vijLFK-KHAfLMAJw3I00MGO7TegKZixeBpXB8P8ZNSw-CWJay_vzLuCpDiGXYEvr4DhzjKgzr8DcTgueGgkphlw.woff2 +0 -0
  53. package/dist/viewer/_fonts/vkmZkh-CHOvBXhWqyxI7y7yhtJnjEZhooZMtIOrKbdc-2IAHU0readmKJy05HSHAUr9ZfblPKy1cYnIzD6FaafQ.woff2 +0 -0
  54. package/dist/viewer/_fonts/wXrnAZG6imawmnLMrmEGDaw8OERkBjrhxtvCpdAoFtU-THRRjDiTK2YhlZWGZ4KWGQimEEJ4q90NggcMPrCWifk.woff2 +0 -0
  55. package/dist/viewer/_fonts/xJPBIvvk_Sw4KqpH43KzxcdvgIqPAswKL2-SL5mMfgk-P0mrlLOS5DRt4uVQ_yTmC-xlOBH5DV5VtMOSziFrN8U.woff2 +0 -0
  56. package/dist/viewer/_fonts/xfTORM6zMaCBLN8KEmrdAwkoRlhpJreq9od0IdnzZ0g-_9Qp95jKFav7hdhcdpsrtGsvVOKgw5NpeBgIuaa3qLg.woff2 +0 -0
  57. package/dist/viewer/_fonts/zhpX147TwsvlSAL8_vtsG77wE2r4o_uOAuyxH7pu_ro-9hIvJr5HdnrHw0ka90s0eA135TAMwiiABrhsW5rDElc.woff2 +0 -0
  58. package/dist/viewer/_fonts/zxddnekyjgM8Leg15hUgrEIp2Ny0tH_b-TRYGPmkH1o-3ppcoPOnLuSdSUDCyG_oPN72xWzFr2Pe0QIytgvDeZs.woff2 +0 -0
  59. package/dist/viewer/_nuxt/0agZip0Q.js +1 -0
  60. package/dist/viewer/_nuxt/C2YqwjgQ.js +1 -0
  61. package/dist/viewer/_nuxt/CXkZ3uUu.js +1 -0
  62. package/dist/viewer/_nuxt/DBtS0ETw.js +37 -0
  63. package/dist/viewer/_nuxt/archivo-latin-ext-wght-normal.C4zznr8T.woff2 +0 -0
  64. package/dist/viewer/_nuxt/archivo-latin-wght-normal.E0tuGl4L.woff2 +0 -0
  65. package/dist/viewer/_nuxt/archivo-vietnamese-wght-normal.XAtsl5Q_.woff2 +0 -0
  66. package/dist/viewer/_nuxt/builds/latest.json +1 -0
  67. package/dist/viewer/_nuxt/builds/meta/c09d2db6-057a-4ddc-a9ac-95d77395c458.json +1 -0
  68. package/dist/viewer/_nuxt/entry.DU06319b.css +1 -0
  69. package/dist/viewer/_nuxt/error-404.VJcZ3YVw.css +1 -0
  70. package/dist/viewer/_nuxt/error-500.BwxPsW7a.css +1 -0
  71. package/dist/viewer/_nuxt/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2 +0 -0
  72. package/dist/viewer/_nuxt/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff +0 -0
  73. package/dist/viewer/_nuxt/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff +0 -0
  74. package/dist/viewer/_nuxt/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2 +0 -0
  75. package/dist/viewer/_nuxt/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff +0 -0
  76. package/dist/viewer/_nuxt/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2 +0 -0
  77. package/dist/viewer/_nuxt/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff +0 -0
  78. package/dist/viewer/_nuxt/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2 +0 -0
  79. package/dist/viewer/_nuxt/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff +0 -0
  80. package/dist/viewer/_nuxt/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2 +0 -0
  81. package/dist/viewer/_nuxt/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff +0 -0
  82. package/dist/viewer/_nuxt/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2 +0 -0
  83. package/dist/viewer/_nuxt/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2 +0 -0
  84. package/dist/viewer/_nuxt/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff +0 -0
  85. package/dist/viewer/_nuxt/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2 +0 -0
  86. package/dist/viewer/_nuxt/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff +0 -0
  87. package/dist/viewer/_nuxt/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2 +0 -0
  88. package/dist/viewer/_nuxt/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff +0 -0
  89. package/dist/viewer/_nuxt/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff +0 -0
  90. package/dist/viewer/_nuxt/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2 +0 -0
  91. package/dist/viewer/_nuxt/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2 +0 -0
  92. package/dist/viewer/_nuxt/inter-cyrillic-wght-normal.DqGufNeO.woff2 +0 -0
  93. package/dist/viewer/_nuxt/inter-greek-ext-wght-normal.DlzME5K_.woff2 +0 -0
  94. package/dist/viewer/_nuxt/inter-greek-wght-normal.CkhJZR-_.woff2 +0 -0
  95. package/dist/viewer/_nuxt/inter-latin-ext-wght-normal.DO1Apj_S.woff2 +0 -0
  96. package/dist/viewer/_nuxt/inter-latin-wght-normal.Dx4kXJAl.woff2 +0 -0
  97. package/dist/viewer/_nuxt/inter-vietnamese-wght-normal.CBcvBZtf.woff2 +0 -0
  98. package/dist/viewer/brand/icons/apple-touch-icon.png +0 -0
  99. package/dist/viewer/brand/icons/businesslens-app-icon.svg +7 -0
  100. package/dist/viewer/brand/icons/businesslens-maskable-icon.svg +7 -0
  101. package/dist/viewer/brand/icons/favicon-32.png +0 -0
  102. package/dist/viewer/brand/icons/favicon.ico +0 -0
  103. package/dist/viewer/brand/icons/favicon.svg +7 -0
  104. package/dist/viewer/brand/icons/icon-1024.png +0 -0
  105. package/dist/viewer/brand/icons/icon-192.png +0 -0
  106. package/dist/viewer/brand/icons/icon-512.png +0 -0
  107. package/dist/viewer/brand/icons/marks/m10/apple-touch-icon.png +0 -0
  108. package/dist/viewer/brand/icons/marks/m10/favicon-32.png +0 -0
  109. package/dist/viewer/brand/icons/marks/m10/favicon.ico +0 -0
  110. package/dist/viewer/brand/icons/marks/m10/favicon.svg +7 -0
  111. package/dist/viewer/brand/icons/marks/m10/icon-192.png +0 -0
  112. package/dist/viewer/brand/icons/marks/m10/icon-512.png +0 -0
  113. package/dist/viewer/brand/icons/marks/m10/maskable-icon-512.png +0 -0
  114. package/dist/viewer/brand/icons/marks/m10/site.webmanifest +32 -0
  115. package/dist/viewer/brand/icons/marks/m4/apple-touch-icon.png +0 -0
  116. package/dist/viewer/brand/icons/marks/m4/favicon-32.png +0 -0
  117. package/dist/viewer/brand/icons/marks/m4/favicon.ico +0 -0
  118. package/dist/viewer/brand/icons/marks/m4/favicon.svg +14 -0
  119. package/dist/viewer/brand/icons/marks/m4/icon-192.png +0 -0
  120. package/dist/viewer/brand/icons/marks/m4/icon-512.png +0 -0
  121. package/dist/viewer/brand/icons/marks/m4/maskable-icon-512.png +0 -0
  122. package/dist/viewer/brand/icons/marks/m4/site.webmanifest +32 -0
  123. package/dist/viewer/brand/icons/marks/m7/apple-touch-icon.png +0 -0
  124. package/dist/viewer/brand/icons/marks/m7/favicon-32.png +0 -0
  125. package/dist/viewer/brand/icons/marks/m7/favicon.ico +0 -0
  126. package/dist/viewer/brand/icons/marks/m7/favicon.svg +9 -0
  127. package/dist/viewer/brand/icons/marks/m7/icon-192.png +0 -0
  128. package/dist/viewer/brand/icons/marks/m7/icon-512.png +0 -0
  129. package/dist/viewer/brand/icons/marks/m7/maskable-icon-512.png +0 -0
  130. package/dist/viewer/brand/icons/marks/m7/site.webmanifest +32 -0
  131. package/dist/viewer/brand/icons/marks/m8/apple-touch-icon.png +0 -0
  132. package/dist/viewer/brand/icons/marks/m8/favicon-32.png +0 -0
  133. package/dist/viewer/brand/icons/marks/m8/favicon.ico +0 -0
  134. package/dist/viewer/brand/icons/marks/m8/favicon.svg +8 -0
  135. package/dist/viewer/brand/icons/marks/m8/icon-192.png +0 -0
  136. package/dist/viewer/brand/icons/marks/m8/icon-512.png +0 -0
  137. package/dist/viewer/brand/icons/marks/m8/maskable-icon-512.png +0 -0
  138. package/dist/viewer/brand/icons/marks/m8/site.webmanifest +32 -0
  139. package/dist/viewer/brand/icons/maskable-icon-512.png +0 -0
  140. package/dist/viewer/brand/logo/variants/mark-10-dark.svg +4 -0
  141. package/dist/viewer/brand/logo/variants/mark-10.svg +4 -0
  142. package/dist/viewer/brand/logo/variants/mark-4-dark.svg +11 -0
  143. package/dist/viewer/brand/logo/variants/mark-4.svg +11 -0
  144. package/dist/viewer/brand/logo/variants/mark-7-dark.svg +6 -0
  145. package/dist/viewer/brand/logo/variants/mark-7.svg +6 -0
  146. package/dist/viewer/brand/logo/variants/mark-8-dark.svg +5 -0
  147. package/dist/viewer/brand/logo/variants/mark-8.svg +5 -0
  148. package/dist/viewer/brand/logo/variants/wordmark-11-dark.svg +173 -0
  149. package/dist/viewer/brand/logo/variants/wordmark-11.svg +173 -0
  150. package/dist/viewer/brand/logo/variants/wordmark-3-dark.svg +173 -0
  151. package/dist/viewer/brand/logo/variants/wordmark-3.svg +173 -0
  152. package/dist/viewer/favicon.ico +0 -0
  153. package/dist/viewer/index.html +1 -0
  154. package/dist/viewer/site.webmanifest +32 -0
  155. package/docs/actors.md +71 -0
  156. package/docs/business-rules.md +61 -0
  157. package/docs/capabilities.md +81 -0
  158. package/docs/ci.md +19 -58
  159. package/docs/cli-contribute.md +97 -0
  160. package/docs/cli-export.md +44 -0
  161. package/docs/cli-install.md +68 -0
  162. package/docs/cli-lint.md +59 -0
  163. package/docs/cli-open.md +67 -0
  164. package/docs/cli-pull.md +85 -0
  165. package/docs/cli-update.md +46 -0
  166. package/docs/cli-view.md +41 -0
  167. package/docs/cli.md +39 -169
  168. package/docs/domains.md +62 -0
  169. package/docs/experiences.md +70 -0
  170. package/docs/from-a-blueprint.md +46 -0
  171. package/docs/from-an-idea.md +39 -0
  172. package/docs/from-your-repo.md +51 -0
  173. package/docs/index.md +39 -31
  174. package/docs/installation.md +53 -0
  175. package/docs/integration.md +30 -0
  176. package/docs/interfaces.md +71 -0
  177. package/docs/journeys.md +75 -0
  178. package/docs/product-model.md +107 -0
  179. package/docs/product.md +76 -0
  180. package/docs/references.md +107 -0
  181. package/docs/scenarios.md +86 -0
  182. package/docs/screens.md +111 -0
  183. package/docs/skill-businesslens-ideate.md +22 -0
  184. package/docs/skill-businesslens-map.md +25 -0
  185. package/docs/skill-businesslens-verify.md +75 -0
  186. package/docs/skills.md +23 -50
  187. package/docs/the-loop.md +48 -0
  188. package/docs/with-plan-mode.md +24 -0
  189. package/docs/with-sdd.md +40 -0
  190. package/layers/nuxt/report-viewer/README.md +61 -0
  191. package/layers/nuxt/report-viewer/app/assets/product-logo-placeholder.svg +5 -0
  192. package/layers/nuxt/report-viewer/app/assets/report-structure.css +4 -0
  193. package/layers/nuxt/report-viewer/app/components/BusinessLensProductLogo.vue +33 -0
  194. package/layers/nuxt/report-viewer/app/components/BusinessLensReportViewer.vue +267 -0
  195. package/layers/nuxt/report-viewer/app/utils/report-view-model.ts +12 -0
  196. package/layers/nuxt/report-viewer/nuxt.config.ts +12 -0
  197. package/layers/nuxt/theme/app/app.config.ts +14 -0
  198. package/layers/nuxt/theme/app/assets/theme.css +111 -0
  199. package/layers/nuxt/theme/nuxt.config.ts +34 -0
  200. package/layers/nuxt/theme-lab/app/assets/theme-lab.css +177 -0
  201. package/layers/nuxt/theme-lab/app/components/BusinessLensBrand.vue +84 -0
  202. package/layers/nuxt/theme-lab/app/components/BusinessLensThemeLabBackgroundRow.vue +118 -0
  203. package/layers/nuxt/theme-lab/app/components/BusinessLensThemeLabBar.vue +33 -0
  204. package/layers/nuxt/theme-lab/app/components/BusinessLensThemeLabDivider.vue +3 -0
  205. package/layers/nuxt/theme-lab/app/components/BusinessLensThemeLabLogoRow.vue +119 -0
  206. package/layers/nuxt/theme-lab/app/composables/useBusinessLensBackgroundVariant.ts +69 -0
  207. package/layers/nuxt/theme-lab/app/composables/useBusinessLensLogoVariant.ts +78 -0
  208. package/layers/nuxt/theme-lab/app/composables/useBusinessLensThemeLab.ts +27 -0
  209. package/layers/nuxt/theme-lab/app/composables/useBusinessLensThemeLabHead.ts +25 -0
  210. package/layers/nuxt/theme-lab/app/utils/businesslensThemeLabMarks.d.mts +11 -0
  211. package/layers/nuxt/theme-lab/app/utils/businesslensThemeLabMarks.mjs +29 -0
  212. package/layers/nuxt/theme-lab/app/utils/businesslensThemeLabVariants.ts +132 -0
  213. package/layers/nuxt/theme-lab/nuxt.config.ts +28 -0
  214. package/layers/nuxt/theme-lab/public/brand/icons/apple-touch-icon.png +0 -0
  215. package/layers/nuxt/theme-lab/public/brand/icons/businesslens-app-icon.svg +7 -0
  216. package/layers/nuxt/theme-lab/public/brand/icons/businesslens-maskable-icon.svg +7 -0
  217. package/layers/nuxt/theme-lab/public/brand/icons/favicon-32.png +0 -0
  218. package/layers/nuxt/theme-lab/public/brand/icons/favicon.ico +0 -0
  219. package/layers/nuxt/theme-lab/public/brand/icons/favicon.svg +7 -0
  220. package/layers/nuxt/theme-lab/public/brand/icons/icon-1024.png +0 -0
  221. package/layers/nuxt/theme-lab/public/brand/icons/icon-192.png +0 -0
  222. package/layers/nuxt/theme-lab/public/brand/icons/icon-512.png +0 -0
  223. package/layers/nuxt/theme-lab/public/brand/icons/marks/m10/apple-touch-icon.png +0 -0
  224. package/layers/nuxt/theme-lab/public/brand/icons/marks/m10/favicon-32.png +0 -0
  225. package/layers/nuxt/theme-lab/public/brand/icons/marks/m10/favicon.ico +0 -0
  226. package/layers/nuxt/theme-lab/public/brand/icons/marks/m10/favicon.svg +7 -0
  227. package/layers/nuxt/theme-lab/public/brand/icons/marks/m10/icon-192.png +0 -0
  228. package/layers/nuxt/theme-lab/public/brand/icons/marks/m10/icon-512.png +0 -0
  229. package/layers/nuxt/theme-lab/public/brand/icons/marks/m10/maskable-icon-512.png +0 -0
  230. package/layers/nuxt/theme-lab/public/brand/icons/marks/m10/site.webmanifest +32 -0
  231. package/layers/nuxt/theme-lab/public/brand/icons/marks/m4/apple-touch-icon.png +0 -0
  232. package/layers/nuxt/theme-lab/public/brand/icons/marks/m4/favicon-32.png +0 -0
  233. package/layers/nuxt/theme-lab/public/brand/icons/marks/m4/favicon.ico +0 -0
  234. package/layers/nuxt/theme-lab/public/brand/icons/marks/m4/favicon.svg +14 -0
  235. package/layers/nuxt/theme-lab/public/brand/icons/marks/m4/icon-192.png +0 -0
  236. package/layers/nuxt/theme-lab/public/brand/icons/marks/m4/icon-512.png +0 -0
  237. package/layers/nuxt/theme-lab/public/brand/icons/marks/m4/maskable-icon-512.png +0 -0
  238. package/layers/nuxt/theme-lab/public/brand/icons/marks/m4/site.webmanifest +32 -0
  239. package/layers/nuxt/theme-lab/public/brand/icons/marks/m7/apple-touch-icon.png +0 -0
  240. package/layers/nuxt/theme-lab/public/brand/icons/marks/m7/favicon-32.png +0 -0
  241. package/layers/nuxt/theme-lab/public/brand/icons/marks/m7/favicon.ico +0 -0
  242. package/layers/nuxt/theme-lab/public/brand/icons/marks/m7/favicon.svg +9 -0
  243. package/layers/nuxt/theme-lab/public/brand/icons/marks/m7/icon-192.png +0 -0
  244. package/layers/nuxt/theme-lab/public/brand/icons/marks/m7/icon-512.png +0 -0
  245. package/layers/nuxt/theme-lab/public/brand/icons/marks/m7/maskable-icon-512.png +0 -0
  246. package/layers/nuxt/theme-lab/public/brand/icons/marks/m7/site.webmanifest +32 -0
  247. package/layers/nuxt/theme-lab/public/brand/icons/marks/m8/apple-touch-icon.png +0 -0
  248. package/layers/nuxt/theme-lab/public/brand/icons/marks/m8/favicon-32.png +0 -0
  249. package/layers/nuxt/theme-lab/public/brand/icons/marks/m8/favicon.ico +0 -0
  250. package/layers/nuxt/theme-lab/public/brand/icons/marks/m8/favicon.svg +8 -0
  251. package/layers/nuxt/theme-lab/public/brand/icons/marks/m8/icon-192.png +0 -0
  252. package/layers/nuxt/theme-lab/public/brand/icons/marks/m8/icon-512.png +0 -0
  253. package/layers/nuxt/theme-lab/public/brand/icons/marks/m8/maskable-icon-512.png +0 -0
  254. package/layers/nuxt/theme-lab/public/brand/icons/marks/m8/site.webmanifest +32 -0
  255. package/layers/nuxt/theme-lab/public/brand/icons/maskable-icon-512.png +0 -0
  256. package/layers/nuxt/theme-lab/public/brand/logo/variants/mark-10-dark.svg +4 -0
  257. package/layers/nuxt/theme-lab/public/brand/logo/variants/mark-10.svg +4 -0
  258. package/layers/nuxt/theme-lab/public/brand/logo/variants/mark-4-dark.svg +11 -0
  259. package/layers/nuxt/theme-lab/public/brand/logo/variants/mark-4.svg +11 -0
  260. package/layers/nuxt/theme-lab/public/brand/logo/variants/mark-7-dark.svg +6 -0
  261. package/layers/nuxt/theme-lab/public/brand/logo/variants/mark-7.svg +6 -0
  262. package/layers/nuxt/theme-lab/public/brand/logo/variants/mark-8-dark.svg +5 -0
  263. package/layers/nuxt/theme-lab/public/brand/logo/variants/mark-8.svg +5 -0
  264. package/layers/nuxt/theme-lab/public/brand/logo/variants/wordmark-11-dark.svg +173 -0
  265. package/layers/nuxt/theme-lab/public/brand/logo/variants/wordmark-11.svg +173 -0
  266. package/layers/nuxt/theme-lab/public/brand/logo/variants/wordmark-3-dark.svg +173 -0
  267. package/layers/nuxt/theme-lab/public/brand/logo/variants/wordmark-3.svg +173 -0
  268. package/layers/nuxt/theme-lab/public/favicon.ico +0 -0
  269. package/layers/nuxt/theme-lab/public/site.webmanifest +32 -0
  270. package/package.json +81 -4
  271. package/plans/shared-theme-lab.md +136 -0
  272. package/skills/businesslens-ideate/SKILL.md +105 -0
  273. package/skills/businesslens-ideate/agents/openai.yaml +4 -0
  274. package/skills/businesslens-ideate/references/format.md +121 -0
  275. package/skills/businesslens-ideate/references/planning-rubric.md +57 -0
  276. package/skills/businesslens-ideate/scripts/run-businesslens.mjs +121 -0
  277. package/skills/businesslens-map/SKILL.md +97 -0
  278. package/skills/businesslens-map/agents/openai.yaml +4 -0
  279. package/skills/businesslens-map/references/format.md +121 -0
  280. package/skills/businesslens-map/references/mapping-rubric.md +59 -0
  281. package/skills/{businesslens-init → businesslens-map}/scripts/inventory-repository.mjs +9 -14
  282. package/skills/businesslens-map/scripts/run-businesslens.mjs +121 -0
  283. package/skills/businesslens-verify/SKILL.md +159 -0
  284. package/skills/businesslens-verify/agents/openai.yaml +4 -0
  285. package/skills/businesslens-verify/references/build-handoff.md +22 -0
  286. package/skills/businesslens-verify/references/format.md +129 -0
  287. package/skills/businesslens-verify/references/verification-rubric.md +61 -0
  288. package/skills/businesslens-verify/scripts/run-businesslens.mjs +121 -0
  289. package/docs/format.md +0 -264
  290. package/docs/pdd-and-sdd.md +0 -35
  291. package/docs/quickstart.md +0 -71
  292. package/skills/businesslens-deep-dive/SKILL.md +0 -47
  293. package/skills/businesslens-deep-dive/agents/openai.yaml +0 -4
  294. package/skills/businesslens-deep-dive/references/analysis-rubric.md +0 -10
  295. package/skills/businesslens-deep-dive/references/evidence-policy.md +0 -8
  296. package/skills/businesslens-deep-dive/references/format.md +0 -49
  297. package/skills/businesslens-doctor/SKILL.md +0 -42
  298. package/skills/businesslens-doctor/agents/openai.yaml +0 -4
  299. package/skills/businesslens-init/SKILL.md +0 -88
  300. package/skills/businesslens-init/agents/openai.yaml +0 -4
  301. package/skills/businesslens-init/references/analysis-rubric.md +0 -24
  302. package/skills/businesslens-init/references/evidence-policy.md +0 -12
  303. package/skills/businesslens-init/references/format.md +0 -209
  304. package/skills/businesslens-publish/SKILL.md +0 -87
  305. package/skills/businesslens-publish/agents/openai.yaml +0 -4
  306. package/skills/businesslens-publish/scripts/run-businesslens.mjs +0 -62
  307. package/skills/businesslens-sync/SKILL.md +0 -48
  308. package/skills/businesslens-sync/agents/openai.yaml +0 -4
  309. package/skills/businesslens-sync/references/evidence-policy.md +0 -8
  310. package/skills/businesslens-sync/references/format.md +0 -19
  311. package/skills/businesslens-validate/SKILL.md +0 -50
  312. package/skills/businesslens-validate/agents/openai.yaml +0 -4
package/CHANGELOG.md ADDED
@@ -0,0 +1,253 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project are documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
9
+
10
+ ## [0.7.0] - 2026-08-04
11
+
12
+ ### Added
13
+
14
+ - `businesslens view` renders the current Product Model privately on localhost,
15
+ recompiles automatically after debounced source edits, streams revisions to
16
+ open browsers, retains the last valid report during lint errors, writes no
17
+ generated report, and opens no network listener beyond `127.0.0.1`.
18
+ - Root `businesslens` exports for the pure Product Report view-model projection,
19
+ the shared Nuxt report renderer, and a sibling BusinessLens-wide theme Layer,
20
+ so hosts share UI without a second public npm package.
21
+ - An opt-in shared Nuxt theme-lab Layer for auditioning the same backgrounds,
22
+ marks, lockups, and favicon families across the landing site and local report
23
+ viewer without promoting undecided presentation into the stable theme.
24
+ - An optional `.businesslens/logo.svg` Product logo used by the local viewer and
25
+ Blueprint presentation.
26
+ - First-class Interface entities for supported Product interaction contracts,
27
+ with exact Interface–Experience availability across Capabilities, Journeys,
28
+ Screens, Scenarios, and Business Rules.
29
+ - Required Actor classification as `person|system` and `external|internal`.
30
+ - Platform-neutral Screen entities for meaningful web and mobile product views,
31
+ including product-visible information, actions, states, capability boundaries,
32
+ relationships, and optional public routes or deep links.
33
+ - Universal References on every semantic entity, with independent artifact
34
+ kinds (`code|spec|proposal|doc|adr|visual|research`) and attachment roles
35
+ (`intent|implementation|context`). Referenced content stays outside the
36
+ Product Model and never replaces its prose or proves alignment.
37
+ - `businesslens-map` for initial adoption, scoped remapping, and deliberate
38
+ Product Model coverage expansion without executing target code.
39
+ - `businesslens-verify` as the single post-build invocation. It classifies
40
+ model/code gaps, negotiates only authority decisions, automatically runs
41
+ internal intent-resolution or scoped-mapping phases, hands code corrections
42
+ to a harness-injected builder, and re-verifies until aligned or blocked.
43
+ - `report only` verification mode, an explicit missing-builder handoff, and an
44
+ unchanged-gap stopping rule. Verification findings are re-derived rather than
45
+ persisted in a receipt or ledger.
46
+ - Accepted decisions covering [repository-owned files](./adr/0004-write-nothing-outside-businesslens.md),
47
+ [unified References](./adr/0008-unified-references-and-portable-reports.md),
48
+ [non-persisted verification](./adr/0006-verification-is-not-persisted.md),
49
+ and the [three-skill boundary](./adr/0007-three-skills-and-one-verification-loop.md).
50
+
51
+ ### Changed
52
+
53
+ - The CLI now uses a real hierarchical command parser with concise root help,
54
+ command-specific options, nested Blueprint help, standard `-h`/`-V` flags,
55
+ strict option ownership, and usage validation before command execution.
56
+ - `-c, --cwd` now always means "run from this directory". A model directly in the
57
+ current directory wins over the Git-root model whether or not `--cwd .` was
58
+ typed explicitly.
59
+ - **Breaking.** A catalog Blueprint has no separate `blueprint.yaml`. Product
60
+ ID, title, summary, description, category, tags, authors, license, and report
61
+ content come from `product.md`; visual identity comes only from
62
+ `.businesslens/logo.svg`, and catalog operational state remains outside the
63
+ Product Model.
64
+ - **Breaking.** Product Report v7 is the only accepted report contract. It
65
+ carries portable Product identity and attribution, uses `summary` for the
66
+ short Product description, and renames computed entity totals to `counts`.
67
+ - **Breaking.** `blueprint contribute` no longer accepts `--slug`; the Product
68
+ ID is the canonical contribution directory, branch suffix, catalog slug, and
69
+ pull name.
70
+
71
+ - **Breaking.** Folder schema 3 and Product Report v7 are now the only accepted
72
+ formats. Schema 1/2, Product Report v4/v5/v6, and their compatibility paths are
73
+ removed rather than migrated.
74
+ - **Breaking.** Feature is renamed Capability throughout the folder format,
75
+ parser, SDK, CLI, skills, docs, fixtures, and Blueprint. `features/` is
76
+ rejected; Capabilities live in `capabilities/`.
77
+ - **Breaking.** Experiences now declare their Interfaces and no longer carry
78
+ `exit`. Journeys use Capabilities and exact availability, may cross Domains,
79
+ and no longer declare one Domain. Business Rules exclusively own Rule scope.
80
+ - Domains are optional Capability groupings. Screens remain optional and now
81
+ use exact availability without embedding visual evidence.
82
+ - The bundled Content & Feed Reader Blueprint now demonstrates the complete
83
+ model, including cross-platform Screens, product states, mobile deep links,
84
+ and external visual and research references.
85
+ - **Breaking.** The public skill set is exactly `businesslens-map`,
86
+ `businesslens-ideate`, and `businesslens-verify`. Ideate also handles a narrow
87
+ already-decided verification handoff without reopening broad brainstorming.
88
+ - **Breaking.** `businesslens validate` is now `businesslens lint`. The old
89
+ spelling is refused with exit code 2 and a replacement message; it is not an
90
+ alias. Lint output contains only `ok`, `errors`, `warnings`, and `counts`—no
91
+ branch situation or authority inference.
92
+ - **Breaking.** `references` replaces both `codeRefs` and `links`. Reference
93
+ records are strict, duplicate targets fail lint, code targets require tracked
94
+ files, and missing local non-code targets warn.
95
+ - `coverage.status` now describes model breadth only: `draft` while the model
96
+ itself is under review, `partial` with known unmapped areas, and `complete`
97
+ when intended product scope is modeled. A complete model may have zero
98
+ References.
99
+ - **Breaking.** Product Report v7 declares a `workspace` or `portable` Reference
100
+ profile. Portable projection replaces evidence-redaction terminology and
101
+ keeps only HTTP(S) intent/context References.
102
+ - **Breaking.** Coverage no longer contains counts, mapped entities, or a
103
+ redaction flag. Entity totals live only in Counts; Coverage is independent
104
+ from References. Blueprint open and pull preserve model breadth while
105
+ removing repository-local Coverage source areas.
106
+ - Every model creation path carries canonical orientation in
107
+ `.businesslens/README.md`. BusinessLens still never writes target-root
108
+ `AGENTS.md`, `CLAUDE.md`, or README files.
109
+ - Canonical report expansion now owns that orientation file for `open`, `pull`,
110
+ and `contribute`; Blueprint contributions accept every valid model-breadth
111
+ Coverage status and publish no source-repository provenance.
112
+ - Lint now requires the complete committed model shell (`README.md` plus a
113
+ `.gitignore` covering `build/` and `cache/`), and CLI argument, provider,
114
+ scope, slug, and catalog-origin errors consistently exit with usage code 2.
115
+ - Documentation now teaches three starting doors and one ongoing loop:
116
+ `ideate → injected build → verify (including final lint) → merge`. Map is explicitly not a
117
+ daily maintenance command, and lint is explicitly not semantic verification.
118
+
119
+ ### Fixed
120
+
121
+ - Product logos are parsed as namespace-aware XML and restricted to a static SVG
122
+ allowlist, closing namespace-prefix and escaped-reference paths around the
123
+ active-content checks. Logo responses from the local viewer also carry a
124
+ script-free sandbox CSP.
125
+ - `blueprint pull` retrieves the optional logo from the selected catalog's
126
+ same-origin endpoint, so custom catalogs and commit-pinned reports cannot be
127
+ paired with the current logo from the official PDD `main` branch.
128
+ - Releases tag an already prepared package and changelog exactly once; the tag
129
+ push is now the single automatic publication trigger.
130
+
131
+ ### Removed
132
+
133
+ - `businesslens-init`, `businesslens-sync`, `businesslens-doctor`, and
134
+ `businesslens-deep-dive`. Their useful scopes now belong to map or verify.
135
+ - The `businesslens-contribute` skill. Catalog contribution remains the
136
+ deterministic `businesslens blueprint contribute` CLI command.
137
+ - Git branch-state routing from lint and the internal `branch-state` module.
138
+
139
+ ## [0.6.0] - 2026-07-31
140
+
141
+ BusinessLens consolidates onto one site. The Platform is retired; the Blueprint
142
+ catalog moves to `businesslens.io` and becomes anonymous to browse and to pull.
143
+
144
+ The previous published npm version is `0.5.0`. An intermediate draft of this
145
+ release included authenticated Platform workflows, but it was never published;
146
+ the final `0.6.0` replaces those workflows with the anonymous catalog and the
147
+ pull-request contribution flow described below.
148
+
149
+ ### Added
150
+
151
+ - `businesslens open <report>` expands a local Product Report back into a
152
+ canonical `.businesslens/` Product Model, making `export` and `open`
153
+ semantic inverses.
154
+ - `businesslens pull <blueprint-name>` anonymously retrieves a Blueprint and
155
+ expands it without a user-facing `report.json` download. It writes a
156
+ greenfield block into `AGENTS.md` and sends
157
+ `user-agent: businesslens/<version>` to the catalog.
158
+ - **Features** and **business rules** are first-class product-model entities
159
+ with their own directories, IDs, relationships, and validation rules.
160
+ - A `businesslens/report` library entry point exporting the Product Report
161
+ schema, its cross-entity validator, and the canonical digest. It depends only
162
+ on `zod` and never loads the CLI.
163
+ - `redactSourceEvidence` in the `businesslens/report` contract strips every
164
+ repository reference from a report before it leaves its owning workspace —
165
+ `codeRefs`, repository `entryPoints`, repository-relative `links`, and
166
+ `coverage.sourceAreas`. Product-facing routes and HTTP(S) URLs are kept.
167
+ `coverage.mapped` remains a model-quality signal, and
168
+ `coverage.evidenceRedacted` records both that those counts describe the
169
+ origin repository and that validation must reject any repository path still
170
+ present.
171
+ - `businesslens-plan` and `businesslens-verify` skills for planning in the
172
+ Product Model and verifying implementation evidence before merge.
173
+ - `businesslens-implement` builds the software a Product Model describes, with
174
+ its scenarios as the acceptance contract.
175
+ - `businesslens-ideate` proposes candidate product directions as a shortlist.
176
+ It is the only skill that never writes to the model.
177
+ - Draft greenfield product models, with missing-evidence warnings during
178
+ planning and support for exporting planned Product Model Versions before
179
+ implementation is complete.
180
+ - `blueprints/` — the Blueprint source layout, with a `blueprint.yaml` manifest
181
+ and MIT-licensed content.
182
+ - `blueprints:check`, wired into `verify`, parses every manifest, builds every
183
+ Blueprint, and rejects any that carries source evidence. It does not trust
184
+ `contribute`, because anyone can open a pull request by hand.
185
+ - `blueprints:publish` pushes built Blueprints to the catalog.
186
+ - `resolveModelRoot` allows the model to live outside the Git root or without a
187
+ repository, adding general monorepo support.
188
+ - A structured open-source documentation section with tutorials, individual
189
+ skill pages, and deterministic navigation frontmatter.
190
+ - `docs/terminology.md` defines every product-model entity and separates the
191
+ terms that are easy to confuse.
192
+
193
+ ### Changed
194
+
195
+ - **Breaking.** `businesslens publish` is now `businesslens contribute`, and
196
+ opens a pull request against `businesslens/pdd` through the `gh` CLI rather
197
+ than submitting to a Platform. No API key is involved. The model in the pull
198
+ request is regenerated from a redacted report, so it carries no source paths
199
+ and is byte-identical to what `pull` produces.
200
+ - **Breaking.** `businesslens build` is now `businesslens export`. `build` still
201
+ works and warns; it will be removed after 0.6.x.
202
+ - `export` emits a source-free **Product Report v4** at
203
+ `.businesslens/build/report.json`, replacing the portable v3 `project.json`.
204
+ The report carries no repository URL, commit, branch, or workspace metadata.
205
+ - **Breaking.** `.businesslens/` is now called the **Product Model** throughout
206
+ the CLI, docs, and skills. "Product map" is reserved for a visual or
207
+ navigable view of that model. Draft coverage is an evidence state and no
208
+ longer implies a reusable Blueprint.
209
+ - Product Report validation rejects content that cannot round-trip into
210
+ canonical Markdown and inconsistent mapped-coverage counts. Product Model
211
+ validation continues to reject non-draft behavioral claims without evidence.
212
+ - `--catalog` defaults to `https://businesslens.io` and accepts any origin.
213
+ Precedence is `--catalog`, `BUSINESSLENS_CATALOG_URL`, then the default.
214
+ - `businesslens-publish` is now `businesslens-contribute`.
215
+ - Skill runners pin the CLI to the version the skills were installed from rather
216
+ than resolving the latest published version, which could validate a model
217
+ against an older published format.
218
+
219
+ ### Fixed
220
+
221
+ - Report expansion is idempotent. `open` appended its coverage limitation
222
+ unconditionally, so every open/pull cycle gained another copy and broke the
223
+ guarantee that a pulled Blueprint matches what the catalog holds.
224
+ - Docs dispatch sends an immutable commit-pinned revision to the landing
225
+ pipeline ([#2](https://github.com/businesslens/pdd/pull/2)).
226
+
227
+ ## [0.5.0] - 2026-07-26
228
+
229
+ ### Added
230
+
231
+ - `build` and `publish` CLI commands, the `businesslens-publish` skill with its
232
+ isolated runner, and the CI publishing recipe
233
+ ([#1](https://github.com/businesslens/pdd/pull/1)).
234
+
235
+ ## [0.4.0] - 2026-07-26
236
+
237
+ Initial public launch of the repository.
238
+
239
+ ### Added
240
+
241
+ - CLI: `install`, `update`, and `validate` commands.
242
+ - Agent skills: `businesslens-init`, `businesslens-sync`,
243
+ `businesslens-deep-dive`, `businesslens-validate`, and
244
+ `businesslens-doctor`.
245
+ - The `.businesslens/` product-map format and its contract in
246
+ `docs/format.md`.
247
+ - Claude plugin manifest and marketplace entry.
248
+
249
+ [Unreleased]: https://github.com/businesslens/pdd/compare/v0.7.0...HEAD
250
+ [0.7.0]: https://github.com/businesslens/pdd/compare/v0.6.0...v0.7.0
251
+ [0.6.0]: https://github.com/businesslens/pdd/compare/v0.5.0...v0.6.0
252
+ [0.5.0]: https://github.com/businesslens/pdd/compare/v0.4.0...v0.5.0
253
+ [0.4.0]: https://github.com/businesslens/pdd/releases/tag/v0.4.0
package/README.md CHANGED
@@ -1,18 +1,29 @@
1
1
  # BusinessLens
2
2
 
3
- **Product-Driven Design for coding agents.** BusinessLens builds a
4
- Git-tracked product map in `.businesslens/`: who the product serves, what they
5
- accomplish, and where the code proves it.
3
+ [![npm](https://img.shields.io/npm/v/businesslens)](https://www.npmjs.com/package/businesslens)
4
+ [![Check](https://github.com/businesslens/pdd/actions/workflows/check.yml/badge.svg)](https://github.com/businesslens/pdd/actions/workflows/check.yml)
5
+ [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](./LICENSE)
6
6
 
7
- The map is Markdown, reviewable in pull requests, and useful without a hosted
8
- service.
7
+ **Product-Driven Development for coding agents.** BusinessLens keeps intended
8
+ product behavior in a Git-tracked `.businesslens/` Product Model: who the
9
+ product serves, what they accomplish, and which rules must remain true.
10
+
11
+ The model is Markdown, reviewable in pull requests, and useful without a hosted
12
+ service. `businesslens lint` checks its structure. The `businesslens-verify`
13
+ skill performs the separate semantic comparison with code and owns the
14
+ resolution loop.
9
15
 
10
16
  ```text
11
17
  .businesslens/
18
+ ├── README.md
12
19
  ├── product.md
13
20
  ├── actors/
21
+ ├── interfaces/
14
22
  ├── experiences/
15
- ├── domains/
23
+ ├── screens/ # optional product views
24
+ ├── domains/ # optional organization
25
+ ├── capabilities/
26
+ ├── business-rules/
16
27
  ├── journeys/<id>/journey.md
17
28
  │ └── scenarios/<id>.md
18
29
  └── coverage.md
@@ -20,129 +31,123 @@ service.
20
31
 
21
32
  ## Getting started
22
33
 
23
- ### 1. Install the skills
24
-
25
- Run this in the repository you want to map:
34
+ Install the skills:
26
35
 
27
36
  ```bash
28
- npx businesslens@latest install
37
+ npx businesslens install
29
38
  ```
30
39
 
31
- The installer detects supported AI harnesses, lets you customize the
32
- selection, asks for project or global scope, and installs only the
33
- BusinessLens skills.
34
-
35
- For automated setup:
40
+ Then choose one starting door:
36
41
 
37
- ```bash
38
- npx businesslens@latest install \
39
- --providers claude,codex,cursor \
40
- --scope project \
41
- --yes
42
- ```
42
+ - **Existing product** — `/businesslens-map` creates the model from established
43
+ repository behavior.
44
+ - **Blank repository** — `/businesslens-ideate` decides and authors the product
45
+ before implementation.
46
+ - **Blueprint** — `npx businesslens blueprint pull <name>` opens a
47
+ reviewed starting model.
43
48
 
44
- ### 2. Build the map in your AI harness
49
+ Codex users invoke skills with `$`, for example `$businesslens-map`.
45
50
 
46
- Invoke the initialization skill:
51
+ ## The ongoing loop
47
52
 
48
53
  ```text
49
- /businesslens-init
54
+ /businesslens-ideate guest checkout
55
+ ↓ approved Product Model delta
56
+ your injected plan / build flow
57
+ ↓ implementation
58
+ /businesslens-verify this branch
59
+ ↓ automatically resolve gaps, re-check, and run final lint
60
+ merge
50
61
  ```
51
62
 
52
- Codex users can invoke the same skill as `$businesslens-init`. The skill
53
- inspects the repository without executing its application, authors the full
54
- map, installs the managed `AGENTS.md` guidance, and validates the result.
55
-
56
- ### 3. Review and commit
63
+ You invoke verify once. When it finds a gap, it groups the authority decision
64
+ and routes automatically: update approved model meaning through its internal
65
+ ideation protocol, map an absent established area, or hand an acceptance packet
66
+ to the builder supplied by your harness. It re-verifies after every change and
67
+ stops explicitly when blocked. Its completion report includes final structural
68
+ lint, so no second skill or command is required to finish the loop. Use `report
69
+ only` to disable all writes and delegation.
57
70
 
58
- Review `.businesslens/`, then commit its authored files. Generated cache files
59
- stay ignored.
71
+ `map` is not daily maintenance. Use it for adoption, a deliberately untrusted
72
+ area, or coverage expansion. Use `verify` after changes, refactors, suspected
73
+ drift, before release, or for a named/full current-state audit.
60
74
 
61
- ## Terminal or agent?
62
-
63
- BusinessLens has two deliberate surfaces:
75
+ ## Terminal and agent surfaces
64
76
 
65
77
  | Where | Command | Purpose |
66
78
  | --- | --- | --- |
67
- | Terminal | `npx businesslens install` | Install the agent skills |
79
+ | Terminal | `npx businesslens install` | Install the three skills |
68
80
  | Terminal | `npx businesslens update` | Refresh managed skill installations |
69
- | Terminal | `npx businesslens validate` | Deterministically validate the map |
70
- | Terminal | `npx businesslens build` | Compile the map into the portable project document |
71
- | Terminal | `npx businesslens publish` | Submit the map to the platform as a commit-pinned snapshot |
72
- | AI harness | `businesslens-init` | Build the initial map |
73
- | AI harness | `businesslens-sync` | Update the map after behavior changes |
74
- | AI harness | `businesslens-deep-dive` | Expand one journey or experience |
75
- | AI harness | `businesslens-validate` | Validate the map and explain every result |
76
- | AI harness | `businesslens-doctor` | Diagnose validation, drift, and coverage |
77
- | AI harness | `businesslens-publish` | Publish the map to the platform on explicit request |
78
-
79
- The installer never creates `.businesslens/` or modifies `AGENTS.md`. Those
80
- require repository analysis and belong to the initialization skill.
81
-
82
- ## Skills
83
-
84
- | Skill | Use it when |
85
- | --- | --- |
86
- | `businesslens-init` | Adopting BusinessLens or rebuilding an incomplete map |
87
- | `businesslens-sync` | Code changes affected product behavior |
88
- | `businesslens-deep-dive` | One journey or experience needs exhaustive coverage |
89
- | `businesslens-validate` | The map needs a read-only deterministic check |
90
- | `businesslens-doctor` | The map fails validation, looks stale, or needs a health report |
91
- | `businesslens-publish` | The user explicitly wants the map on the platform |
92
-
93
- Every skill is self-contained and follows the open Agent Skills folder format.
94
- The CLI currently supports Claude Code, Codex, Cursor, Gemini CLI, and GitHub
95
- Copilot installation paths.
96
-
97
- `businesslens-validate` is the read-only agent interface to the deterministic
98
- CLI validator. `businesslens-doctor` goes further: it investigates drift,
99
- coverage, and hygiene, and can repair problems when explicitly requested.
100
-
101
- Claude Code plugin users may alternatively install from this repository's
102
- marketplace manifest. The standalone CLI remains the primary installation
103
- experience.
104
-
105
- ## Keep the map current
106
-
107
- 1. Before changing behavior, read the relevant experiences, journeys, and
108
- scenarios.
109
- 2. Build against the repository's SDD change when one exists.
110
- 3. Invoke `businesslens-sync` after behavior changes.
111
- 4. Run `npx businesslens validate`.
112
-
113
- PDD records what **is**. OpenSpec, spec-kit, and other SDD systems prescribe
114
- what **will change**. BusinessLens links that intent without copying it. See
115
- [PDD and SDD](./docs/pdd-and-sdd.md).
116
-
117
- ## Updating the skills
118
-
119
- ```bash
120
- npx businesslens@latest update
121
- ```
122
-
123
- Update discovers BusinessLens-managed installations through ownership markers
124
- and refreshes only those skill directories. It does not touch `.businesslens/`
125
- or `AGENTS.md`.
81
+ | Terminal | `npx businesslens lint` | Check Product Model structure; no semantic claim |
82
+ | Terminal | `npx businesslens view` | View the current Product Model privately on localhost |
83
+ | Terminal | `npx businesslens blueprint export` | Compile the model into a source-free Blueprint |
84
+ | Terminal | `npx businesslens blueprint pull <name>` | Pull a catalog Blueprint |
85
+ | Terminal | `npx businesslens blueprint open <report>` | Expand a local Blueprint |
86
+ | Terminal | `npx businesslens blueprint contribute` | Propose a Blueprint by pull request |
87
+ | AI harness | `businesslens-map` | Map established repository behavior |
88
+ | AI harness | `businesslens-ideate` | Decide intended behavior and write approved meaning |
89
+ | AI harness | `businesslens-verify` | Verify and automatically resolve model/code gaps |
90
+
91
+ Catalog contribution stays in the CLI; there is no contribution skill.
92
+
93
+ ## Product Model semantics
94
+
95
+ - `references` optionally attach intent, implementation, or context artifacts
96
+ to any semantic entity. They are navigation and supporting material, not
97
+ proof or verification receipts.
98
+ - `coverage.status` describes model breadth: `draft` while the model itself is
99
+ under review, `partial` with known unmapped areas, and `complete` when the
100
+ intended product scope is modeled.
101
+ - A complete model may contain zero References.
102
+ - A Product may expose several Interfaces—such as web, mobile, CLI, and a
103
+ supported API—without being classified as one of those delivery forms.
104
+ - Experiences are coherent usage contexts across Interfaces; exact
105
+ Interface–Experience availability says where behavior is promised.
106
+ - Domains are optional Capability groupings, and Journeys may cross them.
107
+ - Screens are optional platform-neutral product views. Screenshots and other
108
+ visuals remain external References, not model assets or proof.
109
+ - `lint` checks format, required content, relationships, Reference grammar, and
110
+ tracked code-reference paths. `verify` checks meaning against current code.
111
+
112
+ Every model creation path writes `.businesslens/README.md`. BusinessLens never
113
+ writes target `AGENTS.md`, `CLAUDE.md`, or root README files.
126
114
 
127
115
  ## Documentation
128
116
 
129
- - [Introduction](./docs/index.md)
130
- - [Quickstart](./docs/quickstart.md)
131
- - [`.businesslens/` format](./docs/format.md)
132
- - [CLI reference](./docs/cli.md)
133
- - [Skills reference](./docs/skills.md)
134
- - [CI validation and publishing](./docs/ci.md)
135
- - [PDD and SDD](./docs/pdd-and-sdd.md)
117
+ - [Introduction](./docs/index.md) · [Installation](./docs/installation.md) ·
118
+ [Development loop](./docs/the-loop.md)
119
+ - Start [from your repo](./docs/from-your-repo.md),
120
+ [from a Blueprint](./docs/from-a-blueprint.md), or
121
+ [from an idea](./docs/from-an-idea.md)
122
+ - [Product Model](./docs/product-model.md) ·
123
+ [References](./docs/references.md)
124
+ - [Skills](./docs/skills.md) · [CLI](./docs/cli.md) ·
125
+ [CI/CD](./docs/ci.md)
126
+ - [Format contract](./spec/format.md)
127
+
128
+ ## Nuxt layers
129
+
130
+ The package also exposes separately composable Nuxt layers:
131
+
132
+ - `businesslens/nuxt/report-viewer` renders a Product Report without owning its
133
+ host navigation or page shell.
134
+ - `businesslens/nuxt/theme` provides the stable BusinessLens palette, type, and
135
+ semantic UI foundation.
136
+ - `businesslens/nuxt/theme-lab` extends that stable theme with the shared,
137
+ opt-in background and brand experiments used by the landing site and local
138
+ report viewer. Its ownership and promotion rules are recorded in
139
+ [`plans/shared-theme-lab.md`](./plans/shared-theme-lab.md).
136
140
 
137
141
  ## Safety
138
142
 
139
- - Skills inspect target repositories statically; they do not run target code.
140
- - Installation refuses to overwrite unowned `businesslens-*` directories
141
- unless `--force` is explicit.
142
- - Updates replace only artifacts marked as BusinessLens-managed.
143
- - No platform connection or publishing occurs during installation or mapping;
144
- publishing happens only through the explicit `publish` command or the
145
- `businesslens-publish` skill.
143
+ - BusinessLens analysis phases inspect untrusted repositories without executing
144
+ target code. A separately injected builder may run normal project checks under
145
+ its own permissions.
146
+ - Installation refuses to overwrite unowned skill directories unless `--force`
147
+ is explicit; update touches only marked installations.
148
+ - Nothing submits model data except the explicit
149
+ `businesslens blueprint contribute` command.
150
+ - No command publishes, tags, or pushes implicitly.
146
151
 
147
152
  ## License
148
153
 
package/dist/cli.d.ts ADDED
@@ -0,0 +1 @@
1
+ export { };