Skip to content

docs: AffineScript migration decision + session handoff (bridge-first)#25

Merged
hyperpolymath merged 1 commit into
mainfrom
claude/peaceful-meitner-EFJ7I
Jun 4, 2026
Merged

docs: AffineScript migration decision + session handoff (bridge-first)#25
hyperpolymath merged 1 commit into
mainfrom
claude/peaceful-meitner-EFJ7I

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

What this is

A session handoff so the migration work can be picked up locally (e.g. after teleport). No migration code — this records the decision and the plan.

Decision (2026-06-04)

Resolves ADR-001, adds ADR-006: AffineScript-first, but build the Rust↔AffineScript bridge FIRST.

The readiness check found AffineScript's compiler works (.affine → Wasm) but the Rust host bridge git-reticulator needs doesn't exist yetaffinescript-runtime is ~80% Phase-6 stubs, there's no Rust loader/marshalling (JS has affine-js; Rust has nothing), it's alpha with the CORE-01 soundness gap, and it's Wasm-sandboxed so all IO must be host-side extern fns (the old src/lattice/affine/*.affine calling git2/postgres directly is invalid). So the bridge — an affinescript repo deliverable (runtime/) — comes first; git-reticulator is its first consumer.

Contents

  • docs/MIGRATION-PLAN.adoc — the full handoff: readiness findings, bridge scope + acceptance test, the host+core architecture (thin Rust host + pure .affine lattice core over Wasm, behind a trait LatticeCore seam), the verisim DB mapping (standalone octad store over HTTP; no federation), tests/benches/strict-CI plan, and a RESUME HERE checklist.
  • META.a2mlADR-001 resolved + ADR-006.
  • STATE.a2ml[migration-decision] block + refreshed critical-next-actions.
  • debt.a2ml — core item updated to the bridge-first blocker.

Next step

Deliverable 1 (the bridge) lands in hyperpolymath/affinescript, not here. This PR can stay a draft until that work begins; merge it whenever you want the decision recorded on main.

Draft because it's a planning artifact, and the substantive work starts in the affinescript repo.

https://claude.ai/code/session_01JNCDaWMB8NV6nAPrvmTg4w


Generated by Claude Code

Resolves ADR-001 and adds ADR-006: AffineScript-first, but build the
Rust↔AffineScript bridge FIRST (in the affinescript repo, runtime/) before
migrating git-reticulator's core. No migration code yet — this is the
pick-up-locally handoff after the 2026-06-04 readiness assessment.

- docs/MIGRATION-PLAN.adoc — full handoff: readiness findings, bridge scope,
  host+core plan, verisim DB mapping, tests/benches/CI, RESUME HERE.
- META.a2ml: ADR-001 resolved (IO host-side via extern fn, not crate calls) + ADR-006.
- STATE.a2ml: [migration-decision] + refreshed critical-next-actions.
- debt.a2ml: core item updated to the bridge-first blocker.

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

github-actions Bot commented Jun 4, 2026

Copy link
Copy Markdown

🔍 Hypatia Security Scan

Findings: 23 issues detected

Severity Count
🔴 Critical 0
🟠 High 0
🟡 Medium 23
View findings
[
  {
    "reason": "Action perpolymath/standards/.github/workflows/governance-reusable.yml@main\n needs attention",
    "type": "unpinned_action",
    "file": "governance.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in governance.yml",
    "type": "missing_timeout_minutes",
    "file": "governance.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in hypatia-scan.yml",
    "type": "missing_timeout_minutes",
    "file": "hypatia-scan.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in mirror.yml",
    "type": "missing_timeout_minutes",
    "file": "mirror.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in rust-ci.yml",
    "type": "missing_timeout_minutes",
    "file": "rust-ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in scorecard.yml",
    "type": "missing_timeout_minutes",
    "file": "scorecard.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in secret-scanner.yml",
    "type": "missing_timeout_minutes",
    "file": "secret-scanner.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Nominal-only SAST in git-reticulator: codeql.yml language matrix contains no language present in the repo and lacks `actions`, so CodeQL records zero results on every commit. Remediation: set the CodeQL matrix to `language: actions`.",
    "type": "StaticAnalysis",
    "file": "/home/runner/work/git-reticulator/git-reticulator",
    "action": "auto_fix",
    "rule_module": "scorecard",
    "severity": "medium",
    "remediation": "Add CodeQL or equivalent SAST workflow.",
    "scorecard_check": "SAST"
  },
  {
    "reason": "Repository has 3 non-main remote branch(es). Policy: single main branch only.",
    "type": "GS007",
    "file": ".",
    "action": "delete_remote_branches",
    "rule_module": "git_state",
    "severity": "medium"
  },
  {
    "reason": "Code scanning (Hypatia): hypatia/workflow_audit/missing_timeout_minutes -- Hypatia workflow_audit: missing_timeout_minutes -- 0 day(s) old",
    "type": "CSA001",
    "file": "secret-scanner.yml",
    "action": "review",
    "rule_module": "code_scanning_alerts",
    "severity": "medium"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

@hyperpolymath hyperpolymath marked this pull request as ready for review June 4, 2026 06:09
@hyperpolymath hyperpolymath merged commit 40bafa0 into main Jun 4, 2026
15 checks passed
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