Compare commits
1 Commits
burn/660-1
...
fix/issue-
| Author | SHA1 | Date | |
|---|---|---|---|
| 88f0b5a0e4 |
@@ -19,6 +19,18 @@ import urllib.error
|
||||
import urllib.parse
|
||||
from datetime import datetime, timezone
|
||||
|
||||
|
||||
# Quality gate integration (#627)
|
||||
try:
|
||||
from scripts.task_gate import pre_task_gate, post_task_gate
|
||||
QUALITY_GATE_AVAILABLE = True
|
||||
except ImportError:
|
||||
QUALITY_GATE_AVAILABLE = False
|
||||
print('[WARN] task_gate not available -- quality checks disabled')
|
||||
|
||||
# Pipeline statistics
|
||||
PIPELINE_STATS = {"gate_pass": 0, "gate_fail": 0, "gate_warn": 0, "requeued": 0}
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# CONFIG
|
||||
# ---------------------------------------------------------------------------
|
||||
@@ -531,6 +543,11 @@ def generate_report(backlog, dispatched, skipped, agent_status, dry_run=False):
|
||||
# Top 5 unassigned
|
||||
unassigned = [i for i in backlog if not i["assignees"]][:5]
|
||||
lines.append("-- Top 5 Unassigned (by priority) --")
|
||||
# Quality gate statistics (#627)
|
||||
if any(PIPELINE_STATS.values()):
|
||||
lines.append("-- Quality Gate --")
|
||||
lines.append(f" Passed: {PIPELINE_STATS['gate_pass']} | Failed: {PIPELINE_STATS['gate_fail']} | Warnings: {PIPELINE_STATS['gate_warn']}")
|
||||
lines.append("")
|
||||
for i in unassigned:
|
||||
lines.append(f" [{i['score']}] {i['repo']}#{i['number']}: {i['title'][:55]}")
|
||||
lines.append("")
|
||||
|
||||
@@ -23,7 +23,7 @@ train-cloud: ## QLoRA fine-tune on cloud GPU (Axolotl)
|
||||
axolotl train axolotl.yaml
|
||||
|
||||
train-local: ## LoRA fine-tune on Apple Silicon (MLX)
|
||||
python3 -m mlx_lm.lora --config mlx-lora.yaml
|
||||
python -m mlx_lm.lora --config mlx-lora.yaml
|
||||
|
||||
# ── Evaluation ────────────────────────────────────────────────────────
|
||||
|
||||
@@ -45,8 +45,8 @@ vibes: ## Run vibes check — hand-picked prompts, human review
|
||||
@echo "Date: $$(date '+%Y-%m-%d %H:%M')" > $(OUTPUT)/vibes-$(MODEL).md
|
||||
@echo "Model: $(MODEL)" >> $(OUTPUT)/vibes-$(MODEL).md
|
||||
@echo "" >> $(OUTPUT)/vibes-$(MODEL).md
|
||||
@python3 -c "\
|
||||
import yaml, subprocess, sys; \
|
||||
@python -c "\
|
||||
import yaml, subprocess, sys; \
|
||||
prompts = yaml.safe_load(open('data/prompts_vibes.yaml'))['prompts']; \
|
||||
f = open('$(OUTPUT)/vibes-$(MODEL).md', 'a'); \
|
||||
[(\
|
||||
@@ -69,19 +69,19 @@ import yaml, subprocess, sys; \
|
||||
# ── Data Pipeline ─────────────────────────────────────────────────────
|
||||
|
||||
ingest: ## Pull heartbeat trajectories into training data
|
||||
python3 ingest_trajectories.py \
|
||||
python ingest_trajectories.py \
|
||||
--trajectories ~/.nexus/trajectories/ \
|
||||
--curated data/curated_dataset.jsonl \
|
||||
--output data/merged_training_data.jsonl
|
||||
@echo "Merged dataset ready. Convert for MLX with: make convert"
|
||||
|
||||
curated: ## Regenerate curated exemplar dataset
|
||||
python3 build_curated.py
|
||||
python build_curated.py
|
||||
@echo "Curated dataset regenerated."
|
||||
|
||||
convert: ## Convert merged dataset to MLX format (train/valid split)
|
||||
@mkdir -p data/mlx_curated
|
||||
python3 -c "\
|
||||
python -c "\
|
||||
import json; \
|
||||
lines = open('data/merged_training_data.jsonl').readlines(); \
|
||||
sessions = [json.loads(l) for l in lines]; \
|
||||
|
||||
Reference in New Issue
Block a user