Shared scaffold for CircuitForge products
Find a file
pyr0ball 80eeae5460 feat: audio module, musicgen tests, SQLCipher PRAGMA hardening
#45 — db/base.py: PRAGMA key=? parameterized form instead of f-string
interpolation. Regression tests added (skip when pysqlcipher3 absent).

#50 — circuitforge_core.audio: shared PCM/signal utilities (MIT, numpy-only)
  - convert.py: pcm_to_float32, float32_to_pcm, bytes_to_float32
  - gate.py:    is_silent, rms (RMS energy gate)
  - resample.py: resample (scipy.signal.resample_poly; numpy linear fallback)
  - buffer.py:  ChunkAccumulator (window-based chunk collector + flush)
Replaces hand-rolled equivalents in cf-voice stt.py + context.py.
34 tests, all passing.

#49 — tests/test_musicgen/: 21 tests covering mock backend, factory,
and FastAPI app endpoints. musicgen module was already implemented;
tests were the missing piece to close the issue.
2026-04-20 11:10:49 -07:00
.forgejo/workflows chore: remove misplaced cf-orch docker workflow (belongs in circuitforge-orch) 2026-04-05 20:53:13 -07:00
circuitforge_core feat: audio module, musicgen tests, SQLCipher PRAGMA hardening 2026-04-20 11:10:49 -07:00
docker feat: cf-orch Docker image + Forgejo CI pipeline 2026-04-03 09:10:29 -07:00
docs feat: add Plausible analytics to docs 2026-04-16 21:16:04 -07:00
tests feat: audio module, musicgen tests, SQLCipher PRAGMA hardening 2026-04-20 11:10:49 -07:00
.cliff.toml ci: add Forgejo Actions workflows — CI, PyPI release, mirrors, cliff.toml (closes #27) 2026-04-05 20:51:18 -07:00
.gitignore feat(orch): replace Ouro/vllm-Docker with generic HF inference server; add ProcessSpec 2026-04-02 15:33:08 -07:00
CHANGELOG.md docs: add CHANGELOG entries for v0.8.0, v0.9.0, v0.10.0 (community module) 2026-04-12 22:35:39 -07:00
Dockerfile.orch feat: cf-orch Docker image + Forgejo CI pipeline 2026-04-03 09:10:29 -07:00
LICENSE chore: add MIT LICENSE file 2026-04-13 08:46:41 -07:00
mkdocs.yml feat: add Plausible analytics to docs 2026-04-16 21:16:04 -07:00
pyproject.toml fix(community): move psycopg2 to optional community extra, lazy-import in __init__ 2026-04-12 22:34:47 -07:00
README.md feat!: strip resources/ from MIT core — moves to circuitforge-orch (v0.8.0) 2026-04-04 22:34:27 -07:00

circuitforge-core

Shared scaffold for CircuitForge products.

Current version: 0.7.0

Modules

Implemented

  • circuitforge_core.db — SQLite connection factory and migration runner
  • circuitforge_core.llm — LLM router with fallback chain (Ollama, vLLM, Anthropic, OpenAI-compatible)
  • circuitforge_core.tiers — Tier system with BYOK and local vision unlocks
  • circuitforge_core.config — Env validation and .env loader
  • circuitforge_core.hardware — Hardware detection and LLM backend profile generation (VRAM tiers, GPU/CPU auto-select)
  • circuitforge_core.documents — Document ingestion pipeline: PDF, DOCX, and image OCR → StructuredDocument
  • circuitforge_core.affiliates — Affiliate URL wrapping with opt-out, BYOK user IDs, and CF env-var fallback (wrap_url)
  • circuitforge_core.preferences — User preference store (local YAML file, pluggable backend); dot-path get/set API
  • circuitforge_core.tasks — VRAM-aware LLM task scheduler; shared slot manager across services (TaskScheduler)
  • circuitforge_core.manage — Cross-platform product process manager (Docker and native modes)
  • circuitforge_core.resources — Resource coordinator and agent: VRAM allocation, eviction engine, GPU profile registry

Stubs (in-tree, not yet implemented)

  • circuitforge_core.vision — Vision router base class (planned: moondream2 / Claude vision dispatch)
  • circuitforge_core.wizard — First-run wizard base class (products subclass BaseWizard)
  • circuitforge_core.pipeline — Staging queue base (StagingDB; products provide concrete schema)

Install

pip install -e .

License

BSL 1.1 — see LICENSE