fix: restore cross-platform quality gate
Staging Backend Quality Gate (push the reviewed main SHA to staging to auto-deploy) / validate (push) Failing after 8m59s
Staging Backend Quality Gate (push the reviewed main SHA to staging to auto-deploy) / publish-and-deploy (push) Has been skipped

This commit is contained in:
linmeng
2026-07-28 10:52:52 +08:00
parent 7a36169f5d
commit d94bc53e04
4 changed files with 40 additions and 13 deletions
+12 -10
View File
@@ -73,6 +73,8 @@ from ayanamsa_utils import (
# ============================================================================
SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__))
ROOT_DIR = os.path.dirname(SCRIPT_DIR)
if ROOT_DIR not in sys.path:
sys.path.insert(0, ROOT_DIR)
HOME_DIR = os.path.expanduser('~')
CLAW_DIR = os.path.join(HOME_DIR, 'WorkBuddy', 'Claw')
DB_PATH = os.path.join(CLAW_DIR, 'vedic_astrology_validation.db')
@@ -868,7 +870,8 @@ def _oracle_progress_snapshot():
root = Path(__file__).resolve().parents[1]
oracle_file = root / 'references' / 'oracle' / 'dasha_shadbala_oracle_cases.json'
with tempfile.NamedTemporaryFile('w+', suffix='.json', delete=True, encoding='utf-8') as handle:
with tempfile.TemporaryDirectory() as temp_dir:
queue_path = Path(temp_dir) / 'oracle-queue.json'
queue = subprocess.run(
[sys.executable, 'scripts/oracle_collection_queue.py', '--oracle-file', str(oracle_file), '--format', 'json'],
cwd=root,
@@ -879,10 +882,9 @@ def _oracle_progress_snapshot():
)
if queue.returncode != 0:
raise RuntimeError(queue.stderr.strip() or queue.stdout.strip())
handle.write(queue.stdout)
handle.flush()
queue_path.write_text(queue.stdout, encoding='utf-8')
validation = subprocess.run(
[sys.executable, 'scripts/oracle_evidence_validator.py', '--queue-file', handle.name],
[sys.executable, 'scripts/oracle_evidence_validator.py', '--queue-file', str(queue_path)],
cwd=root,
text=True,
capture_output=True,
@@ -1749,12 +1751,12 @@ def _build_ai_prompt_pack(report):
'oracle_progress': oracle_progress,
'functional_benefic_malefic': functional_layer,
'interpretation_source_pack': {
'status': interpretation_source_audit.get('status') or 'blocked',
'source': interpretation_source_audit.get('source') or 'repo_existing_interpretation_sources',
'core_rule_source_refs': interpretation_source_audit.get('core_rule_source_refs') or [],
'promote_batch2_source_refs': interpretation_source_audit.get('promote_batch2_source_refs') or [],
'reference_only_source_refs': interpretation_source_audit.get('reference_only_source_refs') or [],
'missing_refs': interpretation_source_audit.get('missing_refs') or [],
'status': interpretation_source_audit.get('status') or fallback_source_pack.get('status') or 'blocked',
'source': interpretation_source_audit.get('source') or fallback_source_pack.get('source') or 'repo_existing_interpretation_sources',
'core_rule_source_refs': interpretation_source_audit.get('core_rule_source_refs') or fallback_source_pack.get('core_rule_source_layer', {}).get('source_refs') or [],
'promote_batch2_source_refs': interpretation_source_audit.get('promote_batch2_source_refs') or fallback_source_pack.get('promote_batch2_topic_layer', {}).get('source_refs') or [],
'reference_only_source_refs': interpretation_source_audit.get('reference_only_source_refs') or fallback_source_pack.get('reference_only_conflict_layer', {}).get('source_refs') or [],
'missing_refs': interpretation_source_audit.get('missing_refs') or fallback_source_pack.get('missing_refs') or [],
},
'prediction_boundary_contract': primary_prediction_boundary_contract or {},
'domain_invocation_layers': primary_domain_invocation_layers or fallback_domain_layers or {},