Skip to content

chore: Item 9 — retire ReScript guidance → AffineScript#86

Merged
hyperpolymath merged 1 commit into
mainfrom
chore/item9-rescript-to-affinescript-guidance
May 16, 2026
Merged

chore: Item 9 — retire ReScript guidance → AffineScript#86
hyperpolymath merged 1 commit into
mainfrom
chore/item9-rescript-to-affinescript-guidance

Conversation

@hyperpolymath
Copy link
Copy Markdown
Owner

Estate Tech-Debt — Item 9 (ReScript→AffineScript CI-text sweep)

Rewrites guidance/policy text that recommended ReScript as the
TypeScript/Python replacement to recommend AffineScript instead, per the
estate language policy (RS/TS/JS → AffineScript → typed-wasm).

Scope

  • ✅ In scope: "use ReScript instead" guidance, Rust/ReScript migration-guide
    phrasing, Rust or ReScript policy text.
  • ⛔ Out of scope (intentionally untouched): any rescript-named path/dir and
    ReScript adapters (e.g. proven). That work is preserved intact and usable
    for the ReScript ecosystem — only the forward-looking recommendation changes.

Mechanical, reviewed substitution; residual in-scope occurrences verified 0.

🤖 Generated with Claude Code

Estate language policy: RS/TS/JS → AffineScript → typed-wasm. This rewrites
guidance/policy text that recommended ReScript as the TypeScript/Python
replacement so it now points at AffineScript.

Scope guard (deliberate): rescript-named paths and ReScript adapters are NOT
touched — that work is preserved intact for the ReScript ecosystem. Only the
forward-looking "use ReScript instead" recommendation is updated.

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

🔍 Hypatia Security Scan

Findings: 52 issues detected

Severity Count
🔴 Critical 12
🟠 High 27
🟡 Medium 13

⚠️ Action Required: Critical security issues found!

View findings
[
  {
    "reason": "No permissions declaration -- add permissions: read-all",
    "type": "missing_permissions",
    "file": "serviceworker-check.yml",
    "action": "add_permissions",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Python file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/idaptik/idaptik/dlc/idaptik-dlc-reversible/robot-repo-bot/_modules/robot_repo.py",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "Deno -A grants all permissions -- use specific --allow-* flags (3 occurrences, CWE-250)",
    "type": "js_deno_all_perms",
    "file": "/home/runner/work/idaptik/idaptik/run.js",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "high"
  },
  {
    "reason": "Nickel file missing SPDX-License-Identifier header (1 occurrences, CWE-1104)",
    "type": "ncl_missing_spdx",
    "file": "/home/runner/work/idaptik/idaptik/configs/config.ncl",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "medium"
  },
  {
    "reason": "getExn on external data -- use pattern matching (2 occurrences, CWE-754)",
    "type": "getexn_on_external",
    "file": "/home/runner/work/idaptik/idaptik/src/app/devices/VMBridge.res",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "critical"
  },
  {
    "reason": "JSON decode without validation (2 occurrences, CWE-20)",
    "type": "json_decode_no_validation",
    "file": "/home/runner/work/idaptik/idaptik/src/app/proven/SafeJson.res",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "critical"
  },
  {
    "reason": "JSON decode without validation (1 occurrences, CWE-20)",
    "type": "json_decode_no_validation",
    "file": "/home/runner/work/idaptik/idaptik/src/app/screens/BalanceAnalyserModel.res",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "critical"
  },
  {
    "reason": "Obj.magic bypassing type safety (1 occurrences, CWE-704)",
    "type": "obj_magic",
    "file": "/home/runner/work/idaptik/idaptik/src/app/verisimdb/VeriSimDrift.res",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "high"
  },
  {
    "reason": "Obj.magic bypassing type safety (1 occurrences, CWE-704)",
    "type": "obj_magic",
    "file": "/home/runner/work/idaptik/idaptik/src/app/verisimdb/VeriSimVcl.res",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "high"
  },
  {
    "reason": "Obj.magic bypassing type safety (1 occurrences, CWE-704)",
    "type": "obj_magic",
    "file": "/home/runner/work/idaptik/idaptik/src/app/verisimdb/VeriSimSearch.res",
    "action": "flag",
    "rule_module": "code_safety",
    "severity": "high"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

@hyperpolymath hyperpolymath merged commit 3ae3ea0 into main May 16, 2026
23 of 29 checks passed
@hyperpolymath hyperpolymath deleted the chore/item9-rescript-to-affinescript-guidance branch May 16, 2026 23:55
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