NEXT IMPLEMENTATION - kimjooyoon/meta-ontology-go GitHub Wiki

Execution outcomes for source-owned construction

Observed current paths:

  • compositionDriver in internal/bodyexecution/composition_projection.go calls each typed activity and marshals only values. A language arithmetic failure terminates the process before the output array is written.
  • executeCompositionNative counts original expectations, then executes through observeCompositionRuns. CompositionDelivery has value/expected/passed fields but no typed failure outcome. The runtime records process status and diagnostics digest.
  • ConstructJointComposition appends an attempted native run, then returns every execution error. This preserves prior attempts but prevents trying the sixth, correct assignment in the frozen probe.

Required semantic change, after 0.6.15 is closed:

  1. Emit explicit language fault outcomes in the native observation protocol for supported arithmetic operations. Bind operator, activity/expression identity, source/projection identity, case index and original inputs. Do not infer language failures from generic child exit text or from model confidence.
  2. Preserve evaluation order and short circuit behavior. Supported source arithmetic should have the same values and failures under interpretation and native code. Reuse the observed-projection/driver layer where appropriate; ordinary successful Gooo program semantics and generated source ownership remain authoritative.
  3. Keep earlier deliveries in a row. A dependent activity without a producer value is blocked, not evaluated with a fabricated zero. Other independent inputs must remain measurable. Reproduce outcome rows in the second fresh native execution.
  4. Construction may continue after a reproducible language-fault candidate and count it against the original budget. Its local score remains real; caller fault/blocked/mismatch/match outcomes need distinct counts. Preserve partial selection and original expectations. Toolchain errors, cancellations, timeouts, malformed native protocol and unknown process faults stay terminal.
  5. Replay checks the exact attempted candidates, outcomes, source/plan identities and stopping reason with zero new inference. Existing saved construction and valid runtime profiles need explicit migration/compatibility regression cases.
  6. Extend workbench readers and Gooo feedback policy to consume the actual failure categories, then dogfood with the unchanged small model and deterministic order.

Freeze before implementation: current six-candidate raw failure; division and remainder by zero; skipped and reached branches/short circuits; helper call and explicit producer-consumer graph; previous successful deliveries; multiple case rows; complete/partial/all-fault budgets; exact large signed integers; timeout and cancellation controls; altered fault identities/operator/case/result; old v4/v5 saved histories. New construction should reach the original bounded assignment without changing any expected values. Report coverage of these finite cases; keep new-program accuracy separate from successful fault handling.

⚠️ **GitHub.com Fallback** ⚠️