borisxdave 0.3.2__py3-none-any.whl → 0.3.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
boris.py CHANGED
@@ -907,15 +907,29 @@ def main():
907
907
  print("[Boris] Error: No saved state found. Cannot resume.", flush=True)
908
908
  sys.exit(1)
909
909
  plan = st.plan
910
- start_index = st.current_milestone_index
910
+
911
+ # Reset skipped milestones to pending so they get retried
912
+ retried = []
913
+ for m in plan.milestones:
914
+ if m.status == "skipped":
915
+ m.status = "pending"
916
+ retried.append(m.id)
917
+ if retried:
918
+ print(f"[Boris] Retrying previously skipped milestones: {', '.join(retried)}", flush=True)
919
+ logger.info("Reset skipped milestones to pending: %s", retried)
920
+
921
+ # Start from 0 so we scan all milestones (completed ones are skipped automatically)
922
+ start_index = 0
923
+ st.current_milestone_index = 0
924
+ state_module.save(st)
911
925
 
912
926
  # If already in UI testing phase, skip straight to UI loop
913
927
  if st.phase == "ui_testing":
914
928
  print(f"[Boris] Resuming UI Testing phase...", flush=True)
915
929
  logger.info("Resuming UI testing phase")
916
930
  else:
917
- print(f"[Boris] Resuming from milestone {start_index + 1}...", flush=True)
918
- logger.info("Resuming from milestone %d", start_index + 1)
931
+ print(f"[Boris] Resuming - {len(retried)} skipped milestone(s) queued for retry...", flush=True)
932
+ logger.info("Resuming with %d milestones to retry", len(retried))
919
933
  elif args.exec_only:
920
934
  # Exec-only mode - load an existing plan file and execute it
921
935
  plan_file = os.path.abspath(args.exec_only)
@@ -1,6 +1,7 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: borisxdave
3
- Version: 0.3.2
3
+ Version: 0.3.4
4
4
  Summary: Boris - Autonomous Project Orchestrator
5
5
  Requires-Python: >=3.8
6
-
6
+ Dynamic: requires-python
7
+ Dynamic: summary
@@ -1,4 +1,4 @@
1
- boris.py,sha256=W5k3eNJzhHSKIAtzvwmTYHX7PBCaxxLwRzdAize6Xy8,63235
1
+ boris.py,sha256=x758NOe-Gl-57nYlfgMyEyPNfqf0RdfSSjeNVZFak9I,63834
2
2
  boris_prompt_data.py,sha256=ZBvWMrQOBrl07cNFzgeGumJ54cYg0Be9RSSnK6a3YQY,7940
3
3
  config.py,sha256=KfFKyCGasdm1yBvIRFv-ykzA_oRo-zu1Euu9YC7V1Cg,324
4
4
  engine.py,sha256=Pdu0i4XrNxiU246EV8MjXvYp9CBvuJWGLA18QMIYvFM,37468
@@ -7,8 +7,8 @@ git_manager.py,sha256=BuuTT4naPb5-jLhOik1xHM2ztzuKvJ_bnecZmlYgwFs,8493
7
7
  planner.py,sha256=UrU--kBvzvyD1gOVxIn-kdbJiu8tt4rcowsln66WkGw,5670
8
8
  prompts.py,sha256=-eSwZ-oTBR12Wx4Md57sVF816T9vHEFlMsvT4zMkwOg,35187
9
9
  state.py,sha256=2DCPlcM7SBlCkwWvcnIabltcduv74W46FZ7DxKurWkw,5752
10
- borisxdave-0.3.2.dist-info/METADATA,sha256=NxpmhoGuCnJCHbNc7bkV03dllb6AAGu-JacgT_JJIjk,133
11
- borisxdave-0.3.2.dist-info/WHEEL,sha256=hPN0AlP2dZM_3ZJZWP4WooepkmU9wzjGgCLCeFjkHLA,92
12
- borisxdave-0.3.2.dist-info/entry_points.txt,sha256=a6FLWgxiQjGMJIRSV5sDxaaaaQchunm04ZuzX8N7-6I,61
13
- borisxdave-0.3.2.dist-info/top_level.txt,sha256=C3fTm1vt0QEQyJtvSZiFiOvmR4d0hWmmr6hujJqFrQE,82
14
- borisxdave-0.3.2.dist-info/RECORD,,
10
+ borisxdave-0.3.4.dist-info/METADATA,sha256=2xBFOjfdS4w_Tlb5MrdRqFs6rJ4YBWCBvnXhitrWC9I,175
11
+ borisxdave-0.3.4.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
12
+ borisxdave-0.3.4.dist-info/entry_points.txt,sha256=a6FLWgxiQjGMJIRSV5sDxaaaaQchunm04ZuzX8N7-6I,61
13
+ borisxdave-0.3.4.dist-info/top_level.txt,sha256=C3fTm1vt0QEQyJtvSZiFiOvmR4d0hWmmr6hujJqFrQE,82
14
+ borisxdave-0.3.4.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.46.3)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5