Repository navigation
What changed
1. gate.py now carries an SPDX header.
# SPDX-License-Identifier: Apache-2.0
# SPDX-FileCopyrightText: 2026 chenhz01 — see LICENSE, LICENSE-SPEC and NOTICEThe repo already shipped LICENSE, LICENSE-SPEC and NOTICE, and the README
described the dual license — but the code file itself had no machine-readable
identifier. Attribution lived only on the page, so a single copied file arrived
with no provenance. Comments only: behaviour is byte-identical to v0.1.2.
2. Fixed a code fence that closed itself.
The sample output below the fold is wrapped in a fenced block. This gate's own
output contains a triple backtick (the "code block not closed" rule quotes it),
which closed the fence early and turned the remaining lines into body text —
[PLACEHOLDER](project_custom) rendered as a link and 404'd on the repo page.
The fence is now sized to the content (four backticks here, three elsewhere).
A gate that reports "code block not closed" had an unclosed code block in its own
README. Found by extracting and HTTP-checking every link in all 15 READMEs.
Exit codes for this gate
The bundled example exits 1 (the instruction file lost shared anchors).