You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Existing Note (#191) paragraph. Explains why OnFrame is referenced as a string annotation in evaluate_benchmark rather than imported at module level, framed as if CodeQL were the constraint that forced the workaround.
With #216 landing the global suppression, the Note (#191) framing is now slightly off -- the OnFrame workaround is still load-bearing for runtime cycle avoidance (the asymmetric edge), but it's no longer load-bearing for CodeQL (the global exclude covers it). A future reader sees two comment blocks that disagree on which constraint is doing the work.
Proposed fix
Consolidate into a single comment block that:
Frames the runtime-cycle invariant first (the asymmetric edge between base and policy_runner -- this is what makes the import work, independent of CodeQL).
References the CodeQL suppression as the static-checker layer that lives on top, with a pointer at .github/codeql/README.md.
Explains the OnFrame string-annotation choice purely in terms of runtime cycle avoidance (which is still the correct rationale even with the suppression in place).
The Note (#191) shape should disappear -- the issue it referenced is closed, and the runtime rationale survives as part of the consolidated breadcrumb.
Acceptance criteria
Single consolidated comment block in strands_robots/simulation/base.py covering: runtime-cycle invariant, CodeQL suppression layer, OnFrame string-annotation rationale
Note (#191) paragraph removed; its content folded into the consolidated block where still load-bearing
Cross-references to .github/codeql/README.md and the regression pin tests preserved
No behaviour change; comment-only PR
Verify with grep that no other file in the tree references the Note (#191) framing in a way that would drift after the consolidation
Problem
strands_robots/simulation/base.pynow carries two adjacent comment blocks describing overlapping but distinct concerns:.github/codeql/README.mdfor the full rationale.Note (#191)paragraph. Explains whyOnFrameis referenced as a string annotation inevaluate_benchmarkrather than imported at module level, framed as if CodeQL were the constraint that forced the workaround.With #216 landing the global suppression, the
Note (#191)framing is now slightly off -- theOnFrameworkaround is still load-bearing for runtime cycle avoidance (the asymmetric edge), but it's no longer load-bearing for CodeQL (the global exclude covers it). A future reader sees two comment blocks that disagree on which constraint is doing the work.Proposed fix
Consolidate into a single comment block that:
baseandpolicy_runner-- this is what makes the import work, independent of CodeQL)..github/codeql/README.md.OnFramestring-annotation choice purely in terms of runtime cycle avoidance (which is still the correct rationale even with the suppression in place).The
Note (#191)shape should disappear -- the issue it referenced is closed, and the runtime rationale survives as part of the consolidated breadcrumb.Acceptance criteria
strands_robots/simulation/base.pycovering: runtime-cycle invariant, CodeQL suppression layer,OnFramestring-annotation rationaleNote (#191)paragraph removed; its content folded into the consolidated block where still load-bearing.github/codeql/README.mdand the regression pin tests preservedNote (#191)framing in a way that would drift after the consolidationContext
Agenttool dispatch) #191 framing thread).Filed by autonomous agent. Strands Agents.