Skip to content

v2.2.2-beta.2

@sidprasad sidprasad tagged this 02 Apr 22:33
* Simplify and linearize StructuredInputGraph state management

Fix shallow copy bugs in AlloyInstance mutation functions that caused
data corruption through shared references, and replace the event-driven
rerender system with a direct linear flow (mutate → rerender → dispatch).

Key changes:
- Fix all 4 AlloyInstance mutation functions to create new inner objects
  instead of mutating originals through shallow-copied references
- Remove _suppressDataChangeRerender flag and event-driven rerender
- Every mutation follows: mutate() → enforceConstraintsAndRegenerate()
- Fix deleteRelation bug: was passing relation ID where global tuple
  index was expected, causing UI deletions to silently fail
- Remove ~9 no-op methods and ~30 verbose console.log statements
- Update tests to match new linear flow

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Fix CI test failures: preserve empty relations on atom removal, update tests

- removeInstanceAtom now keeps relations with 0 tuples (only
  removeInstanceRelationTuple deletes empty relations) — matches
  existing test expectations and JSONDataInstance behavior
- Update deletion-constraint-validation tests to use graph methods
  (deleteAtom, deleteRelationTuple) instead of direct data instance
  mutations, matching the new linear flow

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Another beta

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Assets 2
Loading