Full deployment history for this project.
chore: add auto approve+merge workflow
chore: add auto PR approve+merge workflow
chore: bump package version
chore: normalize package metadata and bump version
Merge remote updates while preserving original product branding
Consolidate 2 open pull requests Merged consolidation of open PRs: #16, #15
Merge remote-tracking branch 'origin/pr-15' into codex/consolidate-open-prs-20260720-170943
Add PlatPhorm trace header propagation
feat: add platform contract fallback routes
feat: complete platform discovery and MCP contract
chore: reconcile and restore pnpm build
⚡ Bolt: Add passive flag to scroll event listener Added the `{ passive: true }` flag to the scroll event listener in `components/header.tsx` to improve scrolling performance and reduce jank. Also fixed a failing accessibility test in `ui-ux.test.tsx` and documented the learning in `.jules/bolt.md`.
⚡ Bolt: Replace setInterval with requestAnimationFrame in AnimatedCounter Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
⚡ Bolt: Optimize AnimatedCounter re-renders - Replace `useState` within `AnimatedCounter` with direct DOM mutation (`ref.current.textContent`) via `requestAnimationFrame`. - This avoids excessive React re-renders (60 re-renders per second per counter during animation). - Added a cleanup function on unmount to cancel the animation frame. - Add journal entry to `.jules/bolt.md` documenting this optimization pattern. Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
🎨 Palette: Add keyboard accessibility to concept video thumbnail Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
🛡️ Sentinel: [CRITICAL] Fix information leakage in webhook logs - Removed webhook payload logging from `app/api/webhooks/n8n/route.ts` - Avoid echoing untrusted input back in NextResponse - Validated JSON payload without storing variable to pass linting - Added journal entry for learning about log leakage Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
🎨 Palette: Enhance Accessibility for Concept Video, Waitlist Form, and Mobile Header Menu - Added keyboard support (`role="button"`, `tabIndex={0}`, `onKeyDown`) to the concept video trailer thumbnail. - Enhanced waitlist form inputs with `required`, `aria-required="true"`, and visual indicator asterisks. - Added dynamic ARIA attributes (`aria-expanded`, `aria-label`, `aria-controls`) to the mobile header menu toggle. - Wrote tests to ensure logic works and is compliant via `tests/ui-ux.test.tsx`. - Updated `README.md` to reflect these features. - Created learning log in `.jules/palette.md`. Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
🛡️ Sentinel: Add security headers to middleware Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
⚡ Bolt: Optimize scroll event listener in Header Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
⚡ Bolt: Improve animation and scroll performance - Replaced `setInterval` with `requestAnimationFrame` in `TechSpecsSection` for smoother, sync-to-refresh-rate counting animations. - Added `{ passive: true }` to the window scroll event listener in `Header` to prevent scroll jank. Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
perf: use requestAnimationFrame in AnimatedCounter Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
Merge pull request #7 from mbarbine/fix-n8n-webhook-auth-13485756174384491758 🛡️ Sentinel: [CRITICAL] Fix missing authentication on n8n webhook
🛡️ Sentinel: [CRITICAL] Fix missing authentication on n8n webhook Added authorization check for incoming n8n webhook payloads to ensure only authorized clients can trigger automations. Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
🛡️ Sentinel: [MEDIUM] Fix reverse tabnabbing vulnerability - Added `rel="noopener noreferrer"` to all `target="_blank"` links in `components/footer.tsx`. - Recorded learning in `.jules/sentinel.md`. Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
🛡️ Sentinel: [MEDIUM] Fix reverse tabnabbing vulnerability - Added `rel="noopener noreferrer"` to all `target="_blank"` links in `components/footer.tsx`. - Recorded learning in `.jules/sentinel.md`. Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
🛡️ Sentinel: [MEDIUM] Fix reverse tabnabbing vulnerability - Added `rel="noopener noreferrer"` to all `target="_blank"` links in `components/footer.tsx`. - Recorded learning in `.jules/sentinel.md`. Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
⚡ Bolt: Extract CountdownTimer to prevent HeroSection re-renders Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
🎨 Palette: Add `aria-label` to language select elements - Added `aria-label="Select language"` to the desktop and mobile language selector `<select>` elements in `components/header.tsx` for improved screen reader accessibility. Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
Merge pull request #2 from mbarbine/bolt/perf-hero-mousemove-3747807715138079915 ⚡ Bolt: Remove unused mousemove listener causing unnecessary re-renders in HeroSection
🛡️ Sentinel: Add security headers to middleware Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
⚡ Bolt: Remove unused mousemove listener causing unnecessary re-renders in HeroSection Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
feat: final SEO, Sitemap tree, and discoverability enhancements - Implemented a sitemap index at /sitemap.xml pointing to localized sub-sitemaps. - Added comprehensive robots.txt with specialized LLM/Bot crawler support. - Enhanced SEO with Geo tags, ICBM, and bot-id meta tag. - Added id="botid" to the body for specific platform identification. - Refactored .well-known/mcp.json for standard discovery. - Expanded llms.txt to match the PlatPhorm News network cadence. - Integrated Vercel Speed Insights alongside Analytics. - Improved i18n visibility with localized links in the Footer and Header. - Added OpenAPI spec discovery link at /api-spec.json. Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
feat: final SEO, Sitemap tree, and discoverability enhancements - Implemented a sitemap index at /sitemap.xml pointing to localized sub-sitemaps. - Added comprehensive robots.txt with specialized LLM/Bot crawler support. - Enhanced SEO with Geo tags, ICBM, and bot-id meta tag. - Added id="botid" to the body for specific platform identification. - Refactored .well-known/mcp.json for standard discovery. - Expanded llms.txt to match the PlatPhorm News network cadence. - Integrated Vercel Speed Insights alongside Analytics. - Improved i18n visibility with localized links in the Footer and Header. - Added OpenAPI spec discovery link at /api-spec.json. Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
feat: final SEO, Sitemap tree, and discoverability enhancements - Implemented a sitemap index at /sitemap.xml pointing to localized sub-sitemaps. - Added comprehensive robots.txt with specialized LLM/Bot crawler support. - Enhanced SEO with Geo tags, ICBM, and bot-id meta tag. - Added id="botid" to the body for specific platform identification. - Refactored .well-known/mcp.json for standard discovery. - Expanded llms.txt to match the PlatPhorm News network cadence. - Integrated Vercel Speed Insights alongside Analytics. - Improved i18n visibility with localized links in the Footer and Header. - Added OpenAPI spec discovery link at /api-spec.json. Co-authored-by: mbarbine <3211492+mbarbine@users.noreply.github.com>
Merge pull request #1 from mbarbine/feat/sitemap-seo-cadence-overhaul-16348708892910189313 Comprehensive SEO, i18n, and API Overhaul