my sea preview: namespace cells .sea-prev-pos-* to de-collide from the live cross; harden spread dropdown + CI retry — TDD
- rename the spread-preview's `.sea-pos-*` cells to `.sea-prev-pos-*` (template + aliased Celtic-cross geometry under `.sea-cross--preview` in _gameboard.scss + the SeaDealSpec fixture) so a bare `.sea-pos-*` matches ONLY the live `.my-sea-cross`; fixes test_picker_renders_sao_default_position_subset (was 2≠1 — the preview duplicated every cross cell) - spread dropdown: cap `.sea-select-list` w. max-height + overflow-y:auto, & JS-click the option in the `_pick` FT helper, so the last option (escape-velocity) can't land below the un-scrollable picker-modal fold in landscape (ElementNotInteractable, seen in CI build 373) - _retry_failed.sh: anchor the FAIL/ERROR label sed to the FIRST paren group so parameterized subTest failures retry the real method label, not a bogus `position='…'` module (ModuleNotFoundError) [[project-my-sea-roadmap]] [[feedback-collectstatic-before-ft]] Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -41,10 +41,13 @@ if [ "$FIRST" -eq 0 ]; then
|
||||
fi
|
||||
|
||||
# Parse failure labels. Match both FAIL: and ERROR: lines; the dotted
|
||||
# path lives inside the trailing parens. `sort -u` dedupes if a single
|
||||
# test produces multiple lines (rare but possible).
|
||||
# path lives inside the FIRST parens. Parameterized subTest failures
|
||||
# append a SECOND `(param='...')` group, so anchor to the first group —
|
||||
# a greedy `^.*\(` would wrongly grab the subtest param and feed
|
||||
# `manage.py test` a bogus label (ModuleNotFoundError). `sort -u`
|
||||
# dedupes the repeated method label the subtests share.
|
||||
FAILED=$(grep -E '^(FAIL|ERROR): ' "$LOG" \
|
||||
| sed -E 's/^.*\(([^)]+)\)[^()]*$/\1/' \
|
||||
| sed -E 's/^[^(]*\(([^)]+)\).*/\1/' \
|
||||
| sort -u \
|
||||
| tr '\n' ' ')
|
||||
|
||||
|
||||
Reference in New Issue
Block a user