Skip to content

Post json fixes - #7

Merged
2swap merged 3 commits into
2swap:mainfrom
Waffle3z:post-json-fixes
Aug 3, 2026
Merged

Post json fixes#7
2swap merged 3 commits into
2swap:mainfrom
Waffle3z:post-json-fixes

Conversation

@Waffle3z

Copy link
Copy Markdown
Contributor

No description provided.

Waffle3z added 3 commits July 30, 2026 19:54
check_yellow_children skipped any reply that made four for Yellow, which asks
nothing of the position. A Red move that simply loses was caught only when some
unrelated reply happened to be uncovered, and reported as that reply's problem.

Set branches["4265626642"] to "4", where Yellow threatens four in column 2, and
check 5 now fails with:

    ['4265626642', '4', '2', 'Yellow wins the game with this reply']

Before, it named column 4 instead, and would have said nothing at all had the
rest been covered.

The shipped solution passes all nine checks either way, which is why the
rewrite could drop this without the data noticing. Same gap as 94fc474.
A real Windows console handles the check marks the table uses, but stdout falls
back to the locale's ANSI codepage as soon as it is anything else, and cp1252
has no code point for them. So `python solution/validate_solution.py`, the
command CONTRIBUTING gives, ended in UnicodeEncodeError and exited 1 whenever
it was piped, redirected, or run from Git Bash, after all nine checks had
already passed.
Removing verify.yml left both remaining workflows triggered only by a push to
main, and rebuild.yml is path-filtered to four paths that exclude
validate_solution.py. Nothing ran on a pull request, and the checker itself was
never checked from either direction. Hence both events: the recent history here
is direct pushes rather than pull requests, and those need it as much.

None of the conditional logic that made the old workflows worth simplifying
comes back. Read-only permissions, no path filter, nothing to install since
validate_solution.py is standard library only. The `shell: bash` line is
load-bearing: without pipefail a failing check piped through tee reports
success.

The guide still described steady_states.txt, branches.txt and the 41->5 syntax,
so anyone following it would edit files that no longer exist. It now shows both
JSON shapes and writes claimeven as a space throughout, which check 0 now
requires: the old advice to use a dot existed only because a trailing space is
invisible and editors strip it, and a quoted JSON string cannot lose one.

Two of its claims were also wrong. Unreachable entries are reported a frontier
at a time rather than all at once, so pruning is iterative. And two playable
miai do not tie, they cancel, and the next level decides.
@2swap
2swap merged commit 00d20ab into 2swap:main Aug 3, 2026
1 check passed
@Waffle3z
Waffle3z deleted the post-json-fixes branch August 4, 2026 05:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants