Skip to content

ci(migration-assistant): fix smoke-parse for tree-sitter-cli 0.25 - #342

Merged
hyperpolymath merged 2 commits into
mainfrom
claude/fix-migration-assistant-paths-flag
May 24, 2026
Merged

ci(migration-assistant): fix smoke-parse for tree-sitter-cli 0.25#342
hyperpolymath merged 2 commits into
mainfrom
claude/fix-migration-assistant-paths-flag

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

Summary

The pinned grammar commit 990214a is unchanged, the install script is unchanged, and the failure is not diff-induced.

Test plan

  • Reproduced the failure locally with tree-sitter-cli 0.25.10 + the pinned grammar commit.
  • Verified the new invocation exits 0 on the existing tools/res-to-affine/test/fixtures/sample.res fixture.
  • CI run on this PR turns the migration-assistant job green.

Strict scope per request: only .github/workflows/ci.yml migration-assistant block touched. No changes to editors/tree-sitter-rescript/ or tools/res-to-affine/vendor/ were required.

https://claude.ai/code/session_01HZ3i2wX5R5rbY8Ycmug4Ao


Generated by Claude Code

…li 0.25

The `--paths` flag was repurposed in tree-sitter-cli >= 0.25 to point at
a *file* listing input source paths, not a directory containing the
grammar. Under the resolved 0.25.10, the step fails with `Failed to
read paths file ... Is a directory (os error 21)`. Run the parser from
within the vendored grammar tree instead, which is the documented
0.25.x lookup mechanism.

https://claude.ai/code/session_01HZ3i2wX5R5rbY8Ycmug4Ao
@github-actions

Copy link
Copy Markdown

🔍 Hypatia Security Scan

Findings: 143 issues detected

Severity Count
🔴 Critical 13
🟠 High 69
🟡 Medium 61

⚠️ Action Required: Critical security issues found!

View findings
[
  {
    "reason": "Stray AI.a2ml in root -- use 0-AI-MANIFEST.a2ml only",
    "type": "banned",
    "file": "AI.a2ml",
    "action": "delete",
    "rule_module": "root_hygiene",
    "severity": "high"
  },
  {
    "reason": "Superseded by 0-AI-MANIFEST.a2ml",
    "type": "banned",
    "file": "AI.djot",
    "action": "delete",
    "rule_module": "root_hygiene",
    "severity": "high"
  },
  {
    "reason": "Issue in quality.yml",
    "type": "missing_workflow",
    "file": "quality.yml",
    "action": "create",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Issue in security-policy.yml",
    "type": "missing_workflow",
    "file": "security-policy.yml",
    "action": "create",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action hyperpolymath/standards/.github/workflows/governance-reusable.yml@main needs attention",
    "type": "unpinned_action",
    "file": "governance.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Action actions/checkout@v6 needs attention",
    "type": "unpinned_action",
    "file": "publish-jsr.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action denoland/setup-deno@v2 needs attention",
    "type": "unpinned_action",
    "file": "publish-jsr.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/affinescript/affinescript/affinescript-deno-test/example/smoke_driver.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/affinescript/affinescript/affinescript-deno-test/cli.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/affinescript/affinescript/affinescript-deno-test/mod.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

@hyperpolymath
hyperpolymath merged commit e8f00fd into main May 24, 2026
12 of 16 checks passed
@hyperpolymath
hyperpolymath deleted the claude/fix-migration-assistant-paths-flag branch May 24, 2026 04:50
@github-actions

Copy link
Copy Markdown

🔍 Hypatia Security Scan

Findings: 142 issues detected

Severity Count
🔴 Critical 13
🟠 High 68
🟡 Medium 61

⚠️ Action Required: Critical security issues found!

View findings
[
  {
    "reason": "Stray AI.a2ml in root -- use 0-AI-MANIFEST.a2ml only",
    "type": "banned",
    "file": "AI.a2ml",
    "action": "delete",
    "rule_module": "root_hygiene",
    "severity": "high"
  },
  {
    "reason": "Superseded by 0-AI-MANIFEST.a2ml",
    "type": "banned",
    "file": "AI.djot",
    "action": "delete",
    "rule_module": "root_hygiene",
    "severity": "high"
  },
  {
    "reason": "Issue in quality.yml",
    "type": "missing_workflow",
    "file": "quality.yml",
    "action": "create",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Issue in security-policy.yml",
    "type": "missing_workflow",
    "file": "security-policy.yml",
    "action": "create",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action hyperpolymath/standards/.github/workflows/governance-reusable.yml@main needs attention",
    "type": "unpinned_action",
    "file": "governance.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Action actions/checkout@v6 needs attention",
    "type": "unpinned_action",
    "file": "publish-jsr.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action denoland/setup-deno@v2 needs attention",
    "type": "unpinned_action",
    "file": "publish-jsr.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/affinescript/affinescript/affinescript-deno-test/example/smoke_driver.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/affinescript/affinescript/affinescript-deno-test/cli.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  },
  {
    "reason": "TypeScript file detected -- banned language",
    "type": "banned_language_file",
    "file": "/home/runner/work/affinescript/affinescript/affinescript-deno-test/mod.ts",
    "action": "flag",
    "rule_module": "cicd_rules",
    "severity": "critical"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

hyperpolymath added a commit that referenced this pull request May 24, 2026
#348)

…erience

Captures five operational findings from the parallel-claude
coordinator-feedback turn (2026-05-24), as a single "Agent operations
notes" section:

* CI signal reliability — "PR merged" does NOT mean "build green" on
this repo today; auto-merge fires through red builds. Recently-merged
PRs (#334/#335/#336/#344) all landed with `build` red; the red persisted
until PR #346.

* Reading CI logs — WebFetch on the Actions UI returns React skeleton;
use mcp__github__pull_request_read get_check_runs / get_status, hand
back to user for actual log lines via `gh run view --log-failed`.

* Known-failing baseline checks — vscode-smoke (npm 404),
migration-assistant (fixed by #342 but stale-base branches red),
governance/Language anti-pattern policy (flags approved TS exemptions),
Hypatia 143-finding comment (mostly the same exemption hits). Don't
waste turns investigating per-PR; only investigate *changes* in this
set.

* Branching discipline — `git fetch origin main && git rebase
origin/main` immediately before push, not just at branch- creation.
Claude 1's #337 accidentally reverted #334+#335 from a stale base; cheap
to prevent.

* Test-fixture hygiene — when adding a new declaration shape (extern fn,
etc.), test it against EVERY downstream consumer
(parse/resolve/typecheck/interp/codegen). PR #346's FnExtern interp bug
survived since the interpreter was written because no test fed an inline
`extern fn` to Interp.eval_program.

Pure documentation. Zero behavioural risk.

Refs PR #346, #335, #337, #344

---------

Co-authored-by: Claude <noreply@anthropic.com>
hyperpolymath added a commit that referenced this pull request Jun 20, 2026
Optional housekeeping from the #138 / standalone-CI thread. Docs +
regenerated test fixtures only — no source change.

### 1. `.claude/CLAUDE.md` — refresh the stale "known-failing baseline
checks"
Now that CI is standalone + green on `main` (#604), several entries were
out of date:
- `vscode-smoke` → **now passes** (self-contained; skips cleanly without
the optional npm package).
- `migration-assistant` → **passes on current `main`** (only red on
pre-#342 bases).
- `governance` → replaced by the self-contained local gate
(`tools/ci/governance-standalone.sh`); the old estate `Language /
package anti-pattern policy` sub-check no longer runs.
- Hypatia comment counts refreshed (~43–71); clarified it's a *delta in
your changed files* that matters, and the Hypatia *check* gates
separately (green).
- Recorded the two `startup_failure` classes that bit the repo for days
so they aren't reintroduced: **(1)** the Actions "allowed actions"
policy rejects **tag-pinned** refs at run-creation → pin every `uses:`
to a full SHA; **(2)** BP008 reusable-caller `concurrency:` stacking.

### 2. `tests/codegen-deno/*.deno.js` — sync 3 drifted snapshots
3 of 30 committed Deno-ESM snapshots had drifted from current codegen
output (runtime-preamble evolution — WASI `fd_write` import, pixi/ipc
bindings); regenerated. All deno harnesses still pass under node.

### Verified
`dune test` green · `tools/run_codegen_deno_tests.sh` all harnesses
pass.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

https://claude.ai/code/session_01Lz7pRcec2Z3tVtaAhvB3M8

---
_Generated by [Claude
Code](https://claude.ai/code/session_01Lz7pRcec2Z3tVtaAhvB3M8)_

Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants