{"_id":"@careerdriver/black-box","_rev":"13-96e805a3d4cc9733deb7403da98b00fe","name":"@careerdriver/black-box","dist-tags":{"latest":"1.4.0"},"versions":{"1.0.0":{"name":"@careerdriver/black-box","version":"1.0.0","_id":"@careerdriver/black-box@1.0.0","maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"dist":{"shasum":"373cf1e71d37272a06ba744a1428727dbbacb722","tarball":"https://registry.npmjs.org/@careerdriver/black-box/-/black-box-1.0.0.tgz","fileCount":7,"integrity":"sha512-0IM8ogZWwzpNY7TzDFtdMRat0iSEJ8qyvEiB3P+RbIkIPqLxw04RJ5D+o0X04Az80wfWB/5oQogWb82DhQKYog==","signatures":[{"sig":"MEYCIQCPe6sTCKRbfus2mH4SAEjfxg7DyXHgQRBuQGUC/2defgIhAJ9DFEC9NRUPuWdm4l5CkuS+wITPokU2GggIKVAFVJm8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95208},"main":"./dist/runtime.js","type":"module","types":"./dist/runtime.d.ts","unpkg":"./dist/runtime.global.js","module":"./dist/runtime.js","exports":{".":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js"},"./iife":"./dist/runtime.global.js"},"gitHead":"9b408c80d39d588fbbff9680cc9f8fd77422f978","private":false,"scripts":{"dev":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --watch","build":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --minify --sourcemap --dts","type-check":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"},"_npmVersion":"11.6.2","description":"Minimal JavaScript runtime (<10KB gzipped) that reads JSON configuration and sends telemetry from client websites.","directories":{},"_nodeVersion":"25.2.1","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.1","typescript":"^5.3.3","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/black-box_1.0.0_1769111967619_0.49020196871518973","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@careerdriver/black-box","version":"1.0.1","_id":"@careerdriver/black-box@1.0.1","maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"dist":{"shasum":"144f96d2c212ed9d2cef50b6f3411b7d84006539","tarball":"https://registry.npmjs.org/@careerdriver/black-box/-/black-box-1.0.1.tgz","fileCount":7,"integrity":"sha512-dWOXtfW4oFJRUDOEvdM6Vf1S8roFhdK6EWmHCSIgFT975FLgjVEOg87yBT9Ii8IMMqsdnXmaPIagdec3sIz7rg==","signatures":[{"sig":"MEUCIQD6NbPEzjMMxnFYMmPJLOT6VhgmP9T07QL6XG5Pb3ZligIgI43ZQvV7G0eptf/Oi1c5d1/jTOIPjteoZvIcaxQeVvA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":98334},"main":"./dist/runtime.js","type":"module","types":"./dist/runtime.d.ts","unpkg":"./dist/runtime.global.js","module":"./dist/runtime.js","exports":{".":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js"},"./iife":"./dist/runtime.global.js"},"gitHead":"5249771c2eb0358305e1796abee21491d5ebe1e5","private":false,"scripts":{"dev":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --watch","build":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --minify --sourcemap --dts","type-check":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},"_npmVersion":"11.6.2","description":"**AI Search Optimization Runtime** - Minimal JavaScript runtime (<10KB gzipped) that optimizes websites for AI search engines by injecting structured data (JSON-LD schemas), building authority signals, and enabling AI model comprehension.","directories":{},"_nodeVersion":"25.2.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.0.10"},"_npmOperationalInternal":{"tmp":"tmp/black-box_1.0.1_1769444188156_0.7646505048175223","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@careerdriver/black-box","version":"1.0.2","_id":"@careerdriver/black-box@1.0.2","maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"dist":{"shasum":"1f1e7cb93569796ef2cdaa6631d16da0cf37636a","tarball":"https://registry.npmjs.org/@careerdriver/black-box/-/black-box-1.0.2.tgz","fileCount":7,"integrity":"sha512-kr9FBkmLucN6Cb9v79GedFFfdvWjXPydBTMqG9mu2ugCGfBj59SPXmFdN6LcVZYPOfV7z7tlo4iqAj/8zVWWDA==","signatures":[{"sig":"MEQCIEDWuNHThPS7so9q4B6V7G/PkJ9EX2xYKI/EtvDJE+xeAiBxtqOBWUJqrtlOzEuIfb60Di2fxwgvcA9Prv/AAkNElw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100980},"main":"./dist/runtime.js","type":"module","types":"./dist/runtime.d.ts","unpkg":"./dist/runtime.global.js","module":"./dist/runtime.js","exports":{".":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js"},"./iife":"./dist/runtime.global.js"},"gitHead":"cb1946d063cc49d1ed007b3a4de8697954ea6b61","private":false,"scripts":{"dev":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --watch","build":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --minify --sourcemap --dts","type-check":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},"_npmVersion":"11.6.2","description":"**AI Search Optimization Runtime** - Minimal JavaScript runtime (<10KB gzipped) that optimizes websites for AI search engines by injecting structured data (JSON-LD schemas), building authority signals, and enabling AI model comprehension.","directories":{},"_nodeVersion":"25.2.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.0.10"},"_npmOperationalInternal":{"tmp":"tmp/black-box_1.0.2_1769449772215_0.06347159026295501","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@careerdriver/black-box","version":"1.0.3","_id":"@careerdriver/black-box@1.0.3","maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"dist":{"shasum":"b4cfb4c730421c883ce412ae7f0a7eabc60b0ad7","tarball":"https://registry.npmjs.org/@careerdriver/black-box/-/black-box-1.0.3.tgz","fileCount":7,"integrity":"sha512-N9V+uOgSMH3CS9lfbl4Fqs7qRpXv/thSa3GlPMlOL1aoxjqTmJNq5zZxtbedchFbATuvml9hFRZmE/YQ+K/roA==","signatures":[{"sig":"MEUCIE1jir6Z9JDEnqwEz4akPyV7cAPF2Ja/y64jpwehkVIrAiEA6oCGxnGQpO70lLl990zO/un3DzRL3HGtFVVO/WqA44I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134344},"main":"./dist/runtime.js","type":"module","types":"./dist/runtime.d.ts","unpkg":"./dist/runtime.global.js","module":"./dist/runtime.js","exports":{".":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js"},"./iife":"./dist/runtime.global.js"},"gitHead":"cb1946d063cc49d1ed007b3a4de8697954ea6b61","private":false,"scripts":{"dev":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --watch","build":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --minify --sourcemap --dts","type-check":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},"_npmVersion":"11.6.2","description":"**AI Search Optimization Runtime** - Minimal JavaScript runtime (<10KB gzipped) that optimizes websites for AI search engines by injecting structured data (JSON-LD schemas), building authority signals, and enabling AI model comprehension.","directories":{},"_nodeVersion":"25.2.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.0.10"},"_npmOperationalInternal":{"tmp":"tmp/black-box_1.0.3_1769532984249_0.19024516036072492","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@careerdriver/black-box","version":"1.1.0","keywords":["ai-search","gpt-optimization","schema.org","json-ld","seo","ai-visibility","structured-data","chatgpt","perplexity","claude"],"author":{"name":"CareerDriver"},"license":"UNLICENSED","_id":"@careerdriver/black-box@1.1.0","maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"homepage":"https://github.com/careerdriver/gpto-suite#readme","bugs":{"url":"https://github.com/careerdriver/gpto-suite/issues"},"dist":{"shasum":"6b7720a184692e2beb9aeff85f4dcfbd359ad8b6","tarball":"https://registry.npmjs.org/@careerdriver/black-box/-/black-box-1.1.0.tgz","fileCount":7,"integrity":"sha512-hL3qYQsWhFBgE7dtXT+JIYbtf+TltY5YtUOM6RTqSP3IdaQiQkPMyx+ns5fIfFCCTXFlN5jfSa71FCyLdCylfw==","signatures":[{"sig":"MEYCIQDQRQYv33G5LFONWOuWE9wF9piNxf1wfhG27KW0jOCO/AIhAPXGf6Gt5saPvz2VTLMyon/hRaoymmIWw3HUzFlHn1Qz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":137190},"main":"./dist/runtime.js","type":"module","types":"./dist/runtime.d.ts","unpkg":"./dist/runtime.global.js","module":"./dist/runtime.js","exports":{".":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js"},"./iife":"./dist/runtime.global.js"},"gitHead":"be7282b15b76113cbd06cd08465590f34f852fba","private":false,"scripts":{"dev":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --watch","build":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --minify --sourcemap --dts","type-check":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},"repository":{"url":"git+https://github.com/careerdriver/gpto-suite.git","type":"git"},"_npmVersion":"11.6.2","description":"AI Search Optimization Runtime - Automatic JSON-LD schema injection with server-side rendering support","directories":{},"_nodeVersion":"25.2.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.0.10"},"_npmOperationalInternal":{"tmp":"tmp/black-box_1.1.0_1769549552513_0.2812438648017217","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@careerdriver/black-box","version":"1.1.2","keywords":["ai-search","gpt-optimization","schema.org","json-ld","seo","ai-visibility","structured-data","chatgpt","perplexity","claude"],"author":{"name":"CareerDriver"},"license":"UNLICENSED","_id":"@careerdriver/black-box@1.1.2","maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"homepage":"https://github.com/careerdriver/gpto-suite#readme","bugs":{"url":"https://github.com/careerdriver/gpto-suite/issues"},"dist":{"shasum":"33c2af91b88974646ef23f37f92ca96f9ba13ae0","tarball":"https://registry.npmjs.org/@careerdriver/black-box/-/black-box-1.1.2.tgz","fileCount":7,"integrity":"sha512-Pmk7EatVRNMDwbveZ9C0F7ICDZUWXJpIb7t5TgNhbONn8kk42Y5rzOBvOsYvc9IGFw+H4c46wWIr3kmLFBCywg==","signatures":[{"sig":"MEUCIQDnyKbPlks7obJhJMJNWm3xddWMMLABEO2p4KDRjYnrCgIgUH/SUf8SR9ozCUO7oVQPSytFrFyZwi9BIxFmcykFdVA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":102723},"main":"./dist/runtime.js","type":"module","types":"./dist/runtime.d.ts","unpkg":"./dist/runtime.global.js","module":"./dist/runtime.js","exports":{".":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js"},"./iife":"./dist/runtime.global.js"},"gitHead":"3872df203d5a46f9b2ac4dd459ef3cfd0e96d37d","private":false,"scripts":{"dev":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --watch","build":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --minify --sourcemap --dts","type-check":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},"repository":{"url":"git+https://github.com/careerdriver/gpto-suite.git","type":"git"},"_npmVersion":"11.6.2","description":"AI Search Optimization Runtime - Automatic JSON-LD schema injection with server-side rendering support","directories":{},"_nodeVersion":"25.2.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.0.10"},"_npmOperationalInternal":{"tmp":"tmp/black-box_1.1.2_1769610640440_0.6203760550675026","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@careerdriver/black-box","version":"1.1.3","keywords":["ai-search","gpt-optimization","schema.org","json-ld","seo","ai-visibility","structured-data","chatgpt","perplexity","claude"],"author":{"name":"CareerDriver"},"license":"UNLICENSED","_id":"@careerdriver/black-box@1.1.3","maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"homepage":"https://github.com/careerdriver/gpto-suite#readme","bugs":{"url":"https://github.com/careerdriver/gpto-suite/issues"},"dist":{"shasum":"a489423f0332354be40331e078ad0afbd9ca3272","tarball":"https://registry.npmjs.org/@careerdriver/black-box/-/black-box-1.1.3.tgz","fileCount":7,"integrity":"sha512-CMrwQZFW2K4kPptk04mINNgEUA6DvWegLbopxg9HAOj+IKNsJH4DNxiQmynszsQvuEoQ+WNGi086JulxAiCFvg==","signatures":[{"sig":"MEUCIQCqj5qExl56mQJOUESNmhvQo834KhZkRZam0zat09xQRQIgBz4nQyTObyVeaNVg07j0NWDi5otbSbAK6ducyugb92c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110297},"main":"./dist/runtime.js","type":"module","types":"./dist/runtime.d.ts","unpkg":"./dist/runtime.global.js","module":"./dist/runtime.js","exports":{".":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js"},"./iife":"./dist/runtime.global.js"},"gitHead":"2d5bedf1bef2d87ad251eea8275ee3b3f0980443","private":false,"scripts":{"dev":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --watch","build":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --minify --sourcemap --dts","type-check":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},"repository":{"url":"git+https://github.com/careerdriver/gpto-suite.git","type":"git"},"_npmVersion":"11.6.2","description":"AI Search Optimization Runtime - Automatic JSON-LD schema injection with server-side rendering support","directories":{},"_nodeVersion":"25.2.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.0.10"},"_npmOperationalInternal":{"tmp":"tmp/black-box_1.1.3_1769631218408_0.27428744742987643","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@careerdriver/black-box","version":"1.2.0","keywords":["ai-search","gpt-optimization","schema.org","json-ld","seo","ai-visibility","structured-data","chatgpt","perplexity","claude"],"author":{"name":"CareerDriver"},"license":"UNLICENSED","_id":"@careerdriver/black-box@1.2.0","maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"homepage":"https://github.com/careerdriver/gpto-suite#readme","bugs":{"url":"https://github.com/careerdriver/gpto-suite/issues"},"dist":{"shasum":"82e9f9ae4827776632ca68975e56ca11155a1ae8","tarball":"https://registry.npmjs.org/@careerdriver/black-box/-/black-box-1.2.0.tgz","fileCount":7,"integrity":"sha512-tpqSVbxGhhdO/SnFgdlfqvvCpyRuXOj3+kOOIGylSVMicSJDzHiYN6Mu+s5wtrHL6YspyVvDzoGngSGrSk4XVg==","signatures":[{"sig":"MEQCIGj20Nxw5x3M60T2FKIByES6Zkgq6V1Aei11aauEZqAfAiAIoPEGbAGTZaj4wE1L8GM0BK9Ii4+1ZHNmcYLxNHYe5w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":193070},"main":"./dist/runtime.js","type":"module","_from":"file:careerdriver-black-box-1.2.0.tgz","types":"./dist/runtime.d.ts","unpkg":"./dist/runtime.global.js","module":"./dist/runtime.js","exports":{".":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js"},"./iife":"./dist/runtime.global.js"},"private":false,"scripts":{"dev":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --watch","build":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --minify --sourcemap --dts","type-check":"tsc --noEmit"},"_npmUser":{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},"_resolved":"/private/var/folders/vh/jqjv161s2qq_9pwxmzftyzj40000gn/T/30e4247409e3bf2315831a7ac119fcd1/careerdriver-black-box-1.2.0.tgz","_integrity":"sha512-tpqSVbxGhhdO/SnFgdlfqvvCpyRuXOj3+kOOIGylSVMicSJDzHiYN6Mu+s5wtrHL6YspyVvDzoGngSGrSk4XVg==","repository":{"url":"git+https://github.com/careerdriver/gpto-suite.git","type":"git"},"_npmVersion":"11.6.2","description":"AI Search Optimization Runtime - Automatic JSON-LD schema injection with server-side rendering support","directories":{},"_nodeVersion":"25.2.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.0.10"},"_npmOperationalInternal":{"tmp":"tmp/black-box_1.2.0_1769696874157_0.6569801319813064","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@careerdriver/black-box","version":"1.2.1","keywords":["ai-search","gpt-optimization","schema.org","json-ld","seo","ai-visibility","structured-data","chatgpt","perplexity","claude"],"author":{"name":"CareerDriver"},"license":"UNLICENSED","_id":"@careerdriver/black-box@1.2.1","maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"homepage":"https://github.com/careerdriver/gpto-suite#readme","bugs":{"url":"https://github.com/careerdriver/gpto-suite/issues"},"dist":{"shasum":"2b115a8af18c103b9292554b70899ae3aa80c029","tarball":"https://registry.npmjs.org/@careerdriver/black-box/-/black-box-1.2.1.tgz","fileCount":7,"integrity":"sha512-Ugk5IssBPAjDxS7V6PBvy2WGezZYeTia8t38JvZlgmHRtSKOBE81wVIKpeQ1g3QFYWDUXb4ej1HWn6nnabBDUQ==","signatures":[{"sig":"MEUCIQD88kfTCb3LznYSfvFzX+UGo1RoNGpL6e1aEDCsvGiy7AIgCHkcb7mVnQegHPuXZSYJ7uGRqgugvEtOE5RnmxmPeik=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":203526},"main":"./dist/runtime.js","type":"module","types":"./dist/runtime.d.ts","unpkg":"./dist/runtime.global.js","module":"./dist/runtime.js","exports":{".":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js"},"./iife":"./dist/runtime.global.js"},"gitHead":"e6c9ae4a650e30e03adc9d1e4620221f1c19bc4c","private":false,"scripts":{"dev":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --watch","build":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --minify --sourcemap --dts","type-check":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},"repository":{"url":"git+https://github.com/careerdriver/gpto-suite.git","type":"git"},"_npmVersion":"11.6.2","description":"AI Search Optimization Runtime - Automatic JSON-LD schema injection with server-side rendering support","directories":{},"_nodeVersion":"25.2.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.0.10"},"_npmOperationalInternal":{"tmp":"tmp/black-box_1.2.1_1769719674897_0.11001472041938753","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@careerdriver/black-box","version":"1.2.2","keywords":["ai-search","gpt-optimization","schema.org","json-ld","seo","ai-visibility","structured-data","chatgpt","perplexity","claude"],"author":{"name":"CareerDriver"},"license":"UNLICENSED","_id":"@careerdriver/black-box@1.2.2","maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"homepage":"https://github.com/careerdriver/gpto-suite#readme","bugs":{"url":"https://github.com/careerdriver/gpto-suite/issues"},"dist":{"shasum":"f4c71bcee26723899bc6ae666614263a2fc587cf","tarball":"https://registry.npmjs.org/@careerdriver/black-box/-/black-box-1.2.2.tgz","fileCount":7,"integrity":"sha512-dZBRm2ouTVxyqYx9Tdl/cq1Vk9WRiv1MeQzKYk4hyCTh5v8exNVezGFRPW55uAckwC/NpR7LNO88rL53fRHJkA==","signatures":[{"sig":"MEUCIQCQAxUpjmYl4EaoAjGjV35dct2msU7OituIY8AGdOUIBQIgRw0QCLGcwVL0rk3aFnb0NpgqYIViyfrgUZgQVOlgh+U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":205096},"main":"./dist/runtime.js","type":"module","types":"./dist/runtime.d.ts","unpkg":"./dist/runtime.global.js","module":"./dist/runtime.js","exports":{".":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js"},"./iife":"./dist/runtime.global.js"},"gitHead":"77121e9d5f5c7fff35911dcd2aac9bb8f6fca4b6","private":false,"scripts":{"dev":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --watch","build":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --minify --sourcemap --dts","type-check":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},"repository":{"url":"git+https://github.com/careerdriver/gpto-suite.git","type":"git"},"_npmVersion":"11.6.2","description":"AI Search Optimization Runtime - Automatic JSON-LD schema injection with server-side rendering support","directories":{},"_nodeVersion":"25.2.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.0.10"},"_npmOperationalInternal":{"tmp":"tmp/black-box_1.2.2_1769721133843_0.5231683614473961","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"@careerdriver/black-box","version":"1.2.3","keywords":["ai-search","gpt-optimization","schema.org","json-ld","seo","ai-visibility","structured-data","chatgpt","perplexity","claude"],"author":{"name":"CareerDriver"},"license":"UNLICENSED","_id":"@careerdriver/black-box@1.2.3","maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"homepage":"https://github.com/careerdriver/gpto-suite#readme","bugs":{"url":"https://github.com/careerdriver/gpto-suite/issues"},"dist":{"shasum":"5f8d51905d7e84a26cf6e7f19db3ece4835195fe","tarball":"https://registry.npmjs.org/@careerdriver/black-box/-/black-box-1.2.3.tgz","fileCount":7,"integrity":"sha512-vXxtK9KrUOO2YQDpHaphYxr8DOnkdqhTNfetuHmLvheq+o8QKtYYPKbwxWpt5Aq8laLFBhSc4QQQnNO4F7bDPQ==","signatures":[{"sig":"MEUCIE+dm7Eo1xdljnekh8OoaDe5gd6/sWmBnGVE1s7NNDRSAiEA1gplJbrk+0FaK9GNyXJaoQnSa2322l4tUPVcrkWvnWw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":283181},"main":"./dist/runtime.js","type":"module","_from":"file:careerdriver-black-box-1.2.3.tgz","types":"./dist/runtime.d.ts","unpkg":"./dist/runtime.global.js","module":"./dist/runtime.js","exports":{".":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js"},"./iife":"./dist/runtime.global.js"},"private":false,"scripts":{"dev":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --watch","build":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --minify --sourcemap --dts","type-check":"tsc --noEmit"},"_npmUser":{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},"_resolved":"/private/var/folders/vh/jqjv161s2qq_9pwxmzftyzj40000gn/T/58a0a96d340eebef0f5313a522dc8968/careerdriver-black-box-1.2.3.tgz","_integrity":"sha512-vXxtK9KrUOO2YQDpHaphYxr8DOnkdqhTNfetuHmLvheq+o8QKtYYPKbwxWpt5Aq8laLFBhSc4QQQnNO4F7bDPQ==","repository":{"url":"git+https://github.com/careerdriver/gpto-suite.git","type":"git"},"_npmVersion":"11.6.2","description":"AI Search Optimization Runtime - Automatic JSON-LD schema injection with server-side rendering support","directories":{},"_nodeVersion":"25.2.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.0.10"},"_npmOperationalInternal":{"tmp":"tmp/black-box_1.2.3_1772651611776_0.6770960923028073","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@careerdriver/black-box","version":"1.3.0","keywords":["ai-search","gpt-optimization","schema.org","json-ld","seo","ai-visibility","structured-data","chatgpt","perplexity","claude"],"author":{"name":"CareerDriver"},"license":"UNLICENSED","_id":"@careerdriver/black-box@1.3.0","maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"homepage":"https://github.com/careerdriver/gpto-suite#readme","bugs":{"url":"https://github.com/careerdriver/gpto-suite/issues"},"dist":{"shasum":"d4729fdc53a86aad3d5d39f241560b41eefee47e","tarball":"https://registry.npmjs.org/@careerdriver/black-box/-/black-box-1.3.0.tgz","fileCount":7,"integrity":"sha512-7+A/i2POlNjGMpwtakqEN7bOXzhUUrjX9GsDpTJN7vgHTM0ehfr2c/qz5y3iSWx/dAvJFNsSa3f84dLIqD+0Zg==","signatures":[{"sig":"MEYCIQCJ3jYmqSvbtCb+QSjFG+5f/DTi++RknmDTpwaNC2QLQgIhANGECKYyM/ibjDmEKz21VsP2sbRHWTadHHCubvucHJ7l","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":284560},"main":"./dist/runtime.js","type":"module","types":"./dist/runtime.d.ts","unpkg":"./dist/runtime.global.js","module":"./dist/runtime.js","exports":{".":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js"},"./iife":"./dist/runtime.global.js"},"gitHead":"ecbf69a3f4c0f603dd2901db2ee1a6b7f65535df","private":false,"scripts":{"dev":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --watch","build":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --minify --sourcemap --dts","type-check":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},"repository":{"url":"git+https://github.com/careerdriver/gpto-suite.git","type":"git"},"_npmVersion":"11.6.2","description":"AI Search Optimization Runtime - Automatic JSON-LD schema injection with server-side rendering support","directories":{},"_nodeVersion":"25.2.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.0.10"},"_npmOperationalInternal":{"tmp":"tmp/black-box_1.3.0_1772721682832_0.8471948876277708","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@careerdriver/black-box","version":"1.4.0","description":"AI Search Optimization Runtime - Automatic JSON-LD schema injection with server-side rendering support","keywords":["ai-search","gpt-optimization","schema.org","json-ld","seo","ai-visibility","structured-data","chatgpt","perplexity","claude"],"repository":{"type":"git","url":"git+https://github.com/careerdriver/gpto-suite.git"},"private":false,"type":"module","main":"./dist/runtime.js","module":"./dist/runtime.js","types":"./dist/runtime.d.ts","exports":{".":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js"},"./iife":"./dist/runtime.global.js"},"unpkg":"./dist/runtime.global.js","publishConfig":{"access":"public"},"author":{"name":"CareerDriver"},"license":"UNLICENSED","bugs":{"url":"https://github.com/careerdriver/gpto-suite/issues"},"homepage":"https://github.com/careerdriver/gpto-suite#readme","devDependencies":{"@types/node":"^25.0.10","tsup":"^8.5.1","typescript":"^5.9.3"},"scripts":{"build":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --minify --sourcemap --dts","dev":"tsup src/runtime.ts --format iife,esm --global-name PantheraBlackBox --watch","type-check":"tsc --noEmit"},"_id":"@careerdriver/black-box@1.4.0","_integrity":"sha512-Z8KtZGpWjCVmIvW7ys1yS64YG2LhUH/1qAqv1/9FBETwtAAwSlDPc2vOze8r9GZdja/s0KB0P04EDvfJzajg/w==","_resolved":"/private/var/folders/vh/jqjv161s2qq_9pwxmzftyzj40000gn/T/e94e936e992bc0b8b8bdfa0cc51d70d4/careerdriver-black-box-1.4.0.tgz","_from":"file:careerdriver-black-box-1.4.0.tgz","_nodeVersion":"25.2.1","_npmVersion":"11.6.2","dist":{"integrity":"sha512-Z8KtZGpWjCVmIvW7ys1yS64YG2LhUH/1qAqv1/9FBETwtAAwSlDPc2vOze8r9GZdja/s0KB0P04EDvfJzajg/w==","shasum":"a5839f691102de967b4e5a4b7133918f1aa2f25c","tarball":"https://registry.npmjs.org/@careerdriver/black-box/-/black-box-1.4.0.tgz","fileCount":7,"unpackedSize":380664,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGC18brOdgbI0asWRTfwJtuM9tlQ5NNAHou1cdUQaxmOAiEA9FZFZuIcDRUjnEdpoP71TZeYBQCjLN0ivG0kzNFbLJY="}]},"_npmUser":{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},"directories":{},"maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/black-box_1.4.0_1779749855997_0.8468859690805415"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-22T19:59:27.547Z","modified":"2026-05-25T22:57:36.274Z","1.0.0":"2026-01-22T19:59:27.900Z","1.0.1":"2026-01-26T16:16:28.301Z","1.0.2":"2026-01-26T17:49:32.374Z","1.0.3":"2026-01-27T16:56:24.420Z","1.1.0":"2026-01-27T21:32:32.667Z","1.1.2":"2026-01-28T14:30:40.611Z","1.1.3":"2026-01-28T20:13:38.566Z","1.2.0":"2026-01-29T14:27:54.316Z","1.2.1":"2026-01-29T20:47:55.045Z","1.2.2":"2026-01-29T21:12:14.046Z","1.2.3":"2026-03-04T19:13:31.953Z","1.3.0":"2026-03-05T14:41:23.016Z","1.4.0":"2026-05-25T22:57:36.137Z"},"bugs":{"url":"https://github.com/careerdriver/gpto-suite/issues"},"author":{"name":"CareerDriver"},"license":"UNLICENSED","homepage":"https://github.com/careerdriver/gpto-suite#readme","keywords":["ai-search","gpt-optimization","schema.org","json-ld","seo","ai-visibility","structured-data","chatgpt","perplexity","claude"],"repository":{"type":"git","url":"git+https://github.com/careerdriver/gpto-suite.git"},"description":"AI Search Optimization Runtime - Automatic JSON-LD schema injection with server-side rendering support","maintainers":[{"name":"braieswabe-cdhq","email":"joseph@careerdriver.com"},{"name":"mcelestino-conversion","email":"mcelestino@conversionia.com"}],"readme":"# Panthera Black Box Runtime\n\n**AI Search Optimization Runtime** - Minimal JavaScript runtime (<10KB gzipped) that optimizes websites for AI search engines by injecting structured data (JSON-LD schemas), building authority signals, and enabling AI model comprehension.\n\n## Purpose\n\nThe Black Box runtime optimizes websites specifically for **AI search engines** (ChatGPT, Perplexity, Claude, etc.) by:\n\n1. **Injecting JSON-LD Structured Data** - Makes content easily parseable by AI models\n2. **Building Authority Signals** - Creates trust graphs through Authority Grove\n3. **Ensuring Factual Accuracy** - Uses TruthSeeker to ensure AI models prioritize your content\n4. **Tracking AI Visibility** - Sends telemetry to measure AI search performance\n\n## Safety\n\n- **No eval()** - No code execution\n- **No Function()** - No dynamic function creation\n- **Declarative only** - All operations are safe JSON/DOM manipulations\n- **Fail-safe** - Never breaks the host site\n\n## How It Works\n\nThe runtime reads JSON configuration from your GPTO dashboard and automatically:\n\n- ✅ Injects JSON-LD schemas (Organization, Product, Service, FAQ, etc.) **client-side**\n- ✅ **Server-side schema injection** available for external audit tool visibility\n- ✅ Builds authority signals through `sameAs` links and keywords\n- ✅ Sends telemetry to track AI search visibility\n- ✅ **Periodic telemetry** sends comprehensive metrics every 5 minutes for real-time dashboard updates\n- ✅ Ensures content is structured for AI model comprehension\n- ✅ **Automatically updates** schemas when configuration changes\n- ✅ **Telemetry-driven improvements** optimize schemas over time\n\n## Usage\n\n### Context-Only Mode (No Header/HTML Injection)\n\nIf you want Blackbox to collect telemetry/context only (without changing visible HTML or `<head>`), set:\n\n```json\n{\n  \"panthera_blackbox\": {\n    \"frontend_mode\": \"context_only\",\n    \"invisible_context_only\": true\n  }\n}\n```\n\nIn this mode, Blackbox keeps config fetch + telemetry sending active, but skips schema/meta/title/content injections.\n\n### Quick Start Guide\n\n#### Step 1: Install via npm (Primary)\n\n```bash\nnpm install @careerdriver/black-box\n```\n\nThe runtime is ESM-only and works with modern bundlers (Vite, Next.js, Webpack 5) and ESM-compatible environments.\n\n#### Step 2: Import and initialize\n\n```ts\nimport { PantheraBlackBox } from '@careerdriver/black-box';\n\nconst blackBox = new PantheraBlackBox({\n  configUrl: 'https://gpto-dashboard.vercel.app/api/sites/YOUR-SITE-ID/config',\n  telemetryUrl: 'https://gpto-dashboard.vercel.app/api/telemetry/events',\n  siteId: 'YOUR-SITE-ID',\n});\n\nawait blackBox.init();\n```\n\n#### Step 3: (Recommended) Add Server-Side Schema Injection\n\nFor optimal visibility with external audit tools, inject schemas server-side. Schemas update automatically when your configuration changes.\n\n**Option A: Schema Render Endpoint**\n\nFetch schemas and inject into your HTML template:\n\n```typescript\n// Next.js / React\nconst schemas = await fetch('https://gpto-dashboard.vercel.app/api/sites/[your-site-id]/render');\nconst schemaHTML = await schemas.text();\n\n// Inject into HTML\n<div dangerouslySetInnerHTML={{ __html: schemaHTML }} />\n```\n\n**Option B: Proxy Endpoint**\n\nUse for external audit tools or testing:\n\n```\nhttps://gpto-dashboard.vercel.app/api/sites/[your-site-id]/proxy?url=https://your-domain.com\n```\n\nReplace `your-domain.com` with your actual domain.\n\n**✅ Automatic Updates:** Schemas are generated from your configuration and update automatically. No manual HTML edits needed!\n\n### Installation (Canonical: NPM + ESM)\n\n#### Using npm (Primary)\n\n```bash\nnpm install @careerdriver/black-box\n```\n\nThe runtime is ESM-only and works with modern bundlers (Vite, Next.js, Webpack 5) and ESM-compatible environments.\n\n#### Step 2: Import and Initialize\n\n```ts\nimport { PantheraBlackBox } from '@careerdriver/black-box';\n\nconst blackBox = new PantheraBlackBox({\n  configUrl: 'https://gpto-dashboard.vercel.app/api/sites/YOUR-SITE-ID/config',\n  telemetryUrl: 'https://gpto-dashboard.vercel.app/api/telemetry/events',\n  siteId: 'YOUR-SITE-ID',\n});\n\nawait blackBox.init();\n```\n\n#### Using pnpm\n\n```bash\n# Install as a dependency\npnpm add @careerdriver/black-box\n\n# Install as a dev dependency\npnpm add -D @careerdriver/black-box\n\n# Install specific version\npnpm add @careerdriver/black-box@1.4.0\n\n# Install latest version (includes periodic telemetry)\npnpm add @careerdriver/black-box@latest\n```\n\n**Note:** v1.2.0+ includes periodic telemetry for real-time dashboard updates. See [Periodic Telemetry Guide](./PERIODIC_TELEMETRY.md) for details.\n\n#### Using npm\n\n```bash\n# Install latest version\nnpm install @careerdriver/black-box@latest\n\n# Install specific version\nnpm install @careerdriver/black-box@1.4.0\n```\n\n#### Using yarn\n\n```bash\n# Install latest version (includes periodic telemetry)\nyarn add @careerdriver/black-box@latest\n\n# Install specific version\nyarn add @careerdriver/black-box@1.4.0\n```\n\n### ESM Import Usage\n\n```ts\nimport { PantheraBlackBox } from '@careerdriver/black-box';\n\nconst blackBox = new PantheraBlackBox({\n  configUrl: 'https://api.example.com/api/sites/[site-id]/config',\n  telemetryUrl: 'https://api.example.com/api/telemetry/events',\n  siteId: 'your-site-id',\n});\n\nawait blackBox.init();\n```\n\n### Browser Usage (Script Tag / CDN, fallback)\n\n#### Via unpkg CDN\n\nAdd the script tag to your HTML:\n\n```html\n<script\n  src=\"https://unpkg.com/@careerdriver/black-box@latest/dist/runtime.global.js\"\n  data-config-url=\"https://api.example.com/api/sites/[site-id]/config\"\n  data-telemetry-url=\"https://api.example.com/api/telemetry/events\"\n  data-site-id=\"your-site-id\"\n  async\n></script>\n```\n\n**Note:** The `@latest` version includes periodic telemetry (v1.2.0+). To use a specific version, replace `@latest` with `@1.4.0` or your preferred version.\n\n#### Via Local Installation\n\nIf you've installed via pnpm/npm, reference the local file:\n\n```html\n<script\n  src=\"./node_modules/@careerdriver/black-box/dist/runtime.global.js\"\n  data-config-url=\"https://api.example.com/api/sites/[site-id]/config\"\n  data-telemetry-url=\"https://api.example.com/api/telemetry/events\"\n  data-site-id=\"your-site-id\"\n  async\n></script>\n```\n\n### Manual Initialization\n\n```javascript\nconst blackBox = new PantheraBlackBox({\n  configUrl: 'https://api.example.com/api/sites/[site-id]/config',\n  telemetryUrl: 'https://api.example.com/api/telemetry/events',\n  siteId: 'your-site-id',\n});\n\nawait blackBox.init();\n```\n\n### Server-Side Schema Injection (Recommended for External Audit Tools)\n\nFor optimal visibility with external audit tools that don't execute JavaScript, you can automatically inject schemas server-side:\n\n#### Option 1: Schema Render Endpoint\n\nFetch schemas and inject into your HTML template:\n\n```typescript\n// Next.js / React Server Component\nasync function getSchemas(siteId: string) {\n  const response = await fetch(`https://gpto-dashboard.vercel.app/api/sites/${siteId}/render`);\n  return await response.text();\n}\n\nexport default async function Page() {\n  const schemaScripts = await getSchemas('your-site-id');\n  \n  return (\n    <html>\n      <head>\n        <div dangerouslySetInnerHTML={{ __html: schemaScripts }} />\n      </head>\n      <body>{/* Your content */}</body>\n    </html>\n  );\n}\n```\n\n#### Option 2: Proxy Endpoint\n\nUse the proxy endpoint for external audit tools:\n\n```\nhttps://gpto-dashboard.vercel.app/api/sites/[site-id]/proxy?url=https://your-domain.com\n```\n\nThis automatically serves your page with schemas injected server-side.\n\n#### Option 3: Server-Side Utility\n\nImport and use the schema generator directly:\n\n```typescript\nimport { generateSchemaScriptTags, injectSchemasIntoHTML } from '@gpto/servos/gpto';\n\n// Generate schema script tags\nconst schemaScripts = generateSchemaScriptTags(config.panthera_blackbox);\n\n// Or inject into existing HTML\nconst htmlWithSchemas = injectSchemasIntoHTML(html, config.panthera_blackbox);\n```\n\n**Benefits:**\n- ✅ Schemas visible to external audit tools\n- ✅ Automatic updates when config changes\n- ✅ No manual HTML edits required\n- ✅ Works alongside client-side Black Box injection\n\n## AI Search Optimization Features\n\n### JSON-LD Schema Injection\nAutomatically injects structured data that AI models can parse:\n- Organization schema with authority signals\n- Product/Service schemas (Silver/Gold tiers)\n- FAQ schemas for question-answer pairs\n- LocalBusiness schemas for geo-targeting\n\n### Authority Grove Integration\nBuilds trust signals through:\n- `sameAs` links (social profiles, other domains)\n- Keywords and verticals\n- Partner network relationships\n\n### TruthSeeker Integration\nEnsures content is:\n- Factually accurate\n- Authoritative\n- Fair and unbiased\n\n### Periodic Telemetry (v1.2.0+)\nAutomatically sends comprehensive metrics to the GPTO dashboard every 5 minutes:\n\n**Features:**\n- **Real-time Dashboard Updates**: Populates telemetry, confusion, authority, schema, and coverage metrics\n- **Comprehensive Metrics**: Collects real metrics from page state (JSON-LD schemas, authority signals, content gaps)\n- **Confusion Detection**: Tracks repeated searches, dead ends, and drop-offs\n- **Coverage Analysis**: Detects content gaps, funnel stages, and intent mismatches\n- **Configurable Interval**: Default 5 minutes, customizable via config\n\n**Enable Periodic Telemetry:**\n\nAdd to your site configuration in the GPTO dashboard:\n\n```json\n{\n  \"panthera_blackbox\": {\n    \"telemetry\": {\n      \"emit\": true,\n      \"keys\": [\n        \"ts.authority\",\n        \"ai.schemaCompleteness\",\n        \"ai.structuredDataQuality\",\n        \"ai.authoritySignals\",\n        \"ai.searchVisibility\"\n      ],\n      \"periodic\": {\n        \"enabled\": true,\n        \"intervalMs\": 300000\n      }\n    }\n  }\n}\n```\n\n**What Gets Sent:**\n- Page views, interactions, and searches (aggregated counts)\n- Schema completeness and quality scores\n- Authority and trust signals\n- Confusion patterns (repeated searches, dead ends, drop-offs)\n- Content gaps and funnel stage detection\n- Intent detection and coverage analysis\n- Page-level coverage metadata (`page`, `missingContentDimensions`)\n- Recommended focus hints (`recommendedFocus`) for dashboard explanations\n- Rich confusion evidence (`deadEndsDetail`, `dropOffsDetail`, `repeatedSearchesDetail`)\n- Config-aware capture metadata (`captureMeta.configFrameworkVersion`)\n- Recommendation feedback references (`recommendationFeedback.activeReadabilityActionIds`)\n\n### AI Readability Config Contract (Additive)\n\nThe config endpoint can now include `panthera_blackbox.ai_readability` with evidence-backed clarity scoring and recommended actions.\n\n```json\n{\n  \"panthera_blackbox\": {\n    \"ai_readability\": {\n      \"frameworkVersion\": \"gpto.ai_readability.v1\",\n      \"packageTier\": \"bronze\",\n      \"overall\": { \"score\": 0, \"grade\": \"F\" },\n      \"recommendedActions\": [],\n      \"insufficientData\": {\n        \"reason\": \"Readability rollup is still building.\",\n        \"missingSignals\": [\"periodic telemetry\", \"readability rollup\"]\n      }\n    }\n  }\n}\n```\n\nGPTO readability metrics describe clarity and machine-readability. They do not claim traffic, revenue, lead, conversion, or ROI outcomes.\n\n**Dashboard Integration:**\nAll periodic telemetry data automatically populates:\n- Telemetry dashboard (views, visits, top pages)\n- Confusion dashboard (dead ends, repeated searches)\n- Authority dashboard (trust scores, confidence gaps)\n- Schema dashboard (completeness, quality)\n- Coverage dashboard (content gaps, missing stages)\n- Business Brief (executive insights)\n- Pulse Cards (experience health, trust lift, coverage risk)\n- Recent and relevant\n\n## Build\n\n```bash\npnpm build\n```\n\nOutput:\n- `dist/runtime.js` (ESM)\n- `dist/runtime.global.js` (IIFE for script tag)\n- `dist/runtime.d.ts` (types)\n\n## Deployment\n\nDeploy to Vercel CDN for global distribution. The file should be served with appropriate cache headers.\n\n## Maintainer Release\n\nUse the release helper from repo root to validate runtime + suite compatibility before publishing:\n\n```bash\n./scripts/release-black-box.sh\n```\n\nAfter checks pass:\n\n```bash\ncd apps/black-box\nnpm publish --access public\n```\n\n## Version\n\n**Current Version:** `1.2.3`\n\n### What's New in v1.2.3\n\n- ✅ Additive telemetry enrichment for confusion root-cause evidence\n- ✅ Additive telemetry enrichment for coverage detail and recommended focus\n- ✅ Backward-compatible payload shape (no breaking changes for integrators)\n- ✅ NPM-first installation guidance for website-integrated runtime\n\n### What's New in v1.2.0\n\n- ✅ **Periodic Telemetry**: Automatic comprehensive metrics collection every 5 minutes\n- ✅ **Real-time Dashboard Updates**: Populates all dashboard sections with live data\n- ✅ **Enhanced Metrics Collection**: Real metrics from page state (not random values)\n- ✅ **Confusion Detection**: Tracks repeated searches, dead ends, drop-offs\n- ✅ **Coverage Analysis**: Detects content gaps, funnel stages, intent mismatches\n- ✅ **Configurable Interval**: Customize periodic telemetry interval\n\n### Previous Features (v1.1.0)\n\n- ✅ Automatic server-side schema injection\n- ✅ Zero manual HTML edits required\n- ✅ Automatic schema updates when config changes\n- ✅ External audit tool visibility\n- ✅ Multiple integration options\n\nSee [CHANGELOG.md](../../CHANGELOG.md) for complete release notes.\n\n## AI Search Optimization vs Traditional SEO\n\n| Traditional SEO | GPTO (AI Search Optimization) |\n|----------------|-------------------------------|\n| Optimizes for Google/Bing | Optimizes for ChatGPT, Perplexity, Claude |\n| HTML meta tags | JSON-LD structured data |\n| Keywords & backlinks | Authority signals & trust graphs |\n| PageRank algorithm | AI model comprehension |\n| Human-readable content | AI-parseable structured data |\n","readmeFilename":"README.md"}