Enable debates that target specific versions of artifacts. When an artifact is revised,
previous debate outcomes still apply to the old version but may not apply to the new one.
This ensures that evidence accumulated about v1 of an experiment is not blindly transferred
to v2 after methodology improvements.
target_artifact_version column in debate_sessions (nullable, defaults to latest)version_inherited (not fresh)agr-ad-01-TARG — General artifact debate targetinga17-18-VERS0001 — Version tracking schema must existtarget_artifact_version column already exists in debate_sessions schema but was NEVER populated in any INSERT statement across 7+ debate creation sites (scidex_orchestrator.py, run_debates_for_analyses.py, dataset_row_debate.py, debate_enrollment_driver.py, analysis_debate_wrapper_driver.py, etc.)artifacts table has version_number, parent_version_id, is_latest columns; artifact_versions table does not exist yet (version lineage is tracked in the artifacts table itself)artifacts.version_number + is_latest columns are the canonical version tracking mechanism (migration 081_add_artifact_versioning.py). The parent_version_id provides lineage.Change 1 — scidex/atlas/artifact_registry.py:
version_inherited parameter to propagate_quality() (default False)a.is_latest, a.version_numberartifact_version_info() helper function to look up version metadataartifact_version_info from scidex.atlas.artifact_registryartifact_version_info(analysis_id) to get version metadatatarget_artifact_version in the INSERT OR REPLACE INTO debate_sessionstarget_artifact_version column in debate_sessions (nullable, defaults to latest) — ✅ Now populated in orchestrator INSERTtarget_artifact_version recorded per sessionversion_inherited (not fresh) — ✅ propagate_quality applies 0.5× weight to non-latest upstream artifactsFix: scidex/agora/scidex_orchestrator.py INSERT had 12 columns but 13 ? placeholders.
Changed VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) → VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
(12 placeholders matching 12 columns: id, analysis_id, question, num_rounds, num_hypotheses_generated,
num_hypotheses_surviving, created_at, transcript_json, quality_score, debate_type, personas_used,
target_artifact_version)
Rebased on remote branch before push.
scidex/agora/scidex_orchestrator.py — +13 lines: import + version lookup + INSERT column expansionscidex/atlas/artifact_registry.py — +39 lines: version_inherited param + weighting logic + new helper{
"requirements": {
"analysis": 5
}
}