Skip to content

Add missing ND→D report signals and update PR5 completion status#29

Draft
Copilot wants to merge 1 commit into
mainfrom
copilot/pr5
Draft

Add missing ND→D report signals and update PR5 completion status#29
Copilot wants to merge 1 commit into
mainfrom
copilot/pr5

Conversation

Copilot AI commented May 30, 2026

Copy link
Copy Markdown
Contributor

pr5.txt requested a concrete completion percentage and continued work on the ND→D loop-splice system. This PR advances that work by closing reporting gaps in the classifier/converter and recording updated completion progress in the requirements file.

  • ND classifier report coverage

    • Extended nd_classify_program/3 reporting to emit per-predicate MNN signature outcomes:
      • mnn_signature_matched/2
      • mnn_signature_unknown/2
    • Integrated signature-based class selection into clause classification flow.
  • Unsafe conversion visibility

    • Updated nd_to_loop_predicate/4 to emit unsafe_nd_conversion/2 when conversion is blocked by unsafe nondeterminism, instead of only generic skip reporting.
  • Web UI report parity

    • Updated the MNN Signature Index panel in plop.html to distinguish matched vs unknown signatures in displayed report labels.
  • Spec progress update

    • Added an explicit completion update (~92% complete) and remaining gaps to pr5.txt.
% New report signaling in predicate-level ND conversion:
nd_to_loop_predicate(Predicate, ProgramIR, OptimisedIR, Report) :-
    can_convert_1_to_1(Predicate, ProgramIR, Decision),
    (   Decision = no(unsafe_nd(Reasons))
    ->  OptimisedIR = ProgramIR,
        Report = [unsafe_nd_conversion(Predicate, Reasons)]
    ;   ...
    ).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants