Prevents temporary upload files from being tracked in version control.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Adds a low-commitment, conversational template for initial problem
validation outreach. Focus on gut reaction rather than formal feedback.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Improves UX by resetting form after test email is successfully sent,
allowing admin to start fresh for the next newsletter.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fix HTML rendering in emails (triple braces for raw HTML in base template)
- Add missing email content templates (project-updates, implementation-notes, governance-discussions)
- Simplify SMTP port detection to respect .env configuration
- Exclude email-templates from CSP validation (inline styles required for email clients)
- Restore EMAIL_FROM to newsletter@agenticgovernance.digital
All templates now exist, emails render correctly, and ProtonBridge integration is complete.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Complete implementation of newsletter sending system with SendGrid integration:
Backend Implementation:
- EmailService class with template rendering (Handlebars)
- sendNewsletter() method with subscriber iteration
- Preview and send controller methods
- Admin routes with CSRF protection and authentication
- findByInterest() method in NewsletterSubscription model
Frontend Implementation:
- Newsletter send form with validation
- Preview functionality (opens in new window)
- Test send to single email
- Production send to all tier subscribers
- Real-time status updates
Dependencies:
- handlebars (template engine)
- @sendgrid/mail (email delivery)
- html-to-text (plain text generation)
Security:
- Admin-only routes with authentication
- CSRF protection on all POST endpoints
- Input validation and sanitization
- Confirmation dialogs for production sends
Next steps: Configure SendGrid API key in environment variables
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Changed from non-existent tractatus-framework/tractatus-framework (404)
to correct public repository AgenticGovernance/tractatus-framework (200 OK).
Fixes broken GitHub link on Agent Lightning integration page.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Changed from non-existent tractatus-framework/tractatus-framework
to actual repository AgenticGovernance/tractatus.
Fixes 404 error on GitHub link.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Changes:
1. Button visibility: Changed from white/transparent to solid white with black text
- Makes research@agenticgovernance.digital email clearly visible
2. Deployment optimization: Exclude demos/**/venv/ from rsync
- Prevents deploying massive Python library directories
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Adds exclusions for al-integration/models/ (28GB Mistral-7B) and venv directories.
Changes:
- Added al-integration/models/ to .gitignore
- Added al-integration/venv/ to .gitignore
- Added both to .rsyncignore for deployment exclusion
Fixes deployment OOM issue caused by attempting to upload 28GB model files.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Adds --yes flag to deployment script to support automated/non-interactive deployments.
Changes:
- Added AUTO_YES flag parsing
- Modified all read -p prompts to check AUTO_YES flag
- Auto-confirms all prompts when --yes is used
- Maintains interactive behavior by default
Usage: ./scripts/deploy.sh --yes
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Critical findings from 30+ minute stress test:
- CPU-based concurrent LLM inference not viable for production
- Process OOM-killed after 30min (exit 137) despite 4-bit quantization
- Sustained 1300% CPU utilization (13/16 cores) proved insufficient
- Memory creep observed: 8GB → 10GB+ under concurrent load
- Establishes GPU acceleration as mandatory, not optional
Key learnings:
- 4-bit quantization works but insufficient for concurrent loads
- Architecture integration validated under stress
- Single-threaded inference functional
- Negative results as valuable as positive findings
- Clear GPU migration path established (MS-S1 Max, Q4 2025)
Research integrity: Documented failure honestly with root cause analysis.
Maintains validated claims while clarifying production blockers.
All performance projections marked [NEEDS VERIFICATION] per inst_016.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Updates Agent Lightning integration documentation to reflect operational status:
- Status changed from "Preliminary findings (small-scale)" to "Operational (CPU baseline established)"
- Integration date updated to November 2025
- All translations updated (EN/DE/FR)
- Real LLM integration implemented with Mistral-7B (4-bit quantized)
- CPU stress testing validated with 1300%+ CPU utilization
- Documented CPU performance bottleneck and GPU migration plan
Technical changes:
- Modified stress_test_vllm.py to use transformers library instead of vLLM API
- Implemented 4-bit quantization (BitsAndBytes) to fit model in available RAM
- Added CPU_BASELINE_FINDINGS.md documenting operational metrics
- Validated governance architecture under RL optimization
Research integrity maintained: Clear distinction between validated claims
(operational CPU baseline) and future work (GPU acceleration, scale testing).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Fixed issues on Agent Lightning integration page:
- Changed GitHub link from non-existent tractatus-ai/agent-lightning-integration
to existing tractatus-framework/tractatus-framework repo
- Replaced unresponsive "Contact for Collaboration" button with email display
(research@agenticgovernance.digital)
- Removed broken click handler script that ran before feedback component loaded
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Created comprehensive markdown guide covering:
- Two-layer architecture (Tractatus + Agent Lightning)
- Demo 2 results (5% cost for 100% governance coverage)
- Five critical research gaps
- Getting started resources
- Research collaboration opportunities
Migrated to docs database for discoverability via docs.html search.
Related to Phase 2 Master Plan completion.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Root cause: Tailwind arbitrary value z-[9999] was not in compiled CSS
(tailwind.css last modified Oct 9, feedback.js modified Nov 3).
Solution: Use inline styles with !important for all critical properties:
- position: fixed
- bottom/right positioning
- z-index: 999999
- display: flex
- visibility: visible
- opacity: 1
This bypasses Tailwind compilation issues and ensures button is visible.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add Agent Lightning link to navbar menu (visible on all pages)
- Add prominent "What's New" banner on homepage highlighting AL integration
- Link to AL Discord and integration page
- Improve discoverability of AL integration for visitors
Related to Phase 2 Master Plan completion
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Feedback Button (z-index issue):
- Increased z-index from 40 to 9999 with !important
- Button was rendering but hidden behind other elements
- Added inline style as backup for z-index
Agent Lightning Page:
- Fixed text visibility: changed gray-300 to white on dark background
- Fixed broken download link: changed to GitHub repo link
- Fixed collaboration button: now triggers feedback FAB correctly
- Removed duplicate closing script tag
All issues resolved and deployed
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Changed init() to render FAB/modal before fetching CSRF token
- CSRF fetch now runs in parallel (non-blocking)
- Prevents button from never appearing if CSRF fetch fails/is slow
- Fixed cache version in agent-lightning.html to match deployment
Fixes issue where feedback button was invisible on all pages
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added Agent Lightning research section to researcher.html with Demo 2 results
- Created comprehensive /integrations/agent-lightning.html page
- Added Agent Lightning link in homepage hero section
- Updated Discord invite links (Tractatus + semantipy) across all pages
- Added feedback.js script to all key pages for live demonstration
Phase 2 of Master Plan complete: Discord setup → Website completion
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
PERMANENT FIX for cache invalidation issues:
- Automatically reload nginx after every deployment
- Clears all server-side caches immediately
- Prevents stale content being served
- No more manual cache clearing needed
This resolves recurring deployment cache issues.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
CRITICAL COMPLETE FIX:
- Service worker: 0.1.4
- version.json: 0.1.4
- ALL HTML files: Updated to cache version 0.1.2.1762128274267
- Service worker registration: ?v=0.1.4 cache-buster
This WILL force all clients to reload immediately.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
CRITICAL FIX: Forces browsers to fetch new service worker
- Add ?v=0.1.4 query parameter to service worker registration
- Browsers will now immediately fetch updated SW file
- Ensures Phase 2 content visible to ALL users immediately
- Fixes persistent caching issue
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
CRITICAL: Force all clients to dump old cached content
- Increment service worker CACHE_VERSION from 0.1.3 to 0.1.4
- Update version.json to 0.1.4
- Forces immediate cache invalidation for all users
- Ensures Phase 2 content (Agent Lightning, Discord) visible immediately
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>