27 Commits

Author SHA1 Message Date
Clément SAILLANT 5efb380da5 feat: automate yiacad PR review lane (#18)
* feat: automate yiacad pr review lane

* fix: stabilize yiacad review and spec gates

* fix: scope kicad exports to repo hardware

* fix: ignore kicad block library sources in exports

* feat: Add infra VPS monitoring runbook and healthcheck scripts

- Created INFRA_VPS_RUNBOOK_2026.md detailing operational procedures for monitoring VPS services.
- Added infra_vps_healthcheck.sh script for automated health checks on DNS, TLS, TCP, and HTTP for VPS services.
- Introduced infra_vps_security_audit.sh for non-intrusive security checks on external VPS services.
- Established JSON schema for infra VPS inventory in infra_vps.schema.json.
- Developed integration for runtime status reporting in the Next.js API route.
- Implemented Playwright tests for smoke testing the application and ensuring core functionalities.
- Updated Makefile for development dependencies and testing commands.
- Created various test files for unit and end-to-end testing across different components.

* feat(agentics): update mesh agents, gates, prompts, and workflows
2026-03-29 17:14:16 +02:00
kxkm 1c6c1952e8 fix+feat: restore CI/PIO regressions, 30-entry HF dataset, new tests & hardware
Regressions fixed (aa916de simplification):
- firmware/platformio.ini: restore esp32s3_waveshare (pioarduino platform,
  lib_deps: ArduinoJson/ESP32_Display_Panel/ESP32-audioI2S/IO_Expander,
  BOARD_HAS_PSRAM, I2S pins), restore esp32s3_qemu (extends waveshare +
  QEMU_BUILD), fix default_envs=esp32s3_waveshare, keep build_dir=/tmp/kl_pio_build
- .github/workflows/ci.yml: restore firmware-native (112 Unity tests),
  firmware-build (esp32s3_waveshare artifact), firmware-sim (Wokwi gated),
  hardware-export (KiCad ERC + SVG/PDF/netlist + KiBot + compliance)
- .gitignore: add .kibot-venv/ and .pio-venv/ (prevent committing venvs)

Dataset (HuggingFace clemsail/kill-life-embedded-qa v2):
- generate_hf_dataset.py: rag_query timeout 30s->120s (LLM takes ~45s),
  rag_search timeout 15s->30s; resolves intermittent server-busy failures
- 30 entries (10+10+5+5) -- 100% coverage vs 21/40 previously

Firmware tests (112/112):
- 4 suites: test_basic (39), test_modules (32), test_radio_state (26),
  test_wifi_state (15); test_logic.cpp now a stub (content moved to test_basic)

Hardware:
- esp32_minimal.kicad_pcb, esp32s3_enclosure.FCStd/.step, gen_pcb.py,
  gen_enclosure.py, REGISTRY.md, ERC reports for all design blocks

MCP tools:
- apify_mcp.py: +5 Kill_LIFE tools (fetch_espressif_docs, fetch_kicad_library_info,
  fetch_platformio_registry, ingest_to_rag, get_runtime_info)
- mcp_runtime_status.py: fix classify_overall -- accept_degraded respected for
  failed checks, task annotations, optional_degraded logic cleaned up
- deploy/cad/docker-compose.yml: path mascarade->mascarade-main

Specs & docs:
- docs/plans/TODO_2026-03-26.md, TODO_2026-03-27.md
- ai-agentic-embedded-base/specs: arch, tasks, intake, spec updates
- docs/playbooks/kicad_happy_hw_bom_forge.md

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 22:14:33 +01:00
root e67fb754c2 feat: KiCad 10 native, QEMU simulation, compliance EU, firmware fixes
Session kxkm-ai 25-26 mars 2026 — 98/98 tâches TODO complétées.

Hardware:
- KiCad 10.0.0 native avec sym/fp-lib-table locales
- Nouveau block SPI (gen_spi_header.py), ERC clean
- Module partagé hardware/lib/kicad_gen.py (5 générateurs refactorisés)
- Pipeline export: tools/hw/hw_export.sh (ERC + SVG + PDF + netlist)
- KiBot 1.8.5 installé, .kibot.yaml configuré

Firmware:
- Fix I2S driver conflict: migration I2sMic vers nouvelle API i2s_channel_*
- Fix WDT risk: yield() dans CompletePushToTalk (voice_controller.cpp)
- Fix XSS wifi_manager.cpp: innerHTML → createElement/textContent
- Fix null check FwIsValidWavHeader
- Dead code supprimé: i2s_audio.cpp.bak, i2s_audio.h

Simulation MCU:
- QEMU ESP32-S3 v9.2.2 installé (tools/sim/)
- Script run_qemu_esp32s3.sh — boot OK vérifié
- [env:esp32s3_qemu] dans platformio.ini
- Wokwi CI: wokwi.toml + diagram.json + scenario.yaml
- SPICE bridge POC: tools/sim/spice_bridge.py (ngspice → ADC/brownout)

Compliance:
- Profil iot_wifi_eu validé (16 standards, 8 evidence)
- 4 evidence remplis: risk_assessment, security_architecture,
  test_plan_radio_emc, supply_chain_declarations
- plan.yaml complété avec données produit réelles

CI:
- Job hardware-export (KiCad 10 ERC + SVG + PDF + netlist)
- Job firmware-sim (Wokwi, conditionnel WOKWI_CLI_TOKEN)
- evidence_pack.yml enrichi avec exports hardware

Docs & RAG:
- specs/02_arch.md complet (481 lignes, 4 ADR, diagrammes)
- docs/SIMULATION.md (3 niveaux: native, QEMU, Wokwi)
- 6 chunks ingérés dans kb-kicad RAG
- Dataset HF: tools/generate_hf_dataset.py + datasets/kb_kicad_qa.jsonl
- Rapport analyse: docs/plans/ANALYSIS_REPORT_2026-03-25.md
- Recherche OSS: docs/research/oss_similar_projects.md

Infra:
- ZeroClaw 0.1.7 installé (cargo install)
- APIFY_API_KEY configurée, smoke OK
- Tests: 39/39 firmware + 26/26 Python stable

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 09:52:00 +01:00
L'électron rare a96780ba7e Add French documentation for standards, integrations, cockpit, evaluations, and hardware tools
- Created README_FR.md files for various standards and profiles in the `standards` directory, detailing conventions and usage.
- Added integration documentation for ZeroClaw, AutoGen, LangGraph, and n8n in the `tools/ai/integrations` directory, outlining their roles and usage.
- Introduced a comprehensive README_FR.md for the `tools/cockpit` directory, detailing operator commands and health-check routines.
- Added a README_FR.md for the `tools/evals` directory, providing a benchmark framework for electronic prompts.
- Created a README_FR.md for the `tools/hw/schops` directory, explaining CLI operations for schematic management.
- Added README_FR.md files for the `web` directory and its `project/pcb` subdirectory, outlining the web application structure and PCB viewer inputs.
2026-03-25 01:08:52 +01:00
L'électron rare 86f46c8a64 specs: add mesh contracts, yiacad specs, agentic intelligence integration
- 18 mesh contract schemas + examples (machine_registry, mascarade_dispatch,
  operator_lane, repo_snapshot, workflow_handshake, yiacad_context_broker)
- yiacad specs: backend architecture, global refonte, tux004 orchestration,
  UI/UX apple native, git EDA platform
- agentic intelligence integration spec
- Sync zeroclaw dual HW specs and tasks

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 00:19:48 +01:00
L'électron rare 94a9805e2d specs: sync mcp tasks and mirror constraints 2026-03-15 21:56:51 +01:00
Clément SAILLANT 174d620bab Créer une plateforme nodale universelle capable d’orchestrer :
- IA / LLM
- pipelines de datasets
- conception CAD
- électronique (PCB)
- firmware
- hardware temps réel (PIO)
- fabrication
- automation
2026-03-15 13:32:11 +01:00
Clément SAILLANT 28c9035b55 feat(cockpit): chain useful lots automatically 2026-03-09 09:25:21 +01:00
Clément SAILLANT 6101d1d90d feat(autonomy): wire zeroclaw integrations into useful-lot chaining 2026-03-09 06:29:26 +01:00
Clément SAILLANT 42559ea78f feat(autonomy): chain zeroclaw integration lots automatically 2026-03-09 06:25:03 +01:00
Clément SAILLANT 5b56e7e4c2 feat(cockpit): automate useful lot chaining 2026-03-09 05:53:43 +01:00
Clément SAILLANT 0582849256 docs(state): mark local mcp wave closed 2026-03-08 22:14:11 +01:00
Clément SAILLANT 272862c081 docs(state): close local mcp agentics wave 2026-03-08 21:13:30 +01:00
Clément SAILLANT 6aa522fe2f docs(mcp): record live nexar quota-limited status 2026-03-08 20:05:13 +01:00
Clément SAILLANT 0d61c886e1 fix(mcp): treat host pcbnew smoke as optional 2026-03-08 20:01:08 +01:00
Clément SAILLANT e0b7b17997 feat(cad): add local freecad and openscad mcp stack 2026-03-08 20:00:24 +01:00
Clément SAILLANT bd49fc628f feat(mcp): align runtime home and knowledge base tooling 2026-03-08 19:41:26 +01:00
Clément SAILLANT 46e1feba84 feat: integrate local CAD stack and runtime safeguards 2026-03-08 12:27:15 +01:00
Clément SAILLANT ab4c5d408c docs(mcp): clarify support matrix and canonical specs 2026-03-07 22:00:38 +01:00
Clément SAILLANT 8d5c455f3e Refine MCP launcher flow and ignore generated evidence 2026-03-07 19:10:19 +01:00
Clément SAILLANT 0ff4a747c3 Add MCP validation tooling and scope specs 2026-03-07 19:10:19 +01:00
Clément SAILLANT 0c175510ac Remove placeholder workflows and align CI docs 2026-03-07 19:10:19 +01:00
Clément SAILLANT 7d413a3d6d Adopt KiCad 10-first CAD runtime stack 2026-03-07 19:09:36 +01:00
Clément SAILLANT 7e459a1012 chore(specs): sync ai-agentic embedded specs with current Kill_LIFE task state (#13) 2026-02-21 19:44:56 +01:00
Clément SAILLANT 48bb92366e sync spec-kit mirror with kill_life specs 2026-02-21 02:23:40 +01:00
Clément SAILLANT 124906d084 feat: Add comprehensive CI/CD workflows and badges for compliance, security, and quality assurance
- Introduced multiple guides for workflows including Evidence Pack Validation, Incident Response, Model Validation, Performance & HIL, Release Signing, SBOM Validation, Secret Scanning, and Supply Chain Attestation.
- Created dynamic badges for each workflow to reflect their status and compliance.
- Implemented a checklist for validating CI/CD workflows and evidence packs.
- Developed scripts for building firmware, testing, collecting evidence, and generating audit reports.
- Added tools for generating community, documentation, quality, and security badges based on various reports.
- Established endpoints for dynamic badges to be integrated into documentation and README files.
- Enhanced the overall structure and traceability of CI/CD processes with evidence packs and automated checks.
2026-02-19 08:58:10 +01:00
Clément SAILLANT dda793c0ef feat(hw): add schops tool for schematic operations and kicad-cli integration
- Introduced `kicad_cli.sh` for local and Docker-based kicad-cli execution.
- Created `schops.py` for schematic operations including ERC, BOM, netlist exports, and bulk edits.
- Added README.md for schops with installation and usage instructions.
- Included requirements.txt for necessary Python packages.
- Implemented rules engine for applying field defaults and renaming nets.
- Added tests for rules engine functionality.
- Introduced scope guard script to enforce file modification policies based on PR labels.
- Created watch script to monitor KiCad files and trigger hardware gate on changes.
2026-02-19 00:00:33 +01:00