377fde239e
docs: add Jobgether non-headless Playwright scraper to backlog
...
CI / test (push) Failing after 12s
Xvfb-based Playwright can bypass Cloudflare Turnstile on jobgether.com.
Live inspection confirmed selectors; deferred pending Xvfb integration.
2026-03-15 11:59:48 -07:00
a005397d5d
docs: update spec — Jobgether discovery scraper not viable (Cloudflare + robots.txt)
2026-03-15 09:45:50 -07:00
17f7baae3c
docs: add Jobgether integration implementation plan
2026-03-15 09:45:50 -07:00
ef9cb29518
docs: add cover letter recruiter framing to Jobgether spec
2026-03-15 09:45:50 -07:00
fe2f27c2a2
docs: add Jobgether integration design spec
2026-03-15 09:45:50 -07:00
07166325dd
docs: add LLM queue optimizer implementation plan
...
11-task TDD plan across 3 reviewed chunks. Covers:
- reset_running_tasks() db helper
- TaskScheduler skeleton + __init__ + enqueue + loop + workers
- Thread-safe singleton, durability, submit_task routing shim
- app.py startup change + full suite verification
2026-03-14 17:11:49 -07:00
7983f3365d
docs: revise queue optimizer spec after review
...
Addresses 16 review findings across two passes:
- Clarify _active.pop/double-decrement non-issue
- Fix app.py change target (inline SQL, not kill_stuck_tasks)
- Scope durability to LLM types only
- Add _budgets to state table with load logic
- Fix singleton safety explanation (lock, not GIL)
- Ghost row fix: mark dropped tasks failed in DB
- Document static _available_vram as known limitation
- Fix test_llm_tasks_batch_by_type description
- Eliminate circular import via routing split in submit_task()
- Add missing budget warning at construction
2026-03-14 16:46:38 -07:00
9fcfe7daa1
docs: add LLM queue optimizer design spec
...
Resource-aware batch scheduler for LLM tasks. Closes #2 .
2026-03-14 16:38:47 -07:00
7d15980bdd
docs: update backlog with LinkedIn import follow-up items
CI / test (push) Waiting to run
2026-03-13 11:24:55 -07:00
ba295cb010
docs: add cloud architecture + cloud-deployment.md
...
architecture.md: updated Docker Compose table (3 compose files), database
layer (Postgres platform + SQLite-per-user), cloud session middleware,
telemetry system, and cloud design decisions.
cloud-deployment.md (new): full operational runbook — env vars, data root
layout, GDPR deletion, platform DB queries, telemetry, backup/restore,
Caddy routing, demo instance, and onboarding a new app to the cloud.
2026-03-09 23:02:29 -07:00
5f5319d8bf
chore: move internal plans to circuitforge-plans repo
...
CI / test (push) Waiting to run
All docs/plans/ files migrated to pyr0ball/circuitforge-plans.
Keeping docs/ for future user-facing documentation.
2026-03-07 15:38:47 -08:00
136b9441df
docs: circuitforge-hooks implementation plan (8 tasks, TDD)
2026-03-07 12:27:47 -08:00
3441924929
docs: circuitforge-hooks design — gitleaks-based secret + PII scanning
...
Centralised pre-commit/pre-push hook repo design covering the token leak
root causes: unactivated hooksPath and insufficient regex coverage.
2026-03-07 12:23:54 -08:00
4d6cbce91e
docs: digest parsers implementation plan (TDD, 6 tasks)
2026-03-05 22:41:40 -08:00
a865d1583b
docs: digest email parser design — LinkedIn/Adzuna/Ladders registry + Avocet bucket
2026-03-05 12:56:53 -08:00
25badb7dc3
docs: feedback button implementation plan (8 tasks, TDD)
2026-03-03 11:31:19 -08:00
a8f5445023
docs: feedback button design (floating button, Forgejo integration, PII masking, screenshot support)
2026-03-03 11:22:20 -08:00
95a4054dc4
docs: public mirror strategy design (GitHub + Codeberg + git hooks)
2026-03-02 18:49:03 -08:00
b5c9aaa364
docs: update tier-system reference with BYOK policy + demo user.yaml
...
docs/reference/tier-system.md:
- Rewritten tier table: free tier now described as "AI unlocks with BYOK"
- New BYOK section explaining the policy and rationale
- Feature gate table gains BYOK-unlocks? column
- API reference updated: can_use, tier_label, has_configured_llm with examples
- "Adding a new feature gate" guide updated to cover BYOK_UNLOCKABLE
demo/config/user.yaml:
- Reformatted by YAML linter; added dismissed_banners for demo UX
2026-03-02 13:22:10 -08:00
cb99a6a977
feat: dual-GPU DUAL_GPU_MODE complete — ollama/vllm/mixed GPU 1 selection
2026-02-27 06:20:57 -08:00
cf98044f6f
docs: email classifier benchmark implementation plan — 10 tasks, TDD, 9-model registry
2026-02-26 23:20:04 -08:00
7bbcde3f69
docs: email classifier benchmark design — adapter pattern, 9-model registry, compare+eval modes
2026-02-26 22:56:11 -08:00
7b53e6fd75
feat: Podman support — auto-detect COMPOSE, CDI GPU override, podman-compose in setup.sh
2026-02-25 15:36:36 -08:00
6be0566335
docs: fix license server paths — dev under CircuitForge/, live at /devl/
2026-02-25 15:28:32 -08:00
1e6950893a
docs: CircuitForge license server implementation plan (11 tasks)
2026-02-25 15:27:39 -08:00
b40dda3b91
docs: CircuitForge license server design doc
...
RS256 JWT, FastAPI + SQLite, multi-product schema, offline-capable
client integration. Covers server, Peregrine client, deployment,
admin workflow, and testing strategy.
2026-02-25 15:21:07 -08:00
8ceb1d2ebc
docs: mark cover letter refinement complete in backlog + changelog
2026-02-25 14:44:50 -08:00
37ce9fb1f8
docs: finalise Circuit Forge product suite naming + product brief
2026-02-25 14:16:56 -08:00
76e97bd1cb
docs: backlog — Circuit Forge product expansion (heinous tasks platform)
2026-02-25 14:02:07 -08:00
c1381c65ba
docs: mark email sync test checklist complete
2026-02-25 13:56:55 -08:00
3076f051d7
chore: mkdocs deps, CHANGELOG, remove dead Resume Editor page, backlog gap items
2026-02-25 13:51:13 -08:00
0ba27c3939
docs: mkdocs wiki — installation, user guide, developer guide, reference
...
Adds a full MkDocs documentation site under docs/ with Material theme.
Getting Started: installation walkthrough, 7-step first-run wizard guide,
Docker Compose profile reference with GPU memory guidance and preflight.py
description.
User Guide: job discovery (search profiles, custom boards, enrichment),
job review (sorting, match scores, batch actions), apply workspace (cover
letter gen, PDF export, mark applied), interviews (kanban stages, company
research auto-trigger, survey assistant), email sync (IMAP, Gmail App
Password, classification labels, stage auto-updates), integrations (all 13
drivers with tier requirements), settings (every tab documented).
Developer Guide: contributing (dev env setup, code style, branch naming, PR
checklist), architecture (ASCII layer diagram, design decisions), adding
scrapers (full scrape() interface, registration, search profile config,
test patterns), adding integrations (IntegrationBase full interface, auto-
discovery, tier gating, test patterns), testing (patterns, fixtures, what
not to test).
Reference: tier system (full FEATURES table, can_use/tier_label API, dev
override, adding gates), LLM router (backend types, complete() signature,
fallback chains, vision routing, __auto__ resolution, adding backends),
config files (every file with field-level docs and gitignore status).
Also adds CONTRIBUTING.md at repo root pointing to the docs site.
2026-02-25 12:05:49 -08:00
ad7a56dca5
docs: backlog — Ultra tier managed applications concept
2026-02-25 11:40:55 -08:00
eb0e7883b8
docs: backlog — cover letter iterative refinement feedback loop
2026-02-25 08:30:24 -08:00
445917cbd6
docs: backlog — Podman support + FastAPI migration path
2026-02-25 08:22:24 -08:00
873d035de6
docs: expanded wizard implementation plan — 13 tasks, TDD throughout
2026-02-25 06:29:23 -08:00
ec2f35380a
docs: expanded first-run wizard design
...
Architecture: wizard module system, mandatory 6-step flow, optional
home banners, tier gating (free/paid/premium + dev_tier_override),
resume upload/parse/builder, LLM generation via background tasks,
integrations registry pattern with 14 v1 services.
2026-02-24 21:30:05 -08:00
3d3f81c252
chore: add backlog.md + gitignore config/.backup-* dirs
2026-02-24 20:54:12 -08:00
f11a38eb0b
chore: seed Peregrine from personal job-seeker (pre-generalization)
...
App: Peregrine
Company: Circuit Forge LLC
Source: github.com/pyr0ball/job-seeker (personal fork, not linked)
2026-02-24 18:25:39 -08:00