|
1 | 1 | # SPDX-License-Identifier: MPL-2.0 |
2 | 2 | # |
3 | 3 | # .hypatia-ignore — repo-scoped exemptions for the estate governance |
4 | | -# bundle's anti-pattern scanner. Each non-comment line is a file path |
5 | | -# (anchored: matched as `^${path}$` or `^${path}\b`) that the scanner |
6 | | -# should NOT flag. |
| 4 | +# bundle's anti-pattern scanner. Format (per the bundle's `is_exempt` |
| 5 | +# function): each non-comment line is `${rule}:${path}` matched as a |
| 6 | +# fixed-string whole-line equality (`grep -qxF`). |
7 | 7 | # |
8 | | -# Format documented inline in the governance reusable workflow's |
9 | | -# `is_exempt` predicate; the first non-comment line below is the |
10 | | -# pattern, the lines after `#` are the reason / rationale. |
| 8 | +# Comment lines (`#`) and blank lines are tolerated because they never |
| 9 | +# match the `rule:path` shape under -xF. |
11 | 10 | # |
12 | 11 | # ─── Migration-tool input fixtures ────────────────────────────────── |
13 | 12 | # |
14 | | -# The .res → .affine migration assistant (issue #57) needs a corpus |
15 | | -# of real `.res` files in its test/fixtures/ directory so the walker |
16 | | -# can be exercised end-to-end. The banned-language rule |
17 | | -# (cicd_rules/banned_language_file) correctly flags `.res` files |
18 | | -# everywhere in the estate — exempt the migration-tool fixture |
19 | | -# specifically so it stops blocking every PR. |
| 13 | +# The .res → .affine migration assistant (issue #57) needs a corpus of |
| 14 | +# real `.res` files in its test/fixtures/ directory so the walker can |
| 15 | +# be exercised end-to-end. The banned-language rule correctly flags |
| 16 | +# `.res` files everywhere in the estate — exempt the migration-tool |
| 17 | +# fixture specifically. |
20 | 18 | # |
21 | | -# Why a side-channel exemption and not an inline pragma: the migration |
22 | | -# walker emits line numbers from the fixture into its snapshot output, |
23 | | -# and an inline pragma in the file header would shift those line |
24 | | -# numbers and break the snapshot test. Path-based exemption avoids |
25 | | -# touching the file content. |
26 | | -tools/res-to-affine/test/fixtures/sample.res |
| 19 | +# Why side-channel exemption (this file) instead of an inline pragma: |
| 20 | +# the migration walker emits source line numbers from the fixture into |
| 21 | +# its snapshot output, and an inline pragma in the file header would |
| 22 | +# shift those line numbers and break the snapshot test. Path-based |
| 23 | +# exemption avoids touching the file content. See feedback memory |
| 24 | +# `feedback_inline_pragma_vs_snapshot_test` for the general principle. |
| 25 | +cicd_rules/banned_language_file:tools/res-to-affine/test/fixtures/sample.res |
0 commit comments