Measure proximity, do not interpret it
11.02 measures subject-to-landmark geometry. It does not decide whether proximity is desirable.
always explicit
only with context
distance ≠ preference
The subject point is explicit
11.02 never guesses which point of a subject should be compared with a landmark.
FieldSubjectPointEvidence {
subjectEvidenceRef,
subjectRef,
sourceOwnerRef,
meaningRef,
canvasRef,
fieldDomainRef,
domainSnapshotRef,
domainBindingRef,
u,
v,
confidence,
status,
provenance,
semanticConstraintRefs[]?,
mutationAllowed: false
}
Axis deltas first
Point-to-point geometry always exposes independent U/V deltas.
Perpendicular fraction distance
U and V lines expose signed and absolute perpendicular distance in their own fractional axis.
Do not fake isotropy
Raw UV Euclidean distance is not canonical because one U-fraction and one V-fraction may represent different physical lengths.
FieldMetricContext {
metricContextRef,
sourceOwnerRef,
canvasRef,
fieldDomainRef,
domainSnapshotRef,
metricSpaceKind,
metricUnitRef,
uMetricScale,
vMetricScale,
confidence,
provenance,
mutationAllowed: false
}
Common-length distance
Once U and V are scaled into one explicit unit, isotropic distance is well-defined.
Boundary distance needs real boundary evidence
EDGE landmarks cannot be approximated by a silent rectangle.
BoundaryDistanceEvidence {
evidenceRef,
sourceOwnerRef,
subjectEvidenceRef,
landmarkRef,
boundaryFeatureRef,
metricContextRef,
metricUnitRef,
distanceValue,
closestPointUV?,
confidence,
provenance,
status,
mutationAllowed: false
}
Metric N/A can coexist with valid axis descriptors
A missing metric context does not destroy valid fractional deltas.
Distance lineage is explicit
The descriptor identity includes the exact subject evidence, landmark and metric/boundary evidence context.
Nearest is diagnostic, not preferred
11.02 may order comparable metric distances for inspection, but cannot turn proximity into a compositional preference.
Distance ≠ fit
All interpretation stays downstream.
Geometry channel stays separate
11.02 does not absorb alignment/grid semantics.
| Responsibility | Owner |
|---|---|
| FieldLandmark schema | 11.00 |
| standard families | 11.01 |
| distance descriptors | 11.02 |
| role applicability / controlled avoidance | 11.03 |
| candidate anchors / scoring | 11.04 |
| AlignmentAnchorEvidence | Topic 10 — separate channel |
Fix evidence, not foreign geometry
Wrong subject anchor or metric context generates an owner-qualified request.
LandmarkDistanceCorrectionRequest {
correctionRequestRef,
descriptorRef?,
reasonCode,
targetOwnerRef,
evidenceRefs[],
suggestedAction,
mutationAllowed: false,
provenance: DERIVED
}
Distance becomes calibration evidence
The dataset preserves raw geometry and the exact metric context so later experiments can distinguish measurement from interpretation.
Why is the measurement misleading?
Human feedback can challenge the selected subject point, metric context or boundary evidence.
Same UV delta, different physical distance
The visual counterexample shows why a common metric context is required.
11.02 distance regression
Tests cover subject/domain lineage, point/line formulas, metric scaling, boundary evidence, N/A semantics, comparison guards and ownership firewalls.
DATA FOR LAYOUT ENGINE
Machine-readable 11.02 contract.
{
"module": "Compo 11.02",
"name": "distance_to_landmark_descriptors",
"version": "1.0-canonical",
"canonical_main_title": "Distance-to-landmark descriptors",
"topic": "11_СИЛЬНЫЕ_ТОЧКИ_ПОЛЯ_И_ПРАВИЛО_ТРЕТЕЙ",
"scope": "OWNER_QUALIFIED_SUBJECT_TO_FIELDLANDMARK_DISTANCE_DESCRIPTORS_WITH_EXPLICIT_METRIC_SPACE",
"review_basis": {
"previous_modules": [
"Compo11.00 FieldLandmark schema",
"Compo11.01 Thirds/quarters/center/edge landmarks"
],
"related_owners_reviewed": [
"Compo6.00 canvas/domain ownership",
"Compo6.03 normalized axis-fraction / short-side-normalization conventions",
"Compo10.01 signed geometric delta semantics as a firewall/comparison reference"
],
"cross_cutting_instruction": "COMPO project instruction v2.0 IDEAS/LAB/DATA-aware"
},
"consumes": [
"Compo11.00.FieldLandmark",
"Compo11.00.FieldLandmarkDomainBinding",
"Compo11.01 concrete landmark instances",
"owner-qualified FieldSubjectPointEvidence",
"optional owner-qualified FieldMetricContext",
"optional owner-qualified BoundaryDistanceEvidence for BOUNDARY_FEATURE_REF",
"optional opaque semanticConstraintRefs[]"
],
"provides": [
"FieldSubjectPointEvidence",
"FieldMetricContext",
"BoundaryDistanceEvidence",
"LandmarkDistanceDescriptor",
"LandmarkDistanceDiagnosticComparison",
"LandmarkDistanceCorrectionRequest",
"serializable distance observation"
],
"owns_metrics": [],
"descriptors_only": [
"landmark.distance.deltaU",
"landmark.distance.deltaV",
"landmark.distance.absDeltaU",
"landmark.distance.absDeltaV",
"landmark.distance.signedAxisDelta",
"landmark.distance.absAxisFractionDistance",
"landmark.distance.metricDeltaU",
"landmark.distance.metricDeltaV",
"landmark.distance.metricDistance",
"landmark.distance.metricDistanceStatus",
"landmark.distance.closestPointUV",
"landmark.distance.status"
],
"subject_point_schema": {
"subjectEvidenceRef": "stable owner-qualified evidence identity",
"subjectRef": "subject identity",
"sourceOwnerRef": "geometry/subject evidence owner",
"meaningRef": "opaque point meaning lineage; not interpreted by 11.02",
"canvasRef": "exact canvas",
"fieldDomainRef": "exact field domain",
"domainSnapshotRef": "compatible versioned domain snapshot",
"domainBindingRef": "exact 11.00 binding",
"u": "finite [0,1] or null when N_A",
"v": "finite [0,1] or null when N_A",
"confidence": "0..1 evidence confidence",
"status": "OK|N_A|INVALID",
"provenance": "canonical provenance class",
"semanticConstraintRefs": "optional opaque refs",
"mutationAllowed": false
},
"metric_context_schema": {
"metricContextRef": "stable owner-qualified metric-space identity",
"sourceOwnerRef": "normalization/mapping owner",
"canvasRef": "exact canvas",
"fieldDomainRef": "exact field domain",
"domainSnapshotRef": "compatible snapshot",
"metricSpaceKind": "FIELD_ISOTROPIC_NORMALIZED|OWNER_DEFINED_ISOTROPIC",
"metricUnitRef": "common unit token for U and V scaled distances",
"uMetricScale": "strictly positive finite metric units per 1.0 U",
"vMetricScale": "strictly positive finite metric units per 1.0 V",
"confidence": "0..1 evidence confidence",
"provenance": "canonical provenance class",
"mutationAllowed": false
},
"boundary_distance_evidence_schema": {
"evidenceRef": "stable owner-qualified distance evidence",
"sourceOwnerRef": "boundary geometry / mapping adapter owner",
"subjectEvidenceRef": "exact subject evidence",
"landmarkRef": "exact EDGE/boundary landmark",
"boundaryFeatureRef": "must match landmark geometry",
"metricContextRef": "exact metric context used",
"metricUnitRef": "must match metric context",
"distanceValue": "finite >=0",
"closestPointUV": "optional finite [0,1]^2 adapter evidence",
"confidence": "0..1",
"provenance": "canonical provenance class",
"status": "OK|N_A|INVALID",
"mutationAllowed": false
},
"distance_descriptor_schema": {
"descriptorRef": "stable hash of subject evidence + landmark + metric/boundary evidence lineage",
"subjectEvidenceRef": "exact subject evidence",
"subjectRef": "subject identity",
"landmarkRef": "exact FieldLandmark",
"geometryKind": "POINT_UV|U_CONST_LINE|V_CONST_LINE|BOUNDARY_FEATURE_REF",
"distanceSpaceRef": "AXIS_FRACTION:<domainBindingRef> or METRIC:<metricContextRef>",
"deltaU": "POINT_UV signed subject-landmark delta; otherwise null",
"deltaV": "POINT_UV signed subject-landmark delta; otherwise null",
"absDeltaU": "POINT_UV absolute U delta; otherwise null",
"absDeltaV": "POINT_UV absolute V delta; otherwise null",
"signedAxisDelta": "line signed perpendicular delta; otherwise null",
"absAxisFractionDistance": "line absolute fraction distance; otherwise null",
"metricDeltaU": "POINT_UV scaled delta if metric context present",
"metricDeltaV": "POINT_UV scaled delta if metric context present",
"metricDistance": "isotropic/common-unit distance when supported",
"metricDistanceStatus": "OK|N_A",
"closestPointUV": "boundary evidence only, optional",
"status": "OK|N_A|INVALID",
"confidence": "minimum relevant evidence confidence",
"provenance": "DERIVED",
"score": "not owned",
"mutationAllowed": false
},
"distance_formulas": {
"POINT_UV": {
"deltaU": "subject.u - landmark.u",
"deltaV": "subject.v - landmark.v",
"absDeltaU": "abs(deltaU)",
"absDeltaV": "abs(deltaV)",
"metricDeltaU": "deltaU * uMetricScale",
"metricDeltaV": "deltaV * vMetricScale",
"metricDistance": "hypot(metricDeltaU, metricDeltaV)"
},
"U_CONST_LINE": {
"signedAxisDelta": "subject.u - landmark.u",
"absAxisFractionDistance": "abs(signedAxisDelta)",
"metricDistance": "absAxisFractionDistance * uMetricScale"
},
"V_CONST_LINE": {
"signedAxisDelta": "subject.v - landmark.v",
"absAxisFractionDistance": "abs(signedAxisDelta)",
"metricDistance": "absAxisFractionDistance * vMetricScale"
},
"BOUNDARY_FEATURE_REF": {
"metricDistance": "exact BoundaryDistanceEvidence.distanceValue only",
"fallback": "NONE"
}
},
"comparison_policy": {
"purpose": "diagnostic nearest-by-distance only; never preference",
"requires_same_subjectEvidenceRef": true,
"requires_same_distanceSpaceRef": true,
"metric_comparison_requires_same_metricContextRef": true,
"metric_comparison_requires_same_metricUnitRef": true,
"rankable": "descriptor.status=OK and metricDistanceStatus=OK with finite metricDistance",
"ties": "same diagnostic rank",
"lexical_order": "display only",
"meaning": "GEOMETRIC_NEAREST_DIAGNOSTIC_ONLY"
},
"metric_policy": {
"direct_scoring": "FORBIDDEN in 11.02",
"distance_zero_means_good": "FORBIDDEN",
"smaller_is_better": "FORBIDDEN",
"larger_is_worse": "FORBIDDEN",
"nearest_is_preferred": "FORBIDDEN",
"raw_uv_euclidean_as_isotropic": "FORBIDDEN",
"beautyScore": "FORBIDDEN"
},
"hard_constraints": [
"11.02 owns subject-to-FieldLandmark geometric distance descriptors and their deterministic identity only.",
"11.02 consumes FieldLandmark/domain contracts from 11.00 and concrete landmark instances from 11.01 without redefining family geometry.",
"11.02 does not own landmark family definitions; 11.01 owns THIRDS/QUARTERS/CENTER/EDGE instantiation.",
"11.02 does not decide role applicability, attraction, avoidance or controlled non-use; 11.03 owns those interpretations.",
"11.02 does not generate placement candidates and does not score landmark fit; 11.04 owns candidate generation/local scoring/tests.",
"A subject must be represented by explicit owner-qualified FieldSubjectPointEvidence; 11.02 does not infer which point of an object/text/image is compositionally meaningful.",
"FieldSubjectPointEvidence meaningRef is opaque descriptive lineage; 11.02 does not interpret BBOX_CENTER, FOCAL_POINT, BASELINE_ANCHOR or any other semantic role.",
"Subject point and landmark must bind to the same canvasRef, fieldDomainRef, compatible domainSnapshotRef and domainBindingRef.",
"POINT_UV, U_CONST_LINE and V_CONST_LINE landmarks require a valid subject UV point.",
"Missing subject u/v is N_A, not zero.",
"Non-finite or out-of-range subject u/v is INVALID.",
"POINT_UV signed deltas are deltaU = subject.u - landmark.u and deltaV = subject.v - landmark.v.",
"Signed delta direction is deterministic geometry only; its sign does not mean attraction, avoidance, better or worse.",
"POINT_UV always provides absDeltaU and absDeltaV when evidence is valid.",
"U_CONST_LINE provides signedAxisDelta = subject.u - landmark.u and absAxisFractionDistance = abs(signedAxisDelta).",
"V_CONST_LINE provides signedAxisDelta = subject.v - landmark.v and absAxisFractionDistance = abs(signedAxisDelta).",
"Raw Euclidean distance sqrt(deltaU^2 + deltaV^2) in unscaled UV is not a canonical isotropic distance because U and V fractions can represent different physical lengths.",
"11.02 must not silently treat one unit of U as equal to one unit of V.",
"An isotropic point/line metric distance requires an explicit owner-qualified FieldMetricContext.",
"FieldMetricContext supplies uMetricScale and vMetricScale in one common metricUnitRef.",
"For POINT_UV, metricDeltaU = deltaU * uMetricScale and metricDeltaV = deltaV * vMetricScale.",
"For POINT_UV, metricDistance = hypot(metricDeltaU, metricDeltaV).",
"For U_CONST_LINE, metricDistance = abs(signedAxisDelta) * uMetricScale.",
"For V_CONST_LINE, metricDistance = abs(signedAxisDelta) * vMetricScale.",
"Metric scales must be finite and strictly positive.",
"FieldMetricContext must bind to the same canvas/domain/snapshot as subject and landmark.",
"A rectangular canvas implementation may consume short-side-normalized scales from the appropriate canvas/normalization owner, but 11.02 does not re-own canvas width/height normalization.",
"If metric context is absent for POINT_UV/U_CONST_LINE/V_CONST_LINE, axis-fraction descriptors remain OK while metricDistance status is N_A.",
"metricDistance N_A must never be converted to zero.",
"BOUNDARY_FEATURE_REF distance requires explicit owner-qualified BoundaryDistanceEvidence or an explicit boundary-distance adapter result.",
"11.02 does not approximate a boundary feature using u=0/u=1/v=0/v=1 or a bounding box.",
"BoundaryDistanceEvidence must bind exact subjectEvidenceRef, landmarkRef, boundaryFeatureRef, metricUnitRef and domain lineage.",
"BoundaryDistanceEvidence distanceValue must be finite and non-negative.",
"BoundaryDistanceEvidence may include closestPointUV, but that point remains adapter evidence and does not become a new landmark.",
"Boundary distance confidence cannot exceed the minimum confidence of subject, landmark, metric context and boundary-distance evidence used.",
"Distance descriptor confidence is evidence confidence only, not quality of composition.",
"Distance zero means geometric coincidence only.",
"Distance zero does not mean score 1.",
"Larger distance does not mean worse.",
"Smaller distance does not mean better.",
"No universal target distance is defined in 11.02.",
"No universal nearest-landmark winner is defined in 11.02.",
"11.02 may provide deterministic nearest-by-descriptor ordering only through an explicitly requested diagnostic helper; it must not label the nearest landmark as preferred.",
"Cross-landmark comparison requires the same subjectEvidenceRef and compatible distanceSpaceRef/metricUnitRef.",
"Axis-fraction distances on U and V axes must not be numerically compared as one isotropic ranking unless a common FieldMetricContext is applied.",
"POINT_UV metric distance and line metric distance may be compared only when they share exact metricContextRef and metricUnitRef.",
"Boundary metric distance may join such comparison only when its evidence declares the same metricContextRef and metricUnitRef.",
"A nearest diagnostic tie remains a tie; lexical descriptorRef is display order only.",
"DistanceDescriptor status is OK, N_A or INVALID.",
"Metric sub-descriptor status is OK or N_A; malformed metric context makes the whole descriptor INVALID when explicitly supplied.",
"N_A upstream subject/landmark evidence propagates as N_A.",
"INVALID upstream subject/landmark evidence propagates as INVALID.",
"11.02 owns no numeric MetricResult.",
"All outputs are descriptors only.",
"11.02 performs no local/global scoring.",
"11.02 creates no placement candidate.",
"11.02 emits no attraction/avoidance decision.",
"11.02 emits no automatic snap/move request.",
"Correction requests are owner-qualified and mutationAllowed=false.",
"FieldLandmark remains distinct from Topic10 AlignmentAnchorEvidence.",
"Distance-to-landmark remains distinct from Topic10 alignment offset; an explicit adapter would be required to bridge them.",
"Grid topology and occupancy remain owned by Topics 8/9.",
"SemanticConstraintRefs remain opaque deferred evidence.",
"Module execution order is not rule priority.",
"IDEA != CANON.",
"EXPERIMENT != CANON.",
"All subject evidence, landmark lineage, axis deltas, metric context, boundary distance evidence, N_A/INVALID reasons, comparisons and human feedback hooks must be serializable.",
"N/A != 0.",
"No beautyScore."
],
"hard_rules": [
"11.02 owns subject-to-FieldLandmark geometric distance descriptors and their deterministic identity only.",
"11.02 consumes FieldLandmark/domain contracts from 11.00 and concrete landmark instances from 11.01 without redefining family geometry.",
"11.02 does not own landmark family definitions; 11.01 owns THIRDS/QUARTERS/CENTER/EDGE instantiation.",
"11.02 does not decide role applicability, attraction, avoidance or controlled non-use; 11.03 owns those interpretations.",
"11.02 does not generate placement candidates and does not score landmark fit; 11.04 owns candidate generation/local scoring/tests.",
"A subject must be represented by explicit owner-qualified FieldSubjectPointEvidence; 11.02 does not infer which point of an object/text/image is compositionally meaningful.",
"FieldSubjectPointEvidence meaningRef is opaque descriptive lineage; 11.02 does not interpret BBOX_CENTER, FOCAL_POINT, BASELINE_ANCHOR or any other semantic role.",
"Subject point and landmark must bind to the same canvasRef, fieldDomainRef, compatible domainSnapshotRef and domainBindingRef.",
"POINT_UV, U_CONST_LINE and V_CONST_LINE landmarks require a valid subject UV point.",
"Missing subject u/v is N_A, not zero.",
"Non-finite or out-of-range subject u/v is INVALID.",
"POINT_UV signed deltas are deltaU = subject.u - landmark.u and deltaV = subject.v - landmark.v.",
"Signed delta direction is deterministic geometry only; its sign does not mean attraction, avoidance, better or worse.",
"POINT_UV always provides absDeltaU and absDeltaV when evidence is valid.",
"U_CONST_LINE provides signedAxisDelta = subject.u - landmark.u and absAxisFractionDistance = abs(signedAxisDelta).",
"V_CONST_LINE provides signedAxisDelta = subject.v - landmark.v and absAxisFractionDistance = abs(signedAxisDelta).",
"Raw Euclidean distance sqrt(deltaU^2 + deltaV^2) in unscaled UV is not a canonical isotropic distance because U and V fractions can represent different physical lengths.",
"11.02 must not silently treat one unit of U as equal to one unit of V.",
"An isotropic point/line metric distance requires an explicit owner-qualified FieldMetricContext.",
"FieldMetricContext supplies uMetricScale and vMetricScale in one common metricUnitRef.",
"For POINT_UV, metricDeltaU = deltaU * uMetricScale and metricDeltaV = deltaV * vMetricScale.",
"For POINT_UV, metricDistance = hypot(metricDeltaU, metricDeltaV).",
"For U_CONST_LINE, metricDistance = abs(signedAxisDelta) * uMetricScale.",
"For V_CONST_LINE, metricDistance = abs(signedAxisDelta) * vMetricScale.",
"Metric scales must be finite and strictly positive.",
"FieldMetricContext must bind to the same canvas/domain/snapshot as subject and landmark.",
"A rectangular canvas implementation may consume short-side-normalized scales from the appropriate canvas/normalization owner, but 11.02 does not re-own canvas width/height normalization.",
"If metric context is absent for POINT_UV/U_CONST_LINE/V_CONST_LINE, axis-fraction descriptors remain OK while metricDistance status is N_A.",
"metricDistance N_A must never be converted to zero.",
"BOUNDARY_FEATURE_REF distance requires explicit owner-qualified BoundaryDistanceEvidence or an explicit boundary-distance adapter result.",
"11.02 does not approximate a boundary feature using u=0/u=1/v=0/v=1 or a bounding box.",
"BoundaryDistanceEvidence must bind exact subjectEvidenceRef, landmarkRef, boundaryFeatureRef, metricUnitRef and domain lineage.",
"BoundaryDistanceEvidence distanceValue must be finite and non-negative.",
"BoundaryDistanceEvidence may include closestPointUV, but that point remains adapter evidence and does not become a new landmark.",
"Boundary distance confidence cannot exceed the minimum confidence of subject, landmark, metric context and boundary-distance evidence used.",
"Distance descriptor confidence is evidence confidence only, not quality of composition.",
"Distance zero means geometric coincidence only.",
"Distance zero does not mean score 1.",
"Larger distance does not mean worse.",
"Smaller distance does not mean better.",
"No universal target distance is defined in 11.02.",
"No universal nearest-landmark winner is defined in 11.02.",
"11.02 may provide deterministic nearest-by-descriptor ordering only through an explicitly requested diagnostic helper; it must not label the nearest landmark as preferred.",
"Cross-landmark comparison requires the same subjectEvidenceRef and compatible distanceSpaceRef/metricUnitRef.",
"Axis-fraction distances on U and V axes must not be numerically compared as one isotropic ranking unless a common FieldMetricContext is applied.",
"POINT_UV metric distance and line metric distance may be compared only when they share exact metricContextRef and metricUnitRef.",
"Boundary metric distance may join such comparison only when its evidence declares the same metricContextRef and metricUnitRef.",
"A nearest diagnostic tie remains a tie; lexical descriptorRef is display order only.",
"DistanceDescriptor status is OK, N_A or INVALID.",
"Metric sub-descriptor status is OK or N_A; malformed metric context makes the whole descriptor INVALID when explicitly supplied.",
"N_A upstream subject/landmark evidence propagates as N_A.",
"INVALID upstream subject/landmark evidence propagates as INVALID.",
"11.02 owns no numeric MetricResult.",
"All outputs are descriptors only.",
"11.02 performs no local/global scoring.",
"11.02 creates no placement candidate.",
"11.02 emits no attraction/avoidance decision.",
"11.02 emits no automatic snap/move request.",
"Correction requests are owner-qualified and mutationAllowed=false.",
"FieldLandmark remains distinct from Topic10 AlignmentAnchorEvidence.",
"Distance-to-landmark remains distinct from Topic10 alignment offset; an explicit adapter would be required to bridge them.",
"Grid topology and occupancy remain owned by Topics 8/9.",
"SemanticConstraintRefs remain opaque deferred evidence.",
"Module execution order is not rule priority.",
"IDEA != CANON.",
"EXPERIMENT != CANON.",
"All subject evidence, landmark lineage, axis deltas, metric context, boundary distance evidence, N_A/INVALID reasons, comparisons and human feedback hooks must be serializable.",
"N/A != 0.",
"No beautyScore."
],
"soft_constraints": [],
"preferences": [],
"overrides_allowed_by": [
"11.03 may interpret role/context applicability without changing geometric distances",
"11.04 may convert explicit distance evidence into local candidate/fit logic under explicit targets",
"a reviewed future metric-space adapter may add another owner-qualified isotropic distance space"
],
"initial_heuristics": {
"metric_context_requirement": {
"value": "do not treat raw UV Euclidean distance as isotropic without explicit common-length scaling",
"provenance": "IMPLEMENTATION_HEURISTIC",
"warning": "protects aspect-ratio correctness; exact metric-space ownership remains upstream"
}
},
"style_preset_values": [],
"candidate_generation": {
"placement_candidates": "NONE",
"nearest_diagnostic_is_candidate_generation": false,
"deferred_to": "Compo11.04"
},
"correction_policy": {
"foreign_mutation": "FORBIDDEN",
"wrong_subject_point": "owner-qualified correction request to subject geometry/semantic selector owner",
"wrong_metric_context": "correction request to normalization/mapping owner",
"missing_metric_context": "metricDistance N_A; keep axis-fraction descriptors where valid",
"missing_boundary_distance_evidence": "boundary descriptor N_A",
"role_applicability_disagreement": "defer to 11.03",
"candidate/scoring_disagreement": "defer to 11.04"
},
"deferred_inputs": [
"Compo11.03 role/semantic applicability, attraction/avoidance and controlled non-use",
"Compo11.04 candidate generation/local scoring",
"future canonical rule-priority/relaxation owner"
],
"ideas_refs": [
"IDEA-01",
"IDEA-02",
"IDEA-03",
"IDEA-04",
"IDEA-05",
"IDEA-06",
"IDEA-07"
],
"ideas_impact": {
"IDEA-01": "future human tests can compare perceived proximity thresholds without changing geometry",
"IDEA-02": "subject meaningRef/semantic refs are preserved but not interpreted",
"IDEA-03": "nearest landmark cannot silently establish priority",
"IDEA-04": "distance descriptors become structured training/calibration evidence",
"IDEA-05": "human correction reasons can identify wrong subject anchor or metric context",
"IDEA-06": "all distance evidence is serialization-ready",
"IDEA-07": "future text-to-graphic experiments may consume distances only through LAB/downstream candidate logic"
},
"data_capture": [
"subjectEvidenceRef/subjectRef/meaningRef/sourceOwnerRef",
"landmarkRef/familyRef/familyMemberRef/geometryKind",
"domainBindingRef/domainSnapshotRef",
"deltaU/deltaV/absDeltaU/absDeltaV",
"signedAxisDelta/absAxisFractionDistance",
"metricContextRef/metricUnitRef/uMetricScale/vMetricScale",
"metricDeltaU/metricDeltaV/metricDistance/metricDistanceStatus",
"BoundaryDistanceEvidence refs/distance/closestPointUV",
"descriptor status/reasons/confidence",
"diagnostic comparison context/ranks/ties",
"semanticConstraintRefs presence without interpretation",
"human feedback reason codes"
],
"deferred_semantic_inputs": [
"semanticObjectRef?",
"semanticPartRef?",
"semanticSensitiveZoneRef?",
"semanticConstraintRefs[]",
"subjectMeaningRef?",
"intentRef?",
"contentRoleRef?"
],
"human_feedback_hooks": [
"SUBJECT_POINT_WRONG",
"SUBJECT_POINT_MEANING_WRONG",
"METRIC_CONTEXT_WRONG",
"METRIC_SCALE_WRONG",
"BOUNDARY_DISTANCE_EVIDENCE_WRONG",
"EXPECTED_DISTANCE_MISSING",
"NEAREST_DIAGNOSTIC_MISLEADING_FOR_CONTEXT",
"SEMANTIC_CONFLICT",
"OTHER"
],
"conflict_priority_assumptions": [
"module execution order is not priority",
"nearest landmark is not automatically applicable",
"smaller distance does not override hard constraints",
"smaller distance does not override semantic sensitive zones",
"distance evidence does not override intentional landmark avoidance",
"axis-fraction and metric distances are separate evidence channels unless explicit common metric context exists"
],
"lab_hooks": [
"LAB: human calibration of perceived near/far thresholds by landmark family",
"LAB: compare raw UV versus aspect-correct metric distance as an experiment",
"LAB: subject-anchor selection effects",
"LAB: edge proximity perception",
"LAB: nearest-landmark diagnostic versus human preferred placement",
"LAB: semantic counterexamples where nearest landmark should not be used"
],
"recompute_when": [
"subject point evidence changes",
"landmark identity/geometry changes",
"domain binding/snapshot changes",
"metric context/scales change",
"boundary-distance evidence changes"
],
"tests": [
"subject validation",
"same-domain/canvas lineage",
"point deltas",
"U/V line perpendicular distance",
"metric scaling",
"aspect-ratio-safe point metric distance",
"missing metric context partial descriptor semantics",
"boundary evidence exactness",
"N_A/INVALID propagation",
"comparison guards/ties",
"no score/applicability/candidate leakage",
"IDEAS/DATA/semantic/human/LAB hooks",
"N_A != 0",
"no beautyScore"
],
"finality": "GEOMETRIC_DISTANCE_TO_FIELDLANDMARK_DESCRIPTORS_ONLY"
}