원클릭으로
ds-reconcile
Use when you already have multiple analysis answers — clusters them into consensus + minority report
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Use when you already have multiple analysis answers — clusters them into consensus + minority report
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Use when setting up or repairing the Python env for analysis — detects uv/venv/conda/poetry/pipenv, installs core packages
Use when building or improving a predictive model — AIDE-style solution tree with leakage discipline and empirical leaderboard
Use when a data question is fuzzy or high-stakes — clarifies scope and writes analysis-spec.md before running a solver
Use when starting fresh with data and unsure which skills to use — peeks at data, asks targeted questions, assembles a crew plan
"Use when onboarding a dataset or asking 'what\'s in this data?' — per-column quality report with join-compatibility checks; flags possible PII/sensitive columns"
Use when browsing, pruning, or seeding a run from past analyses stored across sessions
| name | ds-reconcile |
| description | Use when you already have multiple analysis answers — clusters them into consensus + minority report |
Use ds-reconcile when you already have N candidate answers (from any source — different runs, different analysts, different tools) and want them reconciled into a consensus view.
Do NOT use when you need to produce new analyses from scratch; use ds-spike for a full
parallel ensemble run that produces and then reconciles answers.
Always preserve the minority report. Disagreements between candidates are the insight, not noise to be suppressed. A unanimous result with high confidence is more trustworthy than a forced consensus that hides a dissenting answer.
{"id": "run-1", "answer": 41.7, "sufficient": True, "assumptions": ["refunds excluded"]}
The sufficient field is optional but important: verified answers are weighted 4× higher
than unverified ones (WEIGHT_SUFFICIENT=1.0 vs WEIGHT_UNVERIFIED=0.25).ds-verify first to populate sufficient: True/False.
This step is recommended whenever the answer stakes are non-trivial.aggregate(records) from ../ds-spike/scripts/aggregate.py.{
"answer": "<consensus answer>",
"confidence": 0.8,
"support": ["run-1", "run-3"],
"n_solvers": 3,
"n_clusters": 2,
"unanimous": false,
"minority_report": [
{
"answer": "<dissenting answer>",
"support": ["run-2"],
"assumptions": ["refunds included"]
}
]
}
Report confidence as the fraction of total weight (not raw count) behind the consensus,
so that verified answers count more than unverified ones.
from aggregate import aggregate
result = aggregate(records)
print("consensus:", result["answer"], "confidence:", result["confidence"])
print("minority_report:", result["minority_report"])
../ds-spike/scripts/aggregate.pyaggregate(records), cluster_results(records)sufficient=True → weight 1.0; sufficient=False/missing → weight 0.25aggregate(records)["confidence"] — fraction of weight behind the consensusaggregate(records)["minority_report"] — list of dissenting answer clusters