docs: add domain-extensibility.md — the two-axis breadth/depth survey
Documents the full extensibility surface of the domain plugin system as two independent, orthogonally-composable axes:
- Axis A (what you version): the six-method MuseDomainPlugin protocol, the five schema algebras (sequence/tree/tensor/set/map, freely mixable per dimension), the two optional extension protocols (AddressedMergePlugin, HarmonyPlugin), and a depth exhibit on domain-specific invariants (identity's I1/I2/I3). - Axis B (how divergence resolves): the six top-level merge strategies confirmed directly from muse/core/merge_engine.py's strategy table (recursive/overlay/snapshot/replay/ours/theirs, each a distinct (diff_unit, resolution) pair), the .museattributes per-path override layer, and Harmony's four-tier learned-resolution memory.
Grounded entirely in real source, not aspirational copy -- every claim was checked against muse/plugins/*/plugin.py and muse/core/schema.py before being written down. Corrected two claims mid-draft after checking the actual code: identity's I2/I3 invariants are documented as NOT enforced at merge time (only I1 is), and the tensor algebra is not unused -- midi's CC automation dimension uses it directly (dtype=float32, diff_mode=sparse, epsilon=0.5), which also means midi is the one shipped domain that internally mixes three of the five algebras in a single plugin.
Surfaces that muse/plugins/registry.py registers nine domains today (chess, code, identity, midi, mist, scaffold, social, timeline, todo), while the public docs_muse_domains.html page on musehub still claims only three ship (code, identity, mist) -- flagged as a follow-up, not fixed in this commit.
Co-Authored-By: Claude Sonnet 5 <[email protected]>
Semantic Changes
14 symbols
Files Changed
+1
1203 in snapshot
0 comments
muse hub commit comment sha256:94f494a8f59e4b708ebb89e304209737ce34324a33aae83840a6f6b06d7b8d9d --body "your comment"
No comments yet. Be the first to start the discussion.