Luca Sacchi Ricciardi
c7b86de3fb
feat: setup React + Vite + TypeScript frontend with Tailwind CSS
...
Initialize frontend infrastructure for Sprint 3 Landing Page:
Infrastructure Setup:
- Create React + Vite + TypeScript project in frontend/ directory
- Install Tailwind CSS, PostCSS, Autoprefixer dependencies
- Generate tailwind.config.js with content paths
- Generate postcss.config.js with plugins configuration
- Add Tailwind directives (@tailwind base/components/utilities) to src/index.css
- Update root .gitignore to exclude frontend/node_modules and build artifacts
Documentation Updates:
- Add CHANGELOG.md entry for Sprint 3 Landing Page development start
- Update README.md with frontend development instructions
- Add Node.js and npm prerequisites
- Document npm commands: install, dev, build, preview
Project Structure:
├── frontend/
│ ├── src/
│ │ ├── App.tsx
│ │ ├── main.tsx
│ │ ├── index.css (with Tailwind)
│ │ └── assets/
│ ├── index.html
│ ├── package.json
│ ├── tailwind.config.js
│ ├── postcss.config.js
│ └── vite.config.ts
Safety First:
- Verified directory doesn't exist before creation
- Checked all configuration files are valid
- Excluded node_modules from git
- No project code modified, only new frontend directory added
Refs: docs/frontend_landing_plan.md
Next: Start developing landing page components
2026-04-03 13:20:48 +02:00
Luca Sacchi Ricciardi
d0f530f757
docs: update AI Pipeline spec to use OpenRouter instead of OpenAI direct
...
Migrated from OpenAI direct API to OpenRouter for multiple advantages:
Cost Optimization:
- Reduced cost by ~25%: /bin/bash.00015/call (vs /bin/bash.0002/call OpenAI)
- Monthly estimate: ~/bin/bash.15 for 1000 calls (vs /bin/bash.20)
Provider Benefits:
- Access to 300+ AI models (OpenAI, Anthropic, Google, etc.)
- Automatic fallback between providers for 99.9% uptime
- Single API key for all providers
- Unified API interface
Technical Changes:
- Updated endpoint: api.openai.com → openrouter.ai/api/v1
- Model format: gpt-4o-mini → openai/gpt-4o-mini
- Added required headers: HTTP-Referer, X-Title
- Environment variables: OPENAI_API_KEY → OPENROUTER_API_KEY
+ OPENROUTER_SITE_URL (for OpenRouter ranking)
+ OPENROUTER_APP_NAME
Added Sections:
- 3.1 Why OpenRouter? (benefits comparison)
- 3.5 Model Fallback (automatic provider switching)
- Updated all code examples with OpenRouter integration
- Updated test cases (openai_client → openrouter_client)
- Updated cost estimates throughout document
References updated to OpenRouter documentation.
Refs: OpenRouter docs https://openrouter.ai/docs
2026-04-02 19:31:04 +02:00
Luca Sacchi Ricciardi
3c406ef405
feat: create n8n workflow for secure log ingestion
...
Implement LogWhisperer_Ingest workflow for Sprint 2 Feature 2:
Workflow Components:
- Webhook trigger: POST /webhook/logwhisperer/ingest
- HMAC-SHA256 validation with timing-safe comparison
- Anti-replay protection (5min timestamp window)
- Data validation: UUID client_id, severity levels, non-empty logs
- PostgreSQL storage with logs table auto-creation
- Conditional routing for critical severity logs
Security Features:
- HMAC signature verification (X-LogWhisperer-Signature header)
- Timestamp validation preventing replay attacks
- Input sanitization before DB insert
- Environment variable LOGWHISPERER_SECRET for shared secret
Documentation:
- workflows/logwhisperer_ingest.json: Export JSON workflow
- workflows/README.md: Installation and usage guide
- workflows/INTEGRATION.md: Bash script integration guide
- workflows/REPORT.md: Implementation report
- workflows/test_workflow.sh: Automated test suite
Metodo Sacchi Applied:
- Safety First: HMAC validation before any processing
- Little Often: Modular nodes, each with single responsibility
- Double Check: Test suite validates all security requirements
Next Steps:
- Configure LOGWHISPERER_SECRET in n8n environment
- Import workflow to n8n instance
- Test end-to-end with secure_logwhisperer.sh
2026-04-02 19:01:40 +02:00
Luca Sacchi Ricciardi
3a455e48d2
docs: update documentation with MCP configuration and agent catalog
...
- Add MCP servers documentation (n8n, context7, sequential-thinking)
- Update README.md with complete project structure and requirements.txt
- Transform agents.md into comprehensive agent staff catalog (9 agents)
- Update CHANGELOG.md with [Unreleased] MCP entries
- Fix ingestion_script.md acceptance criteria checkboxes
- Add .opencode/opencode.json to .gitignore for security
- Include new agent configs: n8n_specialist_agent, context_auditor_agent
- Include new skill playbooks: n8n_automation, context7_documentation
Security: API credentials in .opencode/opencode.json are now gitignored
2026-04-02 18:21:21 +02:00
Luca Sacchi Ricciardi
88cfe9af50
docs: update all documentation for Sprint 1 completion
...
- Update README.md with badges, project status, and improved structure
- Update CHANGELOG.md with Project Review Sprint 1 and version 0.1.1
- Update PRD status to reflect Sprint 1 completion
- Update ingestion script spec status to Completed with review link
- Update Sprint 1 verification report with Project Review reference
- Add comprehensive Sprint 1 Project Review document
Refs: Project Review conducted by agent staff (Product Manager, Tech Lead, Security Auditor)
2026-04-02 17:25:29 +02:00
Luca Sacchi Ricciardi
844294f7b2
docs: update changelog with AGENTS.md documentation entry
2026-04-02 17:04:11 +02:00
Luca Sacchi Ricciardi
7def30702f
docs: add Sprint 1 verification report
...
- Create comprehensive verification document for Sprint 1
- Document test results (12/12 tests passed)
- Include acceptance criteria checklist
- Add security audit and code quality assessment
- Update CHANGELOG with verification report entry
2026-04-02 16:26:36 +02:00
Luca Sacchi Ricciardi
69f475ec78
feat(ingestion): implement log monitoring script with webhook integration
...
- Add logwhisperer.sh script for tailing and monitoring system logs
- Implement pattern matching for critical errors (FATAL, ERROR, OOM, segfault)
- Add JSON payload generation with severity levels
- Implement rate limiting and offset tracking per log source
- Add install.sh with interactive configuration and systemd support
- Create comprehensive test suite with pytest
- Add technical specification documentation
- Update CHANGELOG.md following Common Changelog standard
All 12 tests passing. Follows Metodo Sacchi (Safety first, little often, double check).
2026-04-02 16:10:20 +02:00