Draft CAND-0018 Capability Contract Boundary from a screened AI-chat lead

history/260927-ComplexWebAppUiComponents_chatgpt.txt is a pasted AI-chat
transcript on UI-integration architecture. It fails this repo's primary-source
bar (unauthored, unverifiable broken citation markers), so it is screened as
a leads-only document, not cataloged as a source, and never cited as evidence.

Instead read the two real specs it pointed to: MDN Custom Elements (SRC-0046)
and webpack Module Federation (SRC-0047). Neither defines a semantic UI
capability contract (inputs/events/commands/slots) as a first-class concept;
that gap motivates the new draft hypothesis, distinct from the existing
Independent Feature Boundary (release cadence) and Vertical Feature Slice
(source grouping) candidates.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 290719@bnt-lap001
Assistant-Session: 55cbe504-1bfe-4932-b761-29016523c87b
This commit is contained in:
tegwick 2026-09-27 23:29:10 +02:00
parent fad8abdc2c
commit eaa1608771
7 changed files with 657 additions and 4 deletions

View file

@ -8,21 +8,21 @@ The baseline profiles are author-model assessments by Codex; they do not confer
## Current corpus
17 candidates: 17 hypothesis.
18 candidates: 18 hypothesis.
| Evidence attached to a candidate | Candidates |
| --- | ---: |
| documentary | 17 |
| documentary | 18 |
| static-code | 7 |
| runtime | 8 |
Categories overlap. Runtime includes authored fixtures and negative controls. Family labels group related evidence; they are not counts of independent applications.
Independent human profile reviews: 0/17. Full-contract independent-use counts unassessed: 17/17.
Independent human profile reviews: 0/18. Full-contract independent-use counts unassessed: 18/18.
## Change since baseline
Baseline baseline-2026-09-26; source revision `f273a190f0e08b8cfe0bb7260d0e7d889f1c090a`. Added: 0; removed: 0; shared candidates with changed content: 3; changed evidence/review assessments: 17; maturity transitions: 0.
Baseline baseline-2026-09-26; source revision `f273a190f0e08b8cfe0bb7260d0e7d889f1c090a`. Added: 1; removed: 0; shared candidates with changed content: 3; changed evidence/review assessments: 17; maturity transitions: 0.
The shared cohort is compared separately from additions. Changed text or evidence counts are not learning gains.
@ -391,6 +391,21 @@ Open limits: No upstream deployment or real team/release-independence validation
Superseded by: none recorded.
### CAND-0018 — Capability Contract Boundary
[CapabilityContractBoundary](../../research/candidates/CapabilityContractBoundary.md) · draft / hypothesis
Declare a UI capability's semantic surface separately from its runtime-isolation mechanism.
| Evidence | Family | Scope | Review |
| --- | --- | --- | --- |
| documentary | Web Components | CC01: Custom Elements observedAttributes/lifecycle callback mechanism, narrower than a full semantic contract. | [CapabilityContractSources](../../research/reviews/CapabilityContractSources.md) |
| documentary | webpack | CC02: Module Federation expose/consume module and share-scope dependency-negotiation mechanism, one layer below any UI-facing contract. | [CapabilityContractSources](../../research/reviews/CapabilityContractSources.md) |
Open limits: No known use of an explicit capability contract, as distinct from its substrate mechanisms, has been located. Enforcement, versioning and compatibility checking are unverified; a contract with no tooling is only documentation. Only one family per substrate mechanism inspected; no independent recurrence.
Superseded by: none recorded.
## Recorded learning
### LEARN-0001 — What do pinned recovery implementations establish?

View file

@ -743,6 +743,45 @@
"Distributed atomicity, retention authorization and native-unload/crash behavior remain open."
],
"superseded_by": []
},
{
"id": "CAND-0018",
"path": "research/candidates/CapabilityContractBoundary.md",
"title": "Capability Contract Boundary",
"sha256": "a678f88e9b53d7273e29e3aea2d23f2297055253dcf4518444d3089fa6da4331",
"status": "draft",
"maturity": "hypothesis",
"decision": "Declare a UI capability's semantic surface separately from its runtime-isolation mechanism.",
"evidence": [
{
"kind": "documentary",
"family": "Web Components",
"ref": "research/reviews/CapabilityContractSources.md",
"scope": "CC01: Custom Elements observedAttributes/lifecycle callback mechanism, narrower than a full semantic contract."
},
{
"kind": "documentary",
"family": "webpack",
"ref": "research/reviews/CapabilityContractSources.md",
"scope": "CC02: Module Federation expose/consume module and share-scope dependency-negotiation mechanism, one layer below any UI-facing contract."
}
],
"independent_full_contract_uses": null,
"review": {
"assessed_at": "2026-09-27",
"reviewer": "Codex",
"role": "author-model",
"independent_human": false,
"last_substantive_review_date": "2026-09-27",
"substantive_review_ref": "research/reviews/CapabilityContractSources.md",
"substantive_review_scope": "Two real substrate specs read directly; the prompting AI-chat transcript is not evidence."
},
"gaps": [
"No known use of an explicit capability contract, as distinct from its substrate mechanisms, has been located.",
"Enforcement, versioning and compatibility checking are unverified; a contract with no tooling is only documentation.",
"Only one family per substrate mechanism inspected; no independent recurrence."
],
"superseded_by": []
}
]
}