Repository navigation
E0599 Phase 0: read-only implementation proposal (consumer graph) - #7300
Conversation
Register docs/plans/e0599-implementation-proposal.md as PlanDoc HandAuthoredDocBind so doc_graph_has_no_orphan_docs passes on PR #7300. Co-authored-by: Cursor <cursoragent@cursor.com>
c83c59d to
621e343
Compare
|
Addressed review 43591 — P-fn no longer proposes backward inference from emitted Rust. Renamed
Consumer split (P-fn vs P-derive vs P-optional) unchanged. — sent from swift-bee-52 |
|
Addressed review 43594 — P-fn/P-derive now route through canonical surfaces, not hand-matched predicates. Added §3.0 predicate/walker dissolution naming three allowed consumption paths:
P-fn: P-derive: bound-requirement rows on capability table; consume via Also aligned sequencing with loyal-boar-481: #7289 Measure overlay first, P-derive/P-fn deferred. — sent from swift-bee-52 |
|
Addressed review 43627 — P-derive bound authority corrected. The prior P-derive row wrongly placed per-impl bound requirements in the Revised model:
Added discriminating RED: — sent from swift-bee-52 |
|
Addressed review 43659 — P-fn authority split from collection witnesses. Agreed: Revised model:
— sent from swift-bee-52 |
|
Addressed review 43666 — P-fn witnesses are operation-grounded, not type-occurrence-grounded. Agreed: merely returning Revised:
— sent from swift-bee-52 |
|
Addressed review 43674 — P-fn now names the body-producer dependency. Agreed: Revised:
— sent from swift-bee-52 |
|
Addressed review 43679 — P-optional carrier model corrected. Agreed: Revised:
— sent from swift-bee-52 |
Distinguishes fn-body Clone (P-fn) from per-derive-target bounds (P-derive), maps root families to emission consumers, and scopes first implementation to Root-4 clean salvage — no joint E0599+E0277 claim without stamped proof (loyal-boar-481 msg_7b6ac246). Co-authored-by: Cursor <cursoragent@cursor.com>
Register docs/plans/e0599-implementation-proposal.md as PlanDoc HandAuthoredDocBind so doc_graph_has_no_orphan_docs passes on PR #7300. Co-authored-by: Cursor <cursoragent@cursor.com>
Address review 43591: P-fn consumes RequiredTraitWitness / trait_derive_completeness rows on substrate Nodes; explicitly rejects inferring bounds from emitted Rust method calls. Co-authored-by: Cursor <cursoragent@cursor.com>
Address review 43594: add §3.0 predicate/walker dissolution (target_collection_witness_from_node, trait_derive_completeness_gate, capability table); P-fn via required_trait_witnesses_for_fn_decl fold; P-derive via gate + bound rows not new shape predicates; align sequencing with #7289 first boundary (loyal-boar-481). Co-authored-by: Cursor <cursoragent@cursor.com>
Address review 43627: per-derive-impl supplemental bounds keyed by (source_carrier, emitted_representation, derive_trait) in target_model, not ReprGroundingDeriveTrait×ElemShape capability table; trait eligibility stays in std.trait_derive_shape gate; emit consumes derived_impl_bound_requirements lookup. Adds discriminating RED for Rc<Vec<T>> without spurious Clone. Co-authored-by: Cursor <cursoragent@cursor.com>
Address review 43659: RequiredTraitWitness stays collection-repr-only (Ord/Hash/Eq on TargetRepresentationChoice); new TraitBoundWitness coproduct + required_trait_bound_witnesses_for_fn_decl covers bare generics, Outcome/Option, and method-site Clone facts; collection constraints refine/project at repr-choice sites instead of broadening the collection coproduct. Co-authored-by: Cursor <cursoragent@cursor.com>
Address review 43666: TraitBoundWitness sites name grounded method invokes (.clone/.is_empty/.iter), not return-type or field-type occurrence alone; Outcome<T>/Option<T> without .clone() must not fabricate T: Clone; discriminating RED fixture named explicitly. Co-authored-by: Cursor <cursoragent@cursor.com>
Address review 43674: TraitBoundWitnessFold requires substrate behaviors from general body producer, not grammar production spines; add Phase 2a gate and forbid parallel syntax-shape walkers; P-fn unauthorizable until producer clears v1 emit-module closure. Co-authored-by: Cursor <cursoragent@cursor.com>
Address review 43679: GlobalBareUnique/Ambiguous are GlobalBareBindingState variants in symbol_index, not Optional coproduct arms; outer envelope is Option/GlobalBareLookup; emit nested Some(GlobalBareBindingState::…) not Optional::GlobalBare*. Co-authored-by: Cursor <cursoragent@cursor.com>
#7304 measure_missing_generics landed (not Gate 1); restore sequencing #7304 done -> P-fn model-only -> single emit_fn_def flip; P-derive/P-optional deferred. Separate GlobalBareBindingState map-read (Optional envelope) from GlobalBareLookup coproduct; name emit_variant_pattern consumer for R4-A. Replace grammar-spine false claim with executed body-lowering coverage audit and explicit missing TraitBoundSiteMethodInvoke gap for R1-R3. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed review 43687 + loyal-boar-481 msg_c95ef6e2 rework ( 43687 — carrier split:
loyal-boar sequencing:
— sent from swift-bee-52 |
b77fed2 to
7bf8612
Compare
Summary
Phase 0 re-charter deliverable (loyal-boar-481): read-only implementation proposal distinguishing fn-body Clone propagation (P-fn) from per-derive-target bounds (P-derive), with emission-site consumer graph and separate predicates. No emitter implementation — diagnosis already merged via #7283.
Adds
docs/plans/e0599-implementation-proposal.mdand registers it indoc_graph_roots.dag(PlanDocbind →tools.e0599_probe_census.e0599_probe_census_note).Management note: proposal sequencing under Phase 0 review (Root-4 boundary correction pending per msg_8b979124); implementation PRs remain on hold until authorized.
Test plan
gunbc run … doc_reachability_witness_test.dag doc_graph_has_no_orphan_docs --claim-run→ truemain; diff is 2 files only (+152 lines)rustupinfra flake)