Skip to content

Description reader: rule vocabulary from outside the reader; oracle drops paths for five codes #204

Closed

Description

@guijacquemet

Two FILE items from the external review of #183-#185 (ChatGPT batch 25, C3 and C6). Neither is a blocker.

  1. Single source of rules (Spec §2.7). description_identity.py imports check_identity_text from discovery.py and SINGLE from normalization (description_identity.py:11-18).`` §2.7 says the reader takes no vocabulary from outside itself at run time. The current values are tested against the Spec (test_spec_rules_table.py:88-94), so no input is wrongly accepted or refused today; only the structure differs from the rule.
    • Fix: keep the reader's own copy, as description_rules, and test that it equals the discovery and normalization values.
  2. Oracle granularity. tests/spec_oracle.py:25-52 drops the paths, and never compares values, for E_SOURCE_FOLDER_REUSED, E_SOURCE_FOLDER_CONFLICT, E_SOURCE_REPEAT_REUSED, E_MASK_SOURCE_TYPE_REUSED and E_REFERENCE_CYCLE. A refusal attached to the wrong field could therefore pass.
    • Fix: add direct reader tests that pin the offending path and value for each of these five codes.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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