// SPDX-License-Identifier: CC-BY-SA-4.0
// SPDX-FileCopyrightText: 2025-2026 Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>
= AffineScript co-development proposals (cross-repo, staged for review)
:toc: macro

toc::[]

== What this directory is

This tree holds **cross-repo proposals produced during AffineScript
co-development that target a repo *other than* affinescript**. They are
staged here — as real, diff-able files — because the working agreement
for this session is *writes go to the affinescript repo only*; everything
destined for idaptik, echo-types, standards, etc. is parked here for human
review before it is applied to its home repo.

Each subdirectory is a self-contained proposal with its own `README.adoc`
explaining what it is, where it belongs, how it was verified, and how to
land it.

== Index

[cols="1,2,1,2",options="header"]
|===
| Subtree | Target repo | Status | What

| `echo-types/`
| `hyperpolymath/echo-types`
| *Verified*
| `EchoEncodingFaithfulness.agda` — a machine-checked Agda module
  certifying the soundness of the "the integer IS the X" co-processor
  integerization pattern (lossless = injective; lossy = collision /
  clamp-to-sentinel). Typechecks under `--safe --without-K`, zero
  postulates.

| `idaptik/`
| `hyperpolymath/idaptik`
| *Verified*
| Two worked, verified coprocessor ports + one honest non-port:
  `Kernel_IO` (fresh re-decomposition, compiles to wasm, logic 6/6 green),
  `SecurityRank` (existing port, differential parity 78/78 green + proof
  tie-in), `Kernel_Quantum` (documented effect-codegen-wall non-migration).

| `standards/`
| `hyperpolymath/standards`
| *Drafted*
| Estate-standards implications with drafted normative text: the
  integerization + differential-parity acceptance bar (AS-MIG-1/2), the
  String host-boundary ABI spec (AS-ABI-STR-1), the github-only install
  recipe (EST-CI-NET-1), the `--deno-esm`/TS-0 exemption-table amendment,
  and a release-cadence-coupling note (EST-REL-PIN-1).

| `toolchain/`
| `hyperpolymath/affinescript` (compiler/roadmap) + estate
| *Drafted*
| Six compiler/toolchain findings: the variable-string-backend gap (#1
  leverage), compiler-emitted `@boundary` Echo obligations, `--deno-esm`
  to retire the TS harnesses, the stale-harness finding, github-only
  portability, release-cadence coupling — plus the interpreter/codegen
  divergence bonus finding.
|===

== Not staged here (landed directly in affinescript)

The **frontier-practices guide** development is first-class affinescript
content, so it landed directly (not under `proposals/`):

* `docs/guides/migration-playbook.adoc` — the systematic *Co-processor
  Integerization* chapter (six named, verified patterns + pattern index).
* `docs/guides/frontier-guide.adoc` — conceptual *Chapter 9: The
  Co-processor and the Integer*.
* `docs/guides/frontier-programming-practices/AI.a2ml` — the
  machine-readable companion stanza (the bot-loaded session-start file),
  so AI agents get the same patterns humans do.

== Why staged-not-applied

Three reasons, all from the session's working agreement:

. *Review gate.* The owner wants to review anything touching repos other
  than affinescript before it lands.
. *Honest provenance.* A staged proposal records exactly how it was
  produced and verified, so the receiving repo's maintainer can re-run
  the checks rather than trust a claim.
. *No silent cross-repo drift.* Estate policy (see the standards repo's
  license + no-automated-edits guardrails) is firmly against bulk
  cross-repo sweeps; per-repo human acceptance is the rule.
