**Bead document** from Bead: Acequia Link · [canonical source](https://redfish.acequia.io/guerin/.agents/72efa91c-3506-49f2-9b5e-6af4c02ec12e/bead-bind-startup.md) · discussion: Talk: Acequia Link
**You are binding acequia-link.** Current focus: a **design bead** (opened 2026-06-18) that promotes **Link to a first-class agent**, peer to turtles (nodes/beads) and patches (origins/docks). A Link has an id, a breed, two mutable ends, a weight, and a lifecycle (hatch / die / rewire / step), and is *in-formed by participating in least-action pathways*. The design is sketched + demonstrated; **7 open questions await Stephen** (none bound yet). **Do this first:** read [2026-06-18/notes/00-acequia-link.md](2026-06-18/notes/00-acequia-link.md) (the triad, Link anatomy, hatch/die/rewire/step, link-sets, **the top 5 breeds**, least-action unification, the 7 open Qs), then run `node agent.mjs` for the worked demo, then skim [about.md](about.md).
## Operative onboarding - **Goal** — give the bead ecology a first-class **edge vocabulary**: 5 link breeds (mount / lineage / dock / txn / constraint), link-sets as live queries, and one unifying verb (relax toward least action), so the commons can run as a factor graph, not just be described. - **Birth-parent** — [`d4b881f0`](https://redfish.acequia.io/guerin/.agents/d4b881f0-c320-4428-adac-7fa03941def4/about.md) (agent-based-hubler-network): it mapped relations→links but left Links thinnest; its `agent.mjs` has the soft-constraint relaxation `step` this bead generalizes to all breeds. - **Mounted commons** — see [names.json](names.json): polarized-links (`874fce5b`), orchestrator/World (`4c6470f9`), bead-remote/txn (`792ebed9`), soft-constraint pose (`31f69717`), runtime (`f4ef67b7`). - **Constraints** — parciante ethics; **offer-only** (a link steps itself; the design ratifies nothing into `beads.md`); the 5-breed taxonomy + a `links.json` store are PROPOSED.
## Todo / next actions (linked) - [ ] Get Stephen to bind the **7 open questions** in [00-acequia-link.md](2026-06-18/notes/00-acequia-link.md) §7 (link addressing bead-vs-record; `links.json` vs `names.json`; link-set query surface; constraint-solver home global-vs-local; ratify the txn breed; rewire history; links-of-links recursion). - [ ] Once Q1/Q2 bound: design the `links.json` root file (realized edge-set: breed/end1/end2/weight/state) and the `PROPFIND`+filter link-set face so any client can query `outLinksWith(pred)`. - [ ] Once Q4 bound: lift the in-memory constraint relaxation in `agent.mjs` to a real solver tick over the commons graph (offer to the orchestrator `4c6470f9` as a scheduled job: `Hubler.ask(links, l => l.step())`). - [ ] Once Q5 bound: offer a PR-into-`beads.md` for the txn (`request/`→`response/`) breed + its state machine / TTL-necrosis policy (coordinate with `792ebed9`). - [ ] Offer note 00 into the birth-parent `d4b881f0` dock (it owns the triad framing; this completes its Links row).
## Resume contract Dirty-gate background-synced when a chat advances it. On `/bead-close-chat`: flush emerging concepts into `notes/`, flush the verbatim chat log, refresh this file + `about.md` session log, background `/bead-sync`.
## References (bead cross-links) - Bead: Agent Based Hubler Network · [canonical](https://redfish.acequia.io/guerin/.agents/d4b881f0-c320-4428-adac-7fa03941def4/)