java-topology/defects/alembic/patch/CLEAN.md
russell@unturf.com 7491349edc game-engines: allegro5/bullet3/box2d/dry CWE-407 scan
bullet3-0001: btGhostObject::addOverlappingObjectInternal O(N²) linear dedup
  per broadphase step — even carries "too slow" self-admission comment (HIGH)
bullet3-0002: btSoftRigidCollisionAlgorithm::processCollision O(C×D) per
  frame on m_collisionDisabledObjects plain array (MEDIUM)
allegro5: CLEAN (vector_contains only on non-hot setup paths)
box2d: CLEAN (v3 rewrite uses b2HashSet throughout)
dry: CLEAN (HashSet/HashMap on all hot dedup paths)
2026-03-29 19:50:49 -04:00

599 B

alembic — CWE-407 Scan: CLEAN

Scanned: 2026-03-29

Scope

  • alembic/script/revision.py — migration DAG traversal
    • targets = set(targets) (line 676)
    • todo = {d.revision for d in revisions} (line 946, set comprehension)
    • current_heads — tuple/set backed
  • alembic/runtime/migration.pyheads is tuple from revision graph

Verdict

No CWE-407 (algorithmic complexity / quadratic membership check) defects found. Migration dependency graph traversal and conflict detection use set comprehensions throughout. No list-based membership checks in the revision walk.