Skip to content

docs: bindings + stdlib + alib roadmaps (3 satellites)#410

Merged
hyperpolymath merged 1 commit into
mainfrom
docs/bindings-roadmap-top50
May 28, 2026
Merged

docs: bindings + stdlib + alib roadmaps (3 satellites)#410
hyperpolymath merged 1 commit into
mainfrom
docs/bindings-roadmap-top50

Conversation

@hyperpolymath
Copy link
Copy Markdown
Owner

Summary

Adds three satellite roadmap documents under docs/, cross-linked from the main ROADMAP.adoc:

Doc Items Tiers / Tracks
docs/bindings-roadmap.adoc 50 5 tiers — idaptik blockers → estate → web universals → backend/cloud → tooling
docs/stdlib-roadmap.adoc 50 5 tiers — runtime gaps → RSR rewires → universals → concurrency → conformance
docs/alib-roadmap.adoc 25 3 tracks — T1 conformance impl, T2 runner/CI, T3 affine-aware contributions back upstream

Main ROADMAP.adoc gets a new == Satellite roadmaps section near the top and three new See Also entries.

Why three satellites

Each surface has a different cadence and different consumers:

  • Bindings track host-runtime FFI needs (consumer-driven: idaptik / estate apps).
  • Stdlib tracks .affine files in stdlib/ (compiler-driven: type-system + interp + codegen).
  • aLib tracks conformance vs the hyperpolymath/aggregate-library methods repo + spec extensions we contribute back.

Bundling these into the main ROADMAP would crowd compiler-progress reporting; splitting into satellites lets each evolve independently with stable item numbers.

Source / context

Compiled 2026-05-28 during planning after the idaptik PR #107 (ReScript → AffineScript pilot, 9 .res → 1 .affine). That pilot surfaced ~10 concrete stdlib runtime gaps (now Tier 1 of stdlib-roadmap.adoc) and ~10 binding-package needs (now Tier 1 of bindings-roadmap.adoc).

alib-roadmap.adoc is informed by a fresh read of hyperpolymath/aggregate-library v0.1.0 (20 ops × 6 categories) — including the schema-extension opportunities AffineScript's affine + effect surface suggests (T3 items).

Out of scope this PR

  • Implementing any roadmap item.
  • Opening the umbrella tracker + per-tier child issues — separate PR(s).
  • Cross-repo PRs to hyperpolymath/aggregate-library (T3 items).
  • CAPABILITY-MATRIX.adoc row updates — that's a follow-up alongside each implementation PR.

Test plan

  • AsciiDoc renders cleanly on the docs site (Casket SSG).
  • All four link: references resolve (bindings-roadmap ↔ stdlib-roadmap ↔ alib-roadmap ↔ ROADMAP).
  • No docs/*.md files added (DOC-FORMAT rule).
  • No "Closes #N" collision (DOC-DEDUP rule).
  • Each satellite carries SPDX-License-Identifier: MPL-2.0.

🤖 Generated with Claude Code

Adds three satellite roadmap documents under `docs/` and cross-links
them from the main ROADMAP.adoc:

* `docs/bindings-roadmap.adoc` — 50 framework bindings, 5 tiers
  (idaptik blockers → estate near-term → web universals →
  backend/cloud → tooling/interop). Compiled from idaptik PR #107
  + estate-wide binding-need inventory.

* `docs/stdlib-roadmap.adoc` — 50 stdlib items, 5 tiers (idaptik
  runtime gaps → RSR rewires → universals → concurrency/async →
  conformance/introspection). Includes inventory snapshot of the
  current `stdlib/` directory.

* `docs/alib-roadmap.adoc` — 25 items, 3 tracks (T1 conformance
  implementation, T2 runner/infrastructure, T3 affine-aware
  contributions back to `hyperpolymath/aggregate-library`). Aligned
  with aLib v0.1.0 (20 ops × 6 categories).

Main ROADMAP gains a new `== Satellite roadmaps` section near the
top and three See Also entries at the bottom. Where this set
disagrees with CAPABILITY-MATRIX.adoc or ECOSYSTEM.adoc, those win.

Per-tier tracking issues and the umbrella tracker will follow as
separate PRs.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@hyperpolymath hyperpolymath enabled auto-merge (squash) May 28, 2026 09:59
|`http-capability-gateway` shipped Zig server (PR#23); AffineScript-side server bindings would let `.affine` programs serve HTTP without Zig.

|14
|*WebSocket client + server* (raw `ws://`, separate from Phoenix)
@github-actions
Copy link
Copy Markdown

🔍 Hypatia Security Scan

Findings: 82 issues detected

Severity Count
🔴 Critical 4
🟠 High 11
🟡 Medium 67

⚠️ Action Required: Critical security issues found!

View findings
[
  {
    "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": "Issue in affine-vscode-publish.yml",
    "type": "unknown",
    "file": "affine-vscode-publish.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in casket-pages.yml",
    "type": "unknown",
    "file": "casket-pages.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in casket-pages.yml",
    "type": "unknown",
    "file": "casket-pages.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in ci.yml",
    "type": "unknown",
    "file": "ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in ci.yml",
    "type": "unknown",
    "file": "ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in ci.yml",
    "type": "unknown",
    "file": "ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in ci.yml",
    "type": "unknown",
    "file": "ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in ci.yml",
    "type": "unknown",
    "file": "ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

@hyperpolymath hyperpolymath merged commit e5b9394 into main May 28, 2026
23 of 26 checks passed
@hyperpolymath hyperpolymath deleted the docs/bindings-roadmap-top50 branch May 28, 2026 10:06
hyperpolymath added a commit that referenced this pull request May 28, 2026
## Summary

Follow-up to #410. The bindings-roadmap referenced `ws://` in a table
cell describing the WebSocket binding entry. Semgrep's
`javascript.lang.security.detect-insecure-websocket` rule scans asciidoc
+ prose and flagged this on #410's CI run.

Per the estate-wide **secure-protocols-in-docs** policy established
2026-05-28, all transport schemes in authored content must default to
the encrypted variant (https, wss, sftp, ldaps, smtps, …) — Semgrep
treats the literal `ws://` token in markdown/asciidoc as if it were
code.

This PR changes the table cell from `raw \`ws://\`` → `encrypted
\`wss://\``.

## Test plan

- [ ] Semgrep OSS check goes from FAILURE → SUCCESS
- [ ] AsciiDoc still renders the table cell correctly

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

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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