Skip to content

fix: remove banned V-language v-adapter (route via zig-unified-api-adapter)#65

Merged
hyperpolymath merged 1 commit into
mainfrom
fix/remove-v-adapter
May 16, 2026
Merged

fix: remove banned V-language v-adapter (route via zig-unified-api-adapter)#65
hyperpolymath merged 1 commit into
mainfrom
fix/remove-v-adapter

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

Summary

V-language is banned estate-wide; the sanctioned connector layer is zig-unified-api-adapter. This PR removes the V-language adapter from echidna — the worst single V-lang footprint in the estate (9 live source files).

Changes

Removed src/interfaces/v-adapter/ (9 V source files, all module main):
boj.v, graphql.v, grpc.v, overlay.v, overlay_graphql.v, overlay_grpc.v, rest.v, tentacles.v, typell.v.

Why no wiring changes were needed

The directory was completely unwired:

  • Not a Cargo workspace memberCargo.toml lists only src/interfaces/{graphql,grpc,rest} (plus the crates/*), never v-adapter.
  • No mod declaration referencing it anywhere.
  • No tracked build file, Justfile, build.rs, or CI workflow references v-adapter/v_adapter.
  • src/interfaces/README.md documents only graphql/grpc/rest and contains no v-adapter reference.

git grep for v-adapter/v_adapter across tracked non-data files returns no remaining references after removal. No dangling paths, no // TODO stubs required.

Validation

  • Confirmed the 9 files are V source (module main, V syntax), not Coq.
  • Post-removal dangling-reference scan: CLEAN.
  • cargo build --offline fails on a pre-existing schemars dependency-resolution issue in the unrelated echidna-mcp crate (offline cache miss, not a regression — v-adapter was never a Cargo member so its removal cannot affect the build graph).

🤖 Generated with Claude Code

…apter)

V-language is banned estate-wide; the sanctioned connector layer is
zig-unified-api-adapter.

Removed src/interfaces/v-adapter/ (9 V source files: boj.v, graphql.v,
grpc.v, overlay.v, overlay_graphql.v, overlay_grpc.v, rest.v,
tentacles.v, typell.v - all "module main" V code).

No wiring removal was needed: the directory was never a Cargo workspace
member (Cargo.toml lists only graphql/grpc/rest under src/interfaces/),
had no mod declaration, and was unreferenced by any tracked build file,
Justfile, or CI workflow. git grep for v-adapter/v_adapter in tracked
non-data files returns no remaining references. No dangling paths left
behind.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

🔍 Hypatia Security Scan

Findings: 187 issues detected

Severity Count
🔴 Critical 37
🟠 High 75
🟡 Medium 75

⚠️ Action Required: Critical security issues found!

View findings
[
  {
    "reason": "Action haskell-actions/setup@v2 needs attention",
    "type": "unpinned_action",
    "file": "agda-meta-checker.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action actions/cache@v4 needs attention",
    "type": "unpinned_action",
    "file": "agda-meta-checker.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action hyperpolymath/panic-attack/.github/workflows/scan-and-report.yml@main needs attention",
    "type": "unpinned_action",
    "file": "security-scan.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Workflow executes remote script directly (curl/wget piped to shell). Download, verify checksum/signature, then execute.",
    "type": "download_then_run",
    "file": "mirror.yml",
    "action": "verify_download_integrity",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "believe_me undermines formal verification (1 occurrences, CWE-704)",
    "type": "believe_me",
    "file": "/home/runner/work/echidna/echidna/src/abi/TypeLLForeign.idr",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "critical"
  },
  {
    "reason": "believe_me undermines formal verification (2 occurrences, CWE-704)",
    "type": "believe_me",
    "file": "/home/runner/work/echidna/echidna/src/abi/CoprocessorForeign.idr",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "critical"
  },
  {
    "reason": "believe_me undermines formal verification (1 occurrences, CWE-704)",
    "type": "believe_me",
    "file": "/home/runner/work/echidna/echidna/src/abi/Overlay.idr",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "critical"
  },
  {
    "reason": "believe_me undermines formal verification (1 occurrences, CWE-704)",
    "type": "believe_me",
    "file": "/home/runner/work/echidna/echidna/src/abi/TentaclesForeign.idr",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "critical"
  },
  {
    "reason": "believe_me undermines formal verification (1 occurrences, CWE-704)",
    "type": "believe_me",
    "file": "/home/runner/work/echidna/echidna/src/abi/OverlayForeign.idr",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "critical"
  },
  {
    "reason": "believe_me undermines formal verification (1 occurrences, CWE-704)",
    "type": "believe_me",
    "file": "/home/runner/work/echidna/echidna/src/abi/BojForeign.idr",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "critical"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

@hyperpolymath
hyperpolymath merged commit 9e6ccd0 into main May 16, 2026
33 of 39 checks passed
@hyperpolymath
hyperpolymath deleted the fix/remove-v-adapter branch May 16, 2026 14:52
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.

1 participant