Skip to content

Support a coral-compatible backend + sidebar/tooling tidy#209

Merged
pcolt merged 12 commits into
mainfrom
integration-coral-py
Jul 14, 2026
Merged

Support a coral-compatible backend + sidebar/tooling tidy#209
pcolt merged 12 commits into
mainfrom
integration-coral-py

Conversation

@pcolt

@pcolt pcolt commented Jul 8, 2026

Copy link
Copy Markdown
Collaborator

Part of 2listic/coral-python#12

  • Update CHANGELOG

Overview

Platform-side support for reintegrating the coral-python backend as a coral-compatible
backend: from the app's perspective it stays backendKind: coral; only the executable/plugin
paths differ. The coral-python side (a coral-style register/run CLI and a platform-native node
registry) is tracked in 2listic/coral-python#12. This PR covers the dealiiX-platform changes
needed to probe, render, and load that backend's graphs, plus a small unrelated sidebar tidy.

Also included, unrelated to the above: a pre-commit tooling fix. Prettier previously ran
after the commit was already created, leaving its formatting unstaged; it now runs via
lint-staged, scoped to staged files only, so the formatted result lands in the commit itself.

Summary

  • feat: the Coral plugin path setting is now free-text with a Browse button, accepting a plugin
    .so path or an opaque -p value (e.g. a comma-separated module list); the local probe no
    longer requires it to be an existing file.
  • feat: nodes with node_type: "primitive" render an editable literal (text, or checkbox for
    booleans) like elementary constructors; numeric validation is null-safe.
  • fix: loading a graph no longer drops edges into an any-typed input (e.g. print_result);
    import validation now accepts an any target input, matching the live connection validation.
  • refactor: moved Download Graph from the Project group into the renamed Import / Export group;
    it no longer requires a remote login and falls back to graph.json when no project is loaded.
  • chore: removed the obsolete NOTE.md.
  • docs: CHANGELOG entries + a note in docs/run-coral-local.md.

Test plan

  • Local coral-python: Settings → Local / Coral, binary = coral-py, plugin = "math,string,phiflow",
    writable working dir → Save & Sync populates the sidebar, no skipped-node toasts.
  • Drag primitive nodes (int/float/bool/str) → editable field shows; numeric invalid until valued; no console error.
  • Load a coral-python graph with an any-typed input (e.g. print_result) → the edge into it is kept, not dropped as a type mismatch.
  • Download Graph works while logged out and yields graph.json when no project is loaded.
  • Stage a badly-formatted file and commit → the formatted version lands in the commit, git status is clean afterward.
  • npm run check, npm run check:electron, and npm test pass.

pcolt added 6 commits July 8, 2026 12:18
- feat: make the local Coral plugin path a free-text field with a Browse button (accepts a plugin path or a value passed to -p, e.g. a comma-separated module list)
- fix: stop the local probe requiring the Coral plugin path to be an existing file on disk
- docs: note the field's dual use in run-coral-local.md and add a CHANGELOG entry
- feat: show the literal input for node_type "primitive" (NodeTypePyBackend.PRIMITIVE), not only elementary_constructor
- fix: make numeric value validation null-safe so a null/empty primitive value no longer throws
- docs: add CHANGELOG entry
- fix: validateGraphData accepts an 'any' target input, matching the live connection validation
- test: add a coral-python functions graph + math registry fixture covering the any-typed print_result input
@pcolt pcolt changed the title Support a coral-compatible backend + Import/Export sidebar tidy Support a coral-compatible backend + sidebar/tooling tidy Jul 13, 2026
pcolt added 2 commits July 13, 2026 15:14
- fix: formatting changes now land in the same commit instead of being left unstaged after the commit was created
- chore: add lint-staged, scoped to *.{ts,svelte,js,json,md} staged files
- docs: update README, CLAUDE.md, CHANGELOG for the new pre-commit behaviour
@pcolt
pcolt requested a review from mfranzon July 13, 2026 13:23
pcolt added 2 commits July 13, 2026 15:30
- feat: add PRIMITIVE, METHOD and CONST_METHOD to NodeType so the canvas recognises the full CORAL node-type vocabulary emitted by both backends
- fix: map const_method (and method) to UnifiedNode with a colour, closing the gap where they fell back to a broken default node
- refactor: remove the separate NodeTypePyBackend enum, folding primitive/method into NodeType
- docs: refresh the CHANGELOG entry and the CLAUDE.md node-type section
@pcolt
pcolt merged commit 58c8bd4 into main Jul 14, 2026
2 checks passed
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.

1 participant