Skip to content

Two small record defects: assignat manifest miscounts unread sheets, and build_audit's basename fallback is unreachable #52

Description

@mmcky

Two small defects found while independently validating #51. Neither affects a published artifact; both are the kind that quietly mislead a later reader.

1. assignat.xlsx.yml:97 says 14 unread sheets and lists 15

The comment reads "14 further sheets ship with the workbook and are not read by any lecture" and then enumerates 15 names on lines 98-99.

Fifteen is the correct number, and the fifteen listed names are exactly right. Verified independently of openpyxl by unzipping the workbook and parsing xl/workbook.xml for <sheet name=…>: 18 sheets total, of which the lecture reads 3 distinct ones (Budgets, seignor, Data). 18 − 3 = 15, and the listed set matches the actual unread set exactly — no extras, no omissions.

The likely cause is worth recording because it will recur: 18 − 4 = 14 comes from subtracting the four schema.sheets entries rather than the three distinct sheet names, since Data is declared twice as two separate ranges. dette.xlsx.yml avoids the trap by wording rather than by method, so the same slip is available next time a manifest with a repeated sheet is written.

Scope is genuinely small: it lives in a comment, schema.sheet_count: 18 is correct, and nothing in the repo consumes the number — grep -rn sheet_count scripts .github PLAN.md README.md returns nothing. No tooling, catalog or check is affected.

2. build_audit.py — the basename fallback in committed_referenced() is dead code

scripts/build_audit.py:305-325. The intended basename fallback at lines 322-324 can never execute: its condition at 322-323 is a strict superset-conjunction of the first branch's condition at line 313, so it is only ever evaluated in the case where line 313's test already returned False — which is precisely where its own condition cannot hold.

The audit's current results are unaffected, since the paths it is meant to catch are being caught by the first branch. But it is a fallback that reads as protection and provides none, in the function that decides whether a committed file counts as referenced — worth either fixing the condition or deleting the branch so the next reader isn't reassured by it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions