@warpgogol/werkstatt-shared 0.14.0 → 0.15.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 (437) hide show
  1. package/README.md +31 -13
  2. package/README.uk.md +25 -15
  3. package/package.json +519 -762
  4. package/src/{share/agent → agent}/ard-catalog.ts +6 -1
  5. package/src/{share/agent → agent}/dns-aid.test.ts +2 -2
  6. package/src/{share/agent → agent}/manifest.ts +15 -1
  7. package/src/{share/agent → agent}/search.ts +6 -1
  8. package/src/{share → agent}/tests/api-catalog.test.ts +2 -2
  9. package/src/{share → agent}/tests/ard-catalog.test.ts +2 -2
  10. package/src/{share → agent}/tests/capability.test.ts +1 -1
  11. package/src/{share → agent}/tests/fleet-catalog.test.ts +1 -1
  12. package/src/{share → agent}/tests/knowledge.test.ts +2 -2
  13. package/src/{share → agent}/tests/manifest.test.ts +1 -1
  14. package/src/{share → agent}/tests/mcp-card.test.ts +2 -2
  15. package/src/agent/tests/omit-empty.test.ts +33 -0
  16. package/src/{share → agent}/tests/openapi.test.ts +2 -2
  17. package/src/{share → agent}/tests/proof.test.ts +1 -1
  18. package/src/{share → attribution}/material-credits.ts +4 -4
  19. package/src/{share → checks}/check-hints.ts +6 -1
  20. package/src/checks/index.ts +4 -1
  21. package/src/checks/lib/astro-site-url.ts +6 -1
  22. package/src/checks/lib/i18n.ts +14 -0
  23. package/src/checks/result-helpers.ts +22 -5
  24. package/src/checks/tests/remediation-auto-populate.test.ts +83 -0
  25. package/src/{share → client-scripts}/counter-utils.ts +6 -2
  26. package/src/{share/scripts → client-scripts}/external-link-qr.ts +11 -16
  27. package/src/{share/scripts → client-scripts}/external-links.ts +12 -1
  28. package/src/{share/scripts → client-scripts}/gsap-counter.ts +8 -3
  29. package/src/client-scripts/index.ts +35 -0
  30. package/src/{share/scripts → client-scripts}/inline-number-animation.ts +1 -1
  31. package/src/{share/scripts → client-scripts}/lenis.ts +6 -1
  32. package/src/{share/scripts → client-scripts}/lordicon.ts +6 -1
  33. package/src/{share/scripts → client-scripts}/orchestrator.ts +10 -1
  34. package/src/{share/scripts → client-scripts}/scheduler.ts +6 -1
  35. package/src/client-scripts/scroll-spy.ts +106 -0
  36. package/src/client-scripts/tests/external-link-qr.test.ts +8 -0
  37. package/src/client-scripts/tests/external-links.test.ts +25 -0
  38. package/src/client-scripts/tests/gsap-counter.test.ts +8 -0
  39. package/src/client-scripts/tests/gsap-mountain-journey.test.ts +8 -0
  40. package/src/client-scripts/tests/gsap-parallax.test.ts +8 -0
  41. package/src/client-scripts/tests/gsap-reveal.test.ts +8 -0
  42. package/src/client-scripts/tests/gsap-stagger.test.ts +8 -0
  43. package/src/client-scripts/tests/inline-number-animation.test.ts +8 -0
  44. package/src/client-scripts/tests/lenis.test.ts +8 -0
  45. package/src/client-scripts/tests/live-photos.test.ts +8 -0
  46. package/src/client-scripts/tests/lordicon.test.ts +8 -0
  47. package/src/client-scripts/tests/orchestrator.test.ts +47 -0
  48. package/src/client-scripts/tests/scheduler.test.ts +23 -0
  49. package/src/client-scripts/tests/scroll-spy.test.ts +204 -0
  50. package/src/{share/scripts → client-scripts/tests}/video-player.test.ts +51 -31
  51. package/src/component/contracts.ts +206 -0
  52. package/src/component/index.ts +11 -0
  53. package/src/{share → content}/content-reference.ts +3 -3
  54. package/src/{share/content → content}/entity-id.ts +6 -3
  55. package/src/content/index.ts +3 -0
  56. package/src/{share/content → content}/merge.ts +6 -1
  57. package/src/content/system-manifest.test.ts +107 -0
  58. package/src/content/system-manifest.ts +12 -94
  59. package/src/{share → content}/tests/resolve-field-path.test.ts +1 -1
  60. package/src/{share → content}/tests/substitute-deep.test.ts +1 -1
  61. package/src/content-discipline/index.ts +19 -0
  62. package/src/{share/content-discipline → content-discipline}/parsers.ts +2 -2
  63. package/src/{share/env.d.ts → env.d.ts} +6 -3
  64. package/src/fingerprint/canonical-json.ts +731 -0
  65. package/src/fingerprint/index.ts +12 -0
  66. package/src/fingerprint/primitives.ts +72 -0
  67. package/src/{share/i18n → i18n}/localization.ts +6 -2
  68. package/src/integration/adapters.ts +10 -71
  69. package/src/integration/dispatch.ts +1 -1
  70. package/src/integration/funnel.ts +6 -1
  71. package/src/integration/index.ts +101 -4
  72. package/src/integration/lagebild-destination-adapter.ts +108 -0
  73. package/src/integration/lagebild-ingress.ts +7 -12
  74. package/src/integration/orchestration.ts +11 -10
  75. package/src/integration/tests/deliver-event.test.ts +1 -1
  76. package/src/integration/tests/dispatch.test.ts +4 -4
  77. package/src/integration/tests/hub-runtime.test.ts +22 -14
  78. package/src/integration/vitest.config.ts +8 -0
  79. package/src/kernel/desired-state.ts +227 -0
  80. package/src/kernel/diagnostic.ts +289 -0
  81. package/src/kernel/fs-atomic.ts +131 -0
  82. package/src/kernel/index.ts +15 -0
  83. package/src/kernel/tests/fs-atomic.test.ts +150 -0
  84. package/src/kernel/tests/workspace-io.test.ts +187 -0
  85. package/src/kernel/types.ts +459 -0
  86. package/src/kernel/workspace-io.ts +248 -0
  87. package/src/{share → knowledge}/tests/claim.test.ts +1 -1
  88. package/src/{share → knowledge}/tests/derivation.test.ts +1 -1
  89. package/src/{share → knowledge}/tests/freshness.test.ts +1 -1
  90. package/src/{share → knowledge}/tests/ledger.test.ts +1 -1
  91. package/src/{share → knowledge}/tests/plan.test.ts +1 -1
  92. package/src/{share → knowledge}/tests/source.test.ts +1 -1
  93. package/src/legal/index.ts +15 -0
  94. package/src/{share/middleware → middleware}/access-protection.ts +8 -8
  95. package/src/{share → node}/dev-props-validator.ts +6 -1
  96. package/src/{share → node}/import-scan.ts +23 -3
  97. package/src/{share → node}/semantic/derived-prices-loader.ts +4 -2
  98. package/src/{share → node}/semantic/markdown-twin-provenance.ts +1 -1
  99. package/src/node/tests/derived-prices-loader.test.ts +59 -0
  100. package/src/node/tests/markdown-twin-provenance.test.ts +152 -0
  101. package/src/observability/env-resolver.ts +6 -1
  102. package/src/observability/index.ts +6 -1
  103. package/src/observability/otlp-converter.ts +6 -1
  104. package/src/observability/otlp-transport.ts +6 -1
  105. package/src/observability/pusher.ts +6 -1
  106. package/src/observability/redact.ts +6 -1
  107. package/src/observability/typed-refs.ts +6 -2
  108. package/src/observability/vitest.config.ts +1 -0
  109. package/src/{share → offers}/formula-eval.ts +3 -3
  110. package/src/{share → offers}/tests/formula-eval.test.ts +2 -2
  111. package/src/onboarding/index.ts +1 -0
  112. package/src/{share → onboarding}/tests/onboarding-yaml.test.ts +1 -1
  113. package/src/ontology/archetype-registry.ts +6 -1
  114. package/src/ontology/archetypes/index.json +33 -1
  115. package/src/ontology/archetypes/index.yaml +27 -1
  116. package/src/ontology/archetypes/sections/entity-grid.yaml +46 -0
  117. package/src/ontology/archetypes/sections/exit-diagram.yaml +43 -0
  118. package/src/ontology/biome-token-projection.ts +6 -1
  119. package/src/ontology/cosmic/index.ts +6 -1
  120. package/src/ontology/cosmic/moon-catalog.ts +6 -1
  121. package/src/ontology/cosmic/planet-catalog.ts +6 -1
  122. package/src/ontology/cosmic/star-catalog.ts +6 -1
  123. package/src/ontology/enums.ts +6 -1
  124. package/src/ontology/external-surfaces/index.ts +1 -1
  125. package/src/ontology/index.ts +6 -2
  126. package/src/ontology/manifest.ts +26 -4
  127. package/src/ontology/operations/artifact-store.ts +45 -0
  128. package/src/ontology/operations/dht.ts +98 -0
  129. package/src/ontology/operations/handoff.ts +92 -0
  130. package/src/ontology/operations/index.ts +187 -1
  131. package/src/ontology/operations/leitstand.ts +99 -0
  132. package/src/ontology/operations/materialization.ts +90 -0
  133. package/src/ontology/operations/mission.ts +111 -0
  134. package/src/ontology/operations/naming-policy.ts +132 -0
  135. package/src/ontology/operations/notausgang.ts +64 -0
  136. package/src/ontology/operations/release.ts +121 -0
  137. package/src/ontology/operations/sternsystem.ts +192 -0
  138. package/src/ontology/operations/werkstatt.ts +48 -0
  139. package/src/ontology/schemas/biome.ts +7 -2
  140. package/src/ontology/schemas/capability.ts +1 -1
  141. package/src/ontology/schemas/constellation.ts +6 -1
  142. package/src/ontology/schemas/index.ts +6 -2
  143. package/src/ontology/schemas/manifest-resolver.ts +6 -1
  144. package/src/ontology/schemas/page-entry.ts +9 -5
  145. package/src/ontology/schemas/system/growth.ts +6 -1
  146. package/src/ontology/schemas/system/manifest.ts +40 -1
  147. package/src/ontology/schemas/system/page-output.ts +7 -6
  148. package/src/ontology/schemas/system/tests/growth.test.ts +22 -0
  149. package/src/ontology/schemas/system/tests/integrations.test.ts +12 -0
  150. package/src/ontology/schemas/system/tests/manifest.test.ts +22 -0
  151. package/src/ontology/schemas/system/tests/page-output.test.ts +13 -0
  152. package/src/ontology/schemas/system/tests/release.test.ts +22 -0
  153. package/src/ontology/schemas/system/tests/text.test.ts +18 -0
  154. package/src/ontology/schemas/system/tests/verification.test.ts +12 -0
  155. package/src/ontology/schemas/system/text.ts +15 -0
  156. package/src/ontology/schemas/system.ts +6 -2
  157. package/src/ontology/schemas/tests/biome.test.ts +19 -0
  158. package/src/ontology/schemas/tests/capability.test.ts +22 -0
  159. package/src/ontology/schemas/tests/constellation.test.ts +22 -0
  160. package/src/ontology/schemas/tests/dns-records.test.ts +13 -0
  161. package/src/ontology/schemas/tests/manifest-resolver.test.ts +13 -0
  162. package/src/ontology/schemas/tests/page-entry.test.ts +22 -0
  163. package/src/ontology/schemas/tests/section-archetype.test.ts +12 -0
  164. package/src/ontology/schemas/tests/site-family.test.ts +18 -0
  165. package/src/ontology/schemas/tests/system.test.ts +20 -0
  166. package/src/ontology/shared-section-props/body-fragments.ts +2 -0
  167. package/src/ontology/tests/sternsystem-owner.test.ts +1 -1
  168. package/src/ontology/vitest.config.ts +1 -0
  169. package/src/{share → page}/page.ts +13 -9
  170. package/src/{share → page}/tests/dev-props-validator.test.ts +1 -1
  171. package/src/{share → page}/tests/hero-section-numbering-parity.test.ts +1 -1
  172. package/src/passport/index.ts +6 -1
  173. package/src/passport/key-rotate.ts +10 -2
  174. package/src/passport/schema.ts +6 -1
  175. package/src/passport/sign.ts +8 -3
  176. package/src/passport/vitest.config.ts +1 -0
  177. package/src/pbt/index.test.ts +95 -0
  178. package/src/pbt/index.ts +251 -0
  179. package/src/plugin/plugin-contract.ts +1 -1
  180. package/src/{share → policy}/entitlement.ts +24 -4
  181. package/src/{share → policy}/feature-policy.ts +8 -3
  182. package/src/{share → policy}/visibility.ts +7 -2
  183. package/src/redirects/redirects.ts +117 -0
  184. package/src/{share → redirects/tests}/redirects.test.ts +1 -1
  185. package/src/remediation/remediation-catalog.ts +316 -0
  186. package/src/{share/routes → routes}/template-filter.ts +1 -1
  187. package/src/{share → runtime}/runtime-context.ts +7 -2
  188. package/src/{share → runtime}/shared-context.ts +1 -1
  189. package/src/{share/schemas → schemas}/claims.ts +2 -2
  190. package/src/{share/schemas → schemas}/effects.ts +6 -1
  191. package/src/{share/schemas → schemas}/features.ts +1 -1
  192. package/src/{share/schemas → schemas}/index.ts +3 -3
  193. package/src/{share/schemas → schemas}/navigation.ts +6 -1
  194. package/src/{share/schemas → schemas}/page-base.ts +6 -2
  195. package/src/{share/schemas → schemas}/person.ts +1 -1
  196. package/src/{share/schemas → schemas}/standard-list-item.ts +1 -1
  197. package/src/schemas/tests/claim-records.test.ts +52 -0
  198. package/src/schemas/tests/claims.test.ts +23 -0
  199. package/src/schemas/tests/effects.test.ts +116 -0
  200. package/src/schemas/tests/features.test.ts +61 -0
  201. package/src/schemas/tests/horizontal-align.test.ts +16 -0
  202. package/src/schemas/tests/icon-color.test.ts +16 -0
  203. package/src/schemas/tests/live-photo.test.ts +40 -0
  204. package/src/schemas/tests/material-credit.test.ts +51 -0
  205. package/src/schemas/tests/media.test.ts +26 -0
  206. package/src/schemas/tests/navigation.test.ts +58 -0
  207. package/src/schemas/tests/page-base.test.ts +19 -0
  208. package/src/schemas/tests/participant.test.ts +26 -0
  209. package/src/schemas/tests/person.test.ts +12 -0
  210. package/src/schemas/tests/print.test.ts +30 -0
  211. package/src/schemas/tests/section-background.test.ts +31 -0
  212. package/src/schemas/tests/section-body.test.ts +16 -0
  213. package/src/schemas/tests/section-cards.test.ts +17 -0
  214. package/src/schemas/tests/section-cta.test.ts +41 -0
  215. package/src/schemas/tests/section-header.test.ts +31 -0
  216. package/src/schemas/tests/section-image.test.ts +24 -0
  217. package/src/schemas/tests/section-motion.test.ts +29 -0
  218. package/src/schemas/tests/section-shell.test.ts +42 -0
  219. package/src/schemas/tests/section-stats.test.ts +17 -0
  220. package/src/schemas/tests/site-background.test.ts +33 -0
  221. package/src/schemas/tests/standard-list-item.test.ts +16 -0
  222. package/src/{share → sections}/rfc0042-utils.ts +1 -1
  223. package/src/{share/semantic → semantic}/block-extractors/index.ts +20 -1
  224. package/src/{share/semantic → semantic}/business-projection.ts +95 -1
  225. package/src/semantic/canonical-uri.ts +54 -0
  226. package/src/{share/semantic → semantic}/extract.ts +100 -1
  227. package/src/semantic/fact-extraction.test.ts +47 -0
  228. package/src/semantic/fact-extraction.ts +46 -0
  229. package/src/semantic/freshness.ts +67 -0
  230. package/src/{share/semantic → semantic}/ids.ts +6 -1
  231. package/src/{share/semantic → semantic}/index.ts +9 -2
  232. package/src/{share/semantic → semantic}/jsonld/breadcrumb.ts +6 -2
  233. package/src/{share/semantic → semantic}/jsonld/context.ts +6 -2
  234. package/src/{share/semantic → semantic}/jsonld/faq.ts +6 -2
  235. package/src/{share/semantic → semantic}/jsonld/initiative.ts +6 -1
  236. package/src/{share/semantic → semantic}/jsonld/organization.ts +6 -1
  237. package/src/{share/semantic → semantic}/jsonld/person.ts +6 -2
  238. package/src/{share/semantic → semantic}/jsonld/service.ts +6 -2
  239. package/src/semantic/jsonld/shared.ts +36 -0
  240. package/src/semantic/jsonld/tests/article.test.ts +89 -0
  241. package/src/semantic/jsonld/tests/breadcrumb.test.ts +62 -0
  242. package/src/semantic/jsonld/tests/collection-list.test.ts +39 -0
  243. package/src/semantic/jsonld/tests/faq.test.ts +60 -0
  244. package/src/semantic/jsonld/tests/initiative.test.ts +56 -0
  245. package/src/semantic/jsonld/tests/organization.test.ts +123 -0
  246. package/src/semantic/jsonld/tests/person.test.ts +89 -0
  247. package/src/semantic/jsonld/tests/service.test.ts +65 -0
  248. package/src/semantic/jsonld/tests/shared.test.ts +41 -0
  249. package/src/semantic/jsonld/tests/video.test.ts +84 -0
  250. package/src/semantic/jsonld/tests/webpage.test.ts +93 -0
  251. package/src/semantic/jsonld/tests/website.test.ts +27 -0
  252. package/src/semantic/jsonld/types.ts +24 -0
  253. package/src/{share/semantic → semantic}/jsonld/webpage.ts +6 -1
  254. package/src/semantic/jsonld/website.ts +32 -0
  255. package/src/{share/semantic → semantic}/jsonld.ts +6 -1
  256. package/src/{share/semantic → semantic}/llms.ts +41 -3
  257. package/src/{share/semantic → semantic}/models.ts +27 -38
  258. package/src/{share/semantic → semantic}/organization-profile.ts +3 -0
  259. package/src/{share/semantic → semantic}/page-builders/markdown-page.ts +6 -3
  260. package/src/{share/semantic → semantic}/page-utils.ts +6 -3
  261. package/src/semantic/tests/ai.test.ts +55 -0
  262. package/src/semantic/tests/block-extraction.test.ts +34 -0
  263. package/src/{share/tests/breadcrumbs.test.ts → semantic/tests/breadcrumbs-0229.test.ts} +1 -1
  264. package/src/semantic/tests/breadcrumbs.test.ts +127 -0
  265. package/src/{share → semantic}/tests/build-page-price-markers.test.ts +2 -2
  266. package/src/semantic/tests/build-page.test.ts +122 -0
  267. package/src/semantic/tests/business-projection.test.ts +367 -0
  268. package/src/semantic/tests/canonical-uri.test.ts +56 -0
  269. package/src/semantic/tests/extract.test.ts +209 -0
  270. package/src/semantic/tests/feed.test.ts +113 -0
  271. package/src/semantic/tests/freshness.pbt.test.ts +108 -0
  272. package/src/semantic/tests/helpers.ts +32 -0
  273. package/src/semantic/tests/ids.test.ts +118 -0
  274. package/src/{share/tests/image-sitemap.test.ts → semantic/tests/image-sitemap-0150.test.ts} +1 -1
  275. package/src/semantic/tests/image-sitemap.test.ts +109 -0
  276. package/src/{share → semantic}/tests/jsonld-service.test.ts +2 -2
  277. package/src/{share → semantic}/tests/jsonld-video.test.ts +3 -3
  278. package/src/{share → semantic}/tests/jsonld-webpage.test.ts +3 -3
  279. package/src/semantic/tests/jsonld.test.ts +61 -0
  280. package/src/{share → semantic}/tests/llms-0789.test.ts +2 -2
  281. package/src/semantic/tests/llms-policy.test.ts +60 -0
  282. package/src/semantic/tests/llms.test.ts +164 -0
  283. package/src/semantic/tests/markdown-hygiene.test.ts +72 -0
  284. package/src/semantic/tests/markdown-page.test.ts +97 -0
  285. package/src/{share → semantic}/tests/organization-jsonld.test.ts +3 -3
  286. package/src/semantic/tests/organization-profile.test.ts +107 -0
  287. package/src/{share/tests/output-projection.test.ts → semantic/tests/output-projection-0143.test.ts} +1 -1
  288. package/src/semantic/tests/output-projection.test.ts +77 -0
  289. package/src/semantic/tests/page-markdown.test.ts +98 -0
  290. package/src/semantic/tests/page-utils.test.ts +88 -0
  291. package/src/{share/tests/price-marker-resolver.test.ts → semantic/tests/price-marker-resolver-0767.test.ts} +2 -2
  292. package/src/semantic/tests/price-marker-resolver.test.ts +90 -0
  293. package/src/semantic/tests/project-claims.pbt.test.ts +60 -0
  294. package/src/semantic/tests/robots.test.ts +70 -0
  295. package/src/{share/semantic → semantic}/tests/split-sentences.test.ts +1 -1
  296. package/src/{share → semantic}/tests/twin-path.test.ts +1 -1
  297. package/src/semantic/tests/update-stamp.test.ts +102 -0
  298. package/src/signing/index.ts +13 -0
  299. package/src/signing/key.ts +139 -0
  300. package/src/signing/sign.ts +66 -0
  301. package/src/signing/types.ts +29 -0
  302. package/src/{share/slug → slug}/slug-url.ts +4 -1
  303. package/src/stack/run-tool.ts +108 -0
  304. package/src/stack/stack-checks.ts +124 -0
  305. package/src/stack/tests/run-tool.test.ts +138 -0
  306. package/src/stack/tests/stack-checks.test.ts +141 -0
  307. package/src/stack/tests/walk-files.test.ts +131 -0
  308. package/src/stack/walk-files.ts +114 -0
  309. package/src/surface/blueprint.ts +342 -66
  310. package/src/surface/decision-composer.ts +6 -1
  311. package/src/surface/geo.ts +6 -1
  312. package/src/surface/index.ts +11 -7
  313. package/src/surface/types.ts +2 -2
  314. package/src/surface/vitest.config.ts +1 -0
  315. package/src/tests/signing-core.test.ts +129 -0
  316. package/src/{share → text}/css-value-normalize.ts +6 -1
  317. package/src/text/string-utils.ts +24 -0
  318. package/src/{share → text}/tests/text-normalize.test.ts +5 -0
  319. package/src/{share → text}/text-normalize.ts +4 -3
  320. package/src/{share → text}/wrap-inline-numbers.ts +1 -1
  321. package/src/types/axiom-study.d.ts +36 -0
  322. package/src/types/hls-js-light.d.ts +21 -0
  323. package/src/types/qrcode-browser.d.ts +23 -0
  324. package/src/typography/fix.pbt.test.ts +208 -0
  325. package/src/typography/fix.ts +148 -0
  326. package/src/typography/index.ts +54 -0
  327. package/src/typography/locale-defaults.ts +97 -0
  328. package/src/typography/rules-tier1.test.ts +459 -0
  329. package/src/typography/rules-tier1.ts +925 -0
  330. package/src/typography/rules-tier2-locale.pbt.test.ts +190 -0
  331. package/src/typography/rules-tier2-locale.test.ts +286 -0
  332. package/src/typography/rules-tier2-locale.ts +399 -0
  333. package/src/typography/rules-tier2-structure.test.ts +330 -0
  334. package/src/typography/rules-tier2-structure.ts +378 -0
  335. package/src/typography/rules-tier3-advisory.test.ts +290 -0
  336. package/src/typography/rules-tier3-advisory.ts +239 -0
  337. package/src/typography/text-surface.test.ts +244 -0
  338. package/src/typography/text-surface.ts +448 -0
  339. package/src/index.ts +0 -14
  340. package/src/integration/port-barrel.ts +0 -105
  341. package/src/share/content/index.ts +0 -16
  342. package/src/share/content-discipline/index.ts +0 -14
  343. package/src/share/index.ts +0 -86
  344. package/src/share/legal/index.ts +0 -1
  345. package/src/share/redirects.ts +0 -54
  346. package/src/share/scripts/index.ts +0 -26
  347. package/src/share/semantic/jsonld/shared.ts +0 -31
  348. package/src/share/semantic/jsonld/types.ts +0 -18
  349. package/src/share/semantic/jsonld/website.ts +0 -27
  350. package/src/share/string-utils.ts +0 -19
  351. package/src/share/types/axiom-study.d.ts +0 -22
  352. package/src/share/types/hls-js-light.d.ts +0 -16
  353. package/src/share/types/qrcode-browser.d.ts +0 -18
  354. package/src/share/utility-registry.yaml +0 -36
  355. package/src/share/vitest.config.ts +0 -8
  356. package/src/surface/blueprint-schema.ts +0 -314
  357. package/src/surface/blueprint-types.ts +0 -256
  358. /package/src/{share/agent → agent}/api-catalog.ts +0 -0
  359. /package/src/{share/agent → agent}/capability.ts +0 -0
  360. /package/src/{share/agent → agent}/dns-aid.ts +0 -0
  361. /package/src/{share/agent → agent}/fleet-catalog.ts +0 -0
  362. /package/src/{share/agent → agent}/index.ts +0 -0
  363. /package/src/{share/agent → agent}/knowledge.ts +0 -0
  364. /package/src/{share/agent → agent}/mcp-card.ts +0 -0
  365. /package/src/{share/agent → agent}/omit-empty.ts +0 -0
  366. /package/src/{share/agent → agent}/openapi.ts +0 -0
  367. /package/src/{share/agent → agent}/proof.ts +0 -0
  368. /package/src/{share/agent → agent}/search.test.ts +0 -0
  369. /package/src/{share → attribution}/attribution-display.ts +0 -0
  370. /package/src/{share/scripts → client-scripts}/gsap-mountain-journey.ts +0 -0
  371. /package/src/{share/scripts → client-scripts}/gsap-parallax.ts +0 -0
  372. /package/src/{share/scripts → client-scripts}/gsap-reveal.ts +0 -0
  373. /package/src/{share/scripts → client-scripts}/gsap-stagger.ts +0 -0
  374. /package/src/{share/scripts → client-scripts}/live-photos.ts +0 -0
  375. /package/src/{share/scripts → client-scripts}/video-player.ts +0 -0
  376. /package/src/{share/content → content}/resolve-field-path.ts +0 -0
  377. /package/src/{share/content → content}/substitute-deep.ts +0 -0
  378. /package/src/{share → content}/tests/content-ref-index.test.ts +0 -0
  379. /package/src/{share/content-discipline → content-discipline}/types.ts +0 -0
  380. /package/src/{share → image-provider}/image-provider.ts +0 -0
  381. /package/src/{share/knowledge → knowledge}/claim.ts +0 -0
  382. /package/src/{share/knowledge → knowledge}/derivation.ts +0 -0
  383. /package/src/{share/knowledge → knowledge}/freshness.ts +0 -0
  384. /package/src/{share/knowledge → knowledge}/index.ts +0 -0
  385. /package/src/{share/knowledge → knowledge}/ledger.ts +0 -0
  386. /package/src/{share/knowledge → knowledge}/plan.ts +0 -0
  387. /package/src/{share/knowledge → knowledge}/source.ts +0 -0
  388. /package/src/{share/legal → legal}/translation-policy.ts +0 -0
  389. /package/src/{share/middleware → middleware}/language-redirect.ts +0 -0
  390. /package/src/{share/middleware → middleware}/tests/access-protection.test.ts +0 -0
  391. /package/src/{share → node}/fs/index.ts +0 -0
  392. /package/src/{share/tests/markdown-twin-provenance.test.ts → node/tests/markdown-twin-provenance-0613.test.ts} +0 -0
  393. /package/src/{share → offers}/offer-capacity.ts +0 -0
  394. /package/src/{share/onboarding-yaml/index.ts → onboarding/yaml.ts} +0 -0
  395. /package/src/{share → ontology}/tests/ontology-role-by-cosmic-name.test.ts +0 -0
  396. /package/src/{share/routes → routes}/tests/template-filter.test.ts +0 -0
  397. /package/src/{share/schemas → schemas}/claim-records.ts +0 -0
  398. /package/src/{share/schemas → schemas}/horizontal-align.ts +0 -0
  399. /package/src/{share/schemas → schemas}/icon-color.ts +0 -0
  400. /package/src/{share/schemas → schemas}/live-photo.ts +0 -0
  401. /package/src/{share/schemas → schemas}/material-credit.ts +0 -0
  402. /package/src/{share/schemas → schemas}/media.ts +0 -0
  403. /package/src/{share/schemas → schemas}/participant.ts +0 -0
  404. /package/src/{share/schemas → schemas}/print.ts +0 -0
  405. /package/src/{share/schemas → schemas}/section-background.ts +0 -0
  406. /package/src/{share/schemas → schemas}/section-body.ts +0 -0
  407. /package/src/{share/schemas → schemas}/section-cards.ts +0 -0
  408. /package/src/{share/schemas → schemas}/section-cta.ts +0 -0
  409. /package/src/{share/schemas → schemas}/section-header.ts +0 -0
  410. /package/src/{share/schemas → schemas}/section-image.ts +0 -0
  411. /package/src/{share/schemas → schemas}/section-motion.ts +0 -0
  412. /package/src/{share/schemas → schemas}/section-shell.ts +0 -0
  413. /package/src/{share/schemas → schemas}/section-stats.ts +0 -0
  414. /package/src/{share/schemas → schemas}/site-background.ts +0 -0
  415. /package/src/{share/semantic → semantic}/ai.ts +0 -0
  416. /package/src/{share/semantic → semantic}/block-extraction.ts +0 -0
  417. /package/src/{share/semantic → semantic}/breadcrumbs.ts +0 -0
  418. /package/src/{share/semantic → semantic}/build-page.ts +0 -0
  419. /package/src/{share/semantic → semantic}/feed.ts +0 -0
  420. /package/src/{share/semantic → semantic}/image-sitemap.ts +0 -0
  421. /package/src/{share/semantic → semantic}/jsonld/article.ts +0 -0
  422. /package/src/{share/semantic → semantic}/jsonld/collection-list.ts +0 -0
  423. /package/src/{share/semantic → semantic}/jsonld/video.ts +0 -0
  424. /package/src/{share/semantic → semantic}/llms-policy.ts +0 -0
  425. /package/src/{share/semantic → semantic}/markdown-hygiene.ts +0 -0
  426. /package/src/{share/semantic → semantic}/output-projection.ts +0 -0
  427. /package/src/{share/semantic → semantic}/page-markdown.ts +0 -0
  428. /package/src/{share/semantic → semantic}/price-marker-resolver.ts +0 -0
  429. /package/src/{share/semantic → semantic}/robots.ts +0 -0
  430. /package/src/{share/semantic → semantic}/update-stamp.ts +0 -0
  431. /package/src/{share/slug → slug}/heading-slugger.ts +0 -0
  432. /package/src/{share/slug → slug}/index.ts +0 -0
  433. /package/src/{share/slug → slug}/slug-id.ts +0 -0
  434. /package/src/{share/slug → slug}/strategies.ts +0 -0
  435. /package/src/{share/slug → slug}/tests/slug.test.ts +0 -0
  436. /package/src/{share → text}/tests/text-normalize.pbt.test.ts +0 -0
  437. /package/src/{share → text}/text-position.ts +0 -0
@@ -1,105 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>
4
- RFC-0168: Integration Port barrel — types and pure contracts only. Re-exports from
5
- port.ts, funnel.ts, lifecycle.ts, sharding.ts, dispatch.ts, and qstash.ts.
6
- Type-only consumers import from here to avoid transitively pulling in adapter
7
- implementations (orchestration.ts → adapters.ts).
8
- </purpose>
9
- <non-goals>
10
- <item>Do not re-export orchestration.ts, delivery-handler.ts, or adapters.ts — those are runtime.</item>
11
- <item>Do not define logic here — pure re-export barrel.</item>
12
- </non-goals>
13
- </MODULE_CONTRACT>
14
- <CHANGE_SUMMARY>
15
- <item>Architecture review: split from index.ts so type-only consumers don't transitively import adapter implementations.</item>
16
- </CHANGE_SUMMARY>
17
- */
18
-
19
- export type { IntegrationSecrets } from "./port.ts";
20
- export type { LeadMessage, Lead, IntegrationChannelAdapter, CrmAdapter } from "./port.ts";
21
- export type { IntegrationEvent, DestinationAdapter } from "./port.ts";
22
- export { DESTINATION_KINDS, EXECUTION_MODES, eventToLeadMessage, eventToLead } from "./port.ts";
23
- export type { DestinationKind, ExecutionMode } from "./port.ts";
24
-
25
- export type {
26
- VisitorFunnelEventPayload,
27
- FunnelSystemTrigger,
28
- FunnelTransitionTrigger,
29
- } from "./funnel.ts";
30
- export {
31
- FUNNEL_VERSION,
32
- VISITOR_FUNNEL_STAGES,
33
- FUNNEL_ENTRY_STAGE,
34
- FUNNEL_TERMINAL_STAGES,
35
- VISITOR_FUNNEL_EVENT_KINDS,
36
- VISITOR_FUNNEL_INTENTS,
37
- VISITOR_FUNNEL_SOURCES,
38
- VISITOR_BUYER_TYPES,
39
- FUNNEL_TRANSITIONS,
40
- isValidFunnelStage,
41
- BUFFER_DEAL_STAGES,
42
- FUNNEL_STAGE_TO_BUFFER_STAGE,
43
- bridgeFunnelStage,
44
- SYNC_OUTBOX_STATUSES,
45
- SYNC_OUTBOX_OPS,
46
- canTransition,
47
- nextStages,
48
- reachableStages,
49
- FUNNEL_SYSTEM_TRIGGERS,
50
- FUNNEL_TRANSITION_TRIGGERS,
51
- LEGACY_FUNNEL_STAGES,
52
- scanForMakeComReferences,
53
- } from "./funnel.ts";
54
- export type {
55
- VisitorFunnelStage,
56
- VisitorFunnelEventKind,
57
- VisitorFunnelIntent,
58
- VisitorFunnelSource,
59
- VisitorBuyerType,
60
- BufferDealStage,
61
- SyncOutboxStatus,
62
- SyncOutboxOp,
63
- } from "./funnel.ts";
64
-
65
- export type { LifecycleEventPayload } from "./lifecycle.ts";
66
- export {
67
- LIFECYCLE_EVENT_KINDS,
68
- SUBSCRIPTION_STATUSES,
69
- INVOICE_KINDS,
70
- INVOICE_STATUSES,
71
- SUBSCRIPTION_PLANS,
72
- LifecycleEventPayloadSchema,
73
- isLifecycleEventKind,
74
- SUBSCRIPTION_TRANSITIONS,
75
- SUBSCRIPTION_TRANSITION_TRIGGERS,
76
- } from "./lifecycle.ts";
77
- export type {
78
- LifecycleEventKind,
79
- SubscriptionStatus,
80
- InvoiceKind,
81
- InvoiceStatus,
82
- SubscriptionPlan,
83
- } from "./lifecycle.ts";
84
-
85
- export type { ShardAssignment, ResolveShardOptions } from "./sharding.ts";
86
- export { DELIVERY_REGIONS, DELIVERY_TIERS, fnv1a, resolveShard } from "./sharding.ts";
87
- export type { DeliveryRegion, DeliveryTier } from "./sharding.ts";
88
-
89
- export type {
90
- DispatchExecuteRequest,
91
- DispatchExecuteResult,
92
- DispatchNamespaceBinding,
93
- DispatchOutcome,
94
- } from "./dispatch.ts";
95
- export { DISPATCH_ROUTE, executeDispatch, dispatchToTenant } from "./dispatch.ts";
96
-
97
- export type { QstashPublishConfig, IdempotencyLedger, RestRedisConfig } from "./qstash.ts";
98
- export {
99
- QSTASH_EU_BASE,
100
- UPSTASH_QSTASH_SECRETS,
101
- UPSTASH_REDIS_SECRETS,
102
- UPSTASH_DELIVERY_SECRETS,
103
- buildQstashPublish,
104
- restRedisLedger,
105
- } from "./qstash.ts";
@@ -1,16 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Maintains packages/share/src/content/index.ts as an authored share content module so agents can evolve it without rediscovering local boundaries.</purpose>
4
- <non-goals>
5
- <item>Do not introduce app-specific runtime composition or deployment behavior into this reusable package source file.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>RFC-0133: backfilled MODULE_MAP and CHANGE_SUMMARY markers for compass.validate compliance.</item>
10
- <item>Removed dispatch.ts re-export (merged into entity-id.ts).</item>
11
- </CHANGE_SUMMARY>
12
- */
13
-
14
- export * from "./entity-id.ts";
15
- export * from "./merge.ts";
16
- export * from "./resolve-field-path.ts";
@@ -1,14 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Maintains packages/share/src/content-discipline/index.ts as an authored share authored module so agents can evolve it without rediscovering local boundaries.</purpose>
4
- <non-goals>
5
- <item>Do not define validation logic here.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>Added barrel exports for content-discipline submodules.</item>
10
- </CHANGE_SUMMARY>
11
- */
12
-
13
- export * from "./types.ts";
14
- export * from "./parsers.ts";
@@ -1,86 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>
4
- Deprecated compatibility barrel for @warpgogol/werkstatt-shared/share (RFC-0264). New code MUST
5
- import from the domain subpath instead — see the map in
6
- packages/share/AGENTS.md. This root barrel re-exports each subpath module
7
- unchanged (never new logic) so existing consumers keep working while they
8
- migrate. The `page` and `i18n` domains have completed their migration wave:
9
- their re-export blocks are deleted here — import them from
10
- `@warpgogol/werkstatt-shared/share/page` / `@warpgogol/werkstatt-shared/share/i18n`.
11
- </purpose>
12
- <non-goals>
13
- <item>Do not add business logic here — keep as a pure re-export barrel.</item>
14
- <item>Do not re-add the page or i18n domains — those are fully migrated; import the subpath directly.</item>
15
- </non-goals>
16
- </MODULE_CONTRACT>
17
- <CHANGE_SUMMARY>
18
- <item>Initial barrel created alongside package extraction.</item>
19
- <item>RFC-0264: split into subpath entry points. Root barrel shrunk to a deprecated compatibility surface; page and i18n domains fully migrated (root re-export blocks deleted, all consumers rewritten).</item>
20
- <item>C6: image-utils.ts shim deleted; root barrel re-exports from @warpgogol/werkstatt-site/content-source directly. page-handler.ts shim deleted; export map points to resolve-route.ts.</item>
21
- </CHANGE_SUMMARY>
22
- */
23
-
24
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/content" instead */
25
- export * from "./content/index.ts";
26
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/semantic" instead */
27
- export * from "./semantic/index.ts";
28
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/middleware" instead */
29
- export * from "./middleware/language-redirect.ts";
30
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/entitlement" instead */
31
- export * from "./entitlement.ts";
32
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/offer-capacity" instead */
33
- export * from "./offer-capacity.ts";
34
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/knowledge" instead */
35
- export * from "./knowledge/index.ts";
36
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/schemas" instead */
37
- export * from "./schemas/index.ts";
38
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/feature-policy" instead */
39
- export * from "./feature-policy.ts";
40
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/counter-utils" instead */
41
- export * from "./counter-utils.ts";
42
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/image-provider" instead */
43
- export * from "./image-provider.ts";
44
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/runtime-context" instead */
45
- export { EMPTY_RUNTIME_CONTEXT } from "./runtime-context.ts";
46
- export type { RuntimeContext } from "./runtime-context.ts";
47
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/visibility" instead */
48
- export * from "./visibility.ts";
49
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/wrap-inline-numbers" instead */
50
- export * from "./wrap-inline-numbers.ts";
51
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/text-normalize" instead */
52
- export * from "./text-normalize.ts";
53
- // dev-props-validator is NOT re-exported from the root barrel. It imports
54
- // node:fs/promises and @warpgogol/werkstatt-shared/ontology/schemas (which also imports node:fs),
55
- // so re-exporting it here pulls Node-only modules into the Vite client bundle.
56
- // The sole consumer (resolve-route.ts) imports it via relative path.
57
- // Import from "@warpgogol/werkstatt-shared/share/dev-props-validator" subpath directly if needed.
58
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/rfc0042-utils" instead */
59
- export { need, cast, withDefault } from "./rfc0042-utils.ts";
60
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/shared-context" instead */
61
- export * from "./shared-context.ts";
62
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/content-discipline" instead */
63
- export * from "./content-discipline/types.ts";
64
- export * from "./content-discipline/parsers.ts";
65
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/legal" instead */
66
- export { resolveTranslationContext, TRANSLATION_STATUSES } from "./legal/translation-policy.ts";
67
- export type {
68
- TranslationStatus,
69
- PageTranslationPolicy,
70
- ResolvedTranslationContext,
71
- } from "./legal/translation-policy.ts";
72
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/material-credits" instead */
73
- export {
74
- parseMaterialCreditMap,
75
- findMaterialCredit,
76
- creditByTarget,
77
- buildMaterialCreditJsonLd,
78
- langFromCreditPath,
79
- } from "./material-credits.ts";
80
- export type { MaterialCreditRecord, RawMaterialCreditMap } from "./material-credits.ts";
81
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/attribution-display" instead */
82
- export * from "./attribution-display.ts";
83
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/string-utils" instead */
84
- export { toKebabCase } from "./string-utils.ts";
85
- /** @deprecated import from "@warpgogol/werkstatt-shared/share/css-value-normalize" instead */
86
- export { normalizeCssValue } from "./css-value-normalize.ts";
@@ -1 +0,0 @@
1
- export * from "./translation-policy.ts";
@@ -1,54 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>App-agnostic _redirects file parsing for reuse across site-kernel-checks and site-kernel-handoff (RFC-0588).</purpose>
4
- <non-goals>
5
- <item>Do not handle advanced Cloudflare Pages syntax (query parameters, placeholders) — only whitespace-delimited `from to status` lines.</item>
6
- <item>Do not perform glob-to-regex conversion — that is the consumer's responsibility.</item>
7
- </non-goals>
8
- </MODULE_CONTRACT>
9
- <CHANGE_SUMMARY>
10
- <item>RFC-0588: extracted parseRedirectRules and RedirectRule from site-kernel-checks/managed-public.ts into @warpgogol/werkstatt-shared/share/redirects subpath.</item>
11
- <item>RFC-0595: add extractRedirectTarget helper for parsing url= from meta-refresh tags.</item>
12
- </CHANGE_SUMMARY>
13
- */
14
-
15
- export type RedirectRule = {
16
- from: string;
17
- to: string | undefined;
18
- status: number;
19
- line: string;
20
- };
21
-
22
- export function parseRedirectRules(body: string): RedirectRule[] {
23
- return body
24
- .split(/\r?\n/)
25
- .map((line) => line.trim())
26
- .filter((line) => line && !line.startsWith("#"))
27
- .map((line) => {
28
- const [from, to, statusRaw] = line.split(/\s+/);
29
- return {
30
- from: from ?? "",
31
- to,
32
- status: Number(statusRaw ?? 301),
33
- line,
34
- };
35
- })
36
- .filter((rule) => rule.from.length > 0);
37
- }
38
-
39
- /**
40
- * Extract the redirect target URL from a `<meta http-equiv="refresh" content="0;url=...">` tag.
41
- * Returns the immediate target only (first hop). Returns null if the tag is
42
- * absent or the url= value cannot be parsed.
43
- */
44
- export function extractRedirectTarget(html: string): string | null {
45
- const m = html.match(
46
- /<meta[^>]+http-equiv=["']refresh["'][^>]*content=["']\s*\d+\s*;\s*url=([^"']+)['"][^>]*>/i,
47
- );
48
- if (m?.[1]) return m[1].trim();
49
- const m2 = html.match(
50
- /<meta[^>]+content=["']\s*\d+\s*;\s*url=([^"']+)['"][^>]*http-equiv=["']refresh["'][^>]*>/i,
51
- );
52
- if (m2?.[1]) return m2[1].trim();
53
- return null;
54
- }
@@ -1,26 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Serves as a central export point for various script modules utilized in dynamic loading contexts.</purpose>
4
-
5
-
6
- <non-goals>
7
- <item>Do not define new modules or components.</item>
8
- <item>Do not manage application state or business logic.</item>
9
- </non-goals>
10
- </MODULE_CONTRACT>
11
-
12
- <CHANGE_SUMMARY>
13
- <item>Added Compass scaffolding to clarify module roles and prevent scope creep.</item>
14
- </CHANGE_SUMMARY>
15
- */
16
-
17
- // scheduler.ts is loaded dynamically by orchestrator.ts and lordicon.ts
18
- export * from "./lordicon.ts";
19
- export * from "./external-links.ts";
20
- export * from "./external-link-qr.ts";
21
- export * from "./lenis.ts";
22
- export * from "./orchestrator.ts";
23
- // gsap-counter.ts (RFC-0040) is loaded dynamically by orchestrator.ts
24
- // inline-number-animation.ts (RFC-0041) is loaded dynamically by orchestrator.ts
25
- // gsap-reveal.ts / gsap-parallax.ts / gsap-stagger.ts (RFC-0106) are loaded
26
- // dynamically by orchestrator.ts via the reveal / parallax / stagger opt-ins.
@@ -1,31 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Maintains packages/share/src/semantic/jsonld/shared.ts as an authored share authored module so agents can evolve it without rediscovering local boundaries.</purpose>
4
- <non-goals>
5
- <item>Do not modify node structure.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>Added graph deduplication utility keyed by @id.</item>
10
- </CHANGE_SUMMARY>
11
- */
12
-
13
- import type { JsonLdNode } from "./types.ts";
14
-
15
- export function dedupeGraph(nodes: JsonLdNode[]): JsonLdNode[] {
16
- const seenIds = new Set<string>();
17
-
18
- return nodes.filter((node) => {
19
- const nodeId = typeof node["@id"] === "string" ? node["@id"] : null;
20
- if (!nodeId) {
21
- return true;
22
- }
23
-
24
- if (seenIds.has(nodeId)) {
25
- return false;
26
- }
27
-
28
- seenIds.add(nodeId);
29
- return true;
30
- });
31
- }
@@ -1,18 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Maintains packages/share/src/semantic/jsonld/types.ts as an authored share authored module so agents can evolve it without rediscovering local boundaries.</purpose>
4
- <non-goals>
5
- <item>Do not implement JSON-LD processing logic.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>Moved from app semantic/jsonld/types to packages/share.</item>
10
- </CHANGE_SUMMARY>
11
- */
12
-
13
- export type JsonLdNode = Record<string, unknown>;
14
-
15
- export type JsonLdDocument = {
16
- "@context": "https://schema.org";
17
- "@graph": JsonLdNode[];
18
- };
@@ -1,27 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Maintains packages/share/src/semantic/jsonld/website.ts as an authored share authored module so agents can evolve it without rediscovering local boundaries.</purpose>
4
- <non-goals>
5
- <item>Do not parse raw content.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>Added WebSite JSON-LD generation.</item>
10
- </CHANGE_SUMMARY>
11
- */
12
-
13
- import type { JsonLdContext } from "./context.ts";
14
- import type { JsonLdNode } from "./types.ts";
15
-
16
- export function buildWebSiteNode(context: JsonLdContext): JsonLdNode {
17
- const { page, ids } = context;
18
-
19
- return {
20
- "@type": "WebSite",
21
- "@id": ids.website,
22
- url: page.organization.url,
23
- name: page.organization.name,
24
- inLanguage: page.lang,
25
- publisher: { "@id": ids.organization },
26
- };
27
- }
@@ -1,19 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Maintains packages/share/src/string-utils.ts as an authored share authored module so agents can evolve it without rediscovering local boundaries.</purpose>
4
- <non-goals>
5
- <item>Do not introduce app-specific runtime composition or deployment behavior into this reusable package source file.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>Dedup: centralise the kebab-case helper previously duplicated in site-kernel and site-kernel-checks.</item>
10
- </CHANGE_SUMMARY>
11
- */
12
-
13
- /** Lowercase, dash-only kebab-case. Strips leading/trailing hyphens. */
14
- export function toKebabCase(value: string): string {
15
- return value
16
- .toLowerCase()
17
- .replace(/[^a-z0-9]+/g, "-")
18
- .replace(/^-+|-+$/g, "");
19
- }
@@ -1,22 +0,0 @@
1
- declare module "@syrokomskyi/axiom-study" {
2
- export interface Finding {
3
- findingId: string;
4
- semanticFingerprint: { algorithm: "sha256"; digest: string; size: number; mediaType: string };
5
- methodologyId: string;
6
- ruleId: string;
7
- affectedSubjectId: string;
8
- title: string;
9
- severity: "info" | "low" | "medium" | "high" | "critical";
10
- evidence: Array<{
11
- evidenceRef: {
12
- artifactId: string;
13
- rootDigest: { algorithm: "sha256"; digest: string; size: number; mediaType: string };
14
- schema: string;
15
- };
16
- selector: string;
17
- evidenceClass: string;
18
- }>;
19
- uncertainty: unknown[];
20
- extension: Record<string, unknown>;
21
- }
22
- }
@@ -1,16 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Type shim for the official `hls.js/light` export used by the lazy feature-video runtime.</purpose>
4
- <non-goals>
5
- <item>Do not change runtime resolution; this file only fills the missing package declaration.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>Use the hls.js light runtime without losing TypeScript strictness.</item>
10
- </CHANGE_SUMMARY>
11
- */
12
-
13
- declare module "hls.js/light" {
14
- export { default } from "hls.js";
15
- export * from "hls.js";
16
- }
@@ -1,18 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Type shim for the qrcode browser entry point (qrcode/lib/browser.js).
4
- The qrcode package only ships types for its main entry, but the browser entry
5
- exports the same toCanvas function. This shim re-exports all types from qrcode
6
- so the client-side QR code script gets full type safety.</purpose>
7
- <non-goals>
8
- <item>Do not change runtime resolution; this file only fills the missing package declaration.</item>
9
- </non-goals>
10
- </MODULE_CONTRACT>
11
- <CHANGE_SUMMARY>
12
- <item>Add type declaration for qrcode/lib/browser.js deep import used by external-link-qr.ts.</item>
13
- </CHANGE_SUMMARY>
14
- */
15
-
16
- declare module "qrcode/lib/browser.js" {
17
- export * from "qrcode";
18
- }
@@ -1,36 +0,0 @@
1
- utilities:
2
- - id: slug
3
- canonicalPath: packages/werkstatt-shared/src/share/slug/
4
- forbiddenImports:
5
- - "@sindresorhus/slugify"
6
- - cyrillic-to-translit-js
7
- - github-slugger
8
- functionNames:
9
- - slugify
10
- - toSlug
11
- - makeSlug
12
- - createSlug
13
- - slugUrl
14
- - slugId
15
- patterns:
16
- - id: nkfd-diacritic-strip
17
- regex: "\\.normalize\\(.{0,5}NFKD.{0,5}\\)\\.replace"
18
- description: NFKD normalize + diacritic strip + non-alphanumeric replace (legacy custom slugify pattern)
19
- allowlist:
20
- - path: packages/werkstatt-shared/src/share/slug/
21
- reason: Canonical slug module — owns all slug generation logic (RFC-0915, DNA-88)
22
- - path: packages/werkstatt-shared/src/share/semantic/extract.ts
23
- reason: CHANGE_SUMMARY comment references slugify removal — no function definition remains
24
- - path: packages/werkstatt-site/src/checks/tests/utility-provenance.test.ts
25
- reason: Test file intentionally contains forbidden patterns to validate the provenance validator (RFC-0916)
26
- - path: packages/werkstatt-site/src/checks/utility-provenance.ts
27
- reason: Validator implementation references forbidden imports/function names in string literals for detection logic (RFC-0916)
28
- - id: template-filter
29
- canonicalPath: packages/werkstatt-shared/src/share/routes/
30
- forbiddenImports: []
31
- functionNames:
32
- - hasPlaceholderRoutes
33
- patterns: []
34
- allowlist:
35
- - path: packages/werkstatt-shared/src/share/routes/
36
- reason: Canonical placeholder route filter — owns all template detection logic (RFC-0917)
@@ -1,8 +0,0 @@
1
- import { defineConfig } from "vitest/config";
2
-
3
- export default defineConfig({
4
- test: {
5
- environment: "node",
6
- include: ["src/**/*.test.ts"],
7
- },
8
- });