Skip to content

fix(validation): detect inconsistent chain values - #2467

Open
chico10117 wants to merge 6 commits into
Chain-Love:json-toolsfrom
chico10117:codex/chain-consistency-1943
Open

fix(validation): detect inconsistent chain values#2467
chico10117 wants to merge 6 commits into
Chain-Love:json-toolsfrom
chico10117:codex/chain-consistency-1943

Conversation

@chico10117

@chico10117 chico10117 commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

Closes #1943

Summary

  • Pass the generated network filename into validation rules.
  • Flag obvious contradictions between a row's chain value and network signals in its slug or source URLs.
  • Check URL signals even when the slug already has a chain signal.
  • Keep matching conservative: generic testnet accepts known testnet aliases; generic mainnet matches chain=mainnet, the current network's canonical chain value, or a documented network-scoped alias.
  • Do not treat ambiguous labels such as one as global network signals or global mainnet aliases.
  • Require exact-key allowlist entries with non-empty reasons, and document the current legacy main data exceptions separately from future validation failures.
  • Restore CI so this branch compiles tools, runs focused regression tests, generates JSON from current main data, and validates the result.

Type of change

  • Add data rows
  • Update data rows
  • Remove data rows
  • Schema change
  • Documentation/metadata only

Scope

  • Networks affected: generated network validation
  • Categories affected: all generated categories with a chain field
  • Additional notes: no production data rows are changed; this is a validator, CI, allowlist, and contributor-guidance change.

Links

Validation checklist

  • I followed the Style Guide and Column Definitions.
  • No external provider links or data rows were added; the changed documentation links are repository documentation links.
  • No provider/network entries were added or modified.
  • This is not a blind AI-generated submission: the logic was manually inspected and focused-tested.

Validation

  • python3 -m compileall -q tools
  • python3 -m json.tool tools/schema.json
  • python3 -m json.tool tools/chain_validation_allowlist.json
  • python3 tools/test_chain_validation.py
  • Full CSV-to-JSON generation and validation passed against the current main snapshot.

Reward

Reward address (Ethereum Mainnet USDC/USDT): 0x820a7bf90d944bb26bfD9b62Ab172Fc3A0829cB9

AI disclosure: this patch was prepared with AI assistance; the changed logic was manually inspected and focused-tested.

@USS-Supervisor

Copy link
Copy Markdown
Member

Hi @chico10117 - this PR looks stale, and review should wait because required CI is missing or has not reported for the latest head commit yet. Could you please fix CI and update the PR when it is ready for review?

@USS-Supervisor USS-Supervisor left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verdict: COMMENT
Risk: LOW
Summary: The chain-value validation tooling diff has required validation passing, but no current-cycle link-check run appeared after the check-links label flow, so this cannot be approved in this cycle.
Findings: None from the visible diff; approval is blocked because the current review-cycle link-check run was missing after the five-minute label flow.
Confidence: MEDIUM

@USS-Supervisor

Copy link
Copy Markdown
Member

Hi @eugene17kotov - this stale PR looks ready for reviewer action. Required CI is passing, and I do not see a creator-side blocker. I requested your review; could you please take a look when you have a chance?

@USS-Supervisor

Copy link
Copy Markdown
Member

Hi @chico10117 - this PR is stale, and review should wait until required CI passes. Current blocker: CI not passing: Generate JSON and validate (isolated)=missing. Could you please fix CI and update the PR when it is ready?

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