Merged
Conversation
…erformance and clarity - Replaced the Computed class with a functional createComputed utility that manages state more effectively. - Introduced a new structure for signal management, encapsulating state and ownership within a functional createSignal utility. - Added constants and methods for graph management, enhancing the internal graph structure with clear edge and node definitions. - Implemented comprehensive tests for execution stack behavior, ensuring adherence to design axioms and performance benchmarks. - Established a new epoch management system to handle node IDs and epoch tokens, improving the runtime's handling of execution contexts. - Enhanced documentation for execution invariants and design principles, clarifying the intended behavior of the execution stack and dependency management.
…, and improve rules for causal events
- Added RecordFactory class to create and manage immutable records with validation and computed properties. - Introduced methods for creating records, forking instances with updates, and comparing records for equality. - Implemented hashing for records to ensure consistent identity. - Added tests to validate functionality, including creation, forking, equality checks, and handling of nested records. - Benchmarks added to measure performance of record creation and operations.
…tructure runtime services
refactor: simplify CausalCoords type definitions and enhance T1, T2, T3 types chore: bump version of @reflex/core to 0.0.9 and update package exports refactor: remove unused graph.constants.ts file to clean up codebase fix: improve GraphNode initialization with CausalRoot for better structure refactor: streamline OwnershipService node reset logic for clarity docs: enhance Anomaly interface documentation for better understanding refactor: update Runtime class to improve extension handling and capability checks chore: remove deprecated SignalService class to reduce complexity chore: clean up runtime setup code and improve environment handling feat: add Rollup configuration for building core package with terser and replace plugins chore: create tsconfig.build.json for better TypeScript build configuration
… for CausalCoords
…ructor to use CausalFrame
…ructor accordingly
- Moved link and unlink methods to separate files for better organization. - Introduced batch linking methods for improved performance when linking multiple observers. - Implemented fast-path checks for edge existence to optimize linking and unlinking operations. - Enhanced unlinking methods to handle bulk operations efficiently with minimal allocations. - Added utility functions for querying edges in IN and OUT lists. - Improved documentation for clarity on method functionalities and optimizations.
…and nodes - Added GraphNode and GraphEdge classes to represent nodes and edges in a directed graph. - Implemented core graph invariants and assertions to ensure structural integrity. - Introduced unlinking methods for edges, allowing for efficient removal of observers and sources. - Created a YAML contract defining graph behavior, guarantees, and requirements. - Added Rollup configuration for performance builds. - Documented the component framework in the README.
…nation and algebraic properties feat(tests): add comprehensive tests for JoinFrame invariants and algebraic laws chore(package): add test script to package.json chore(tsconfig): add build configuration for TypeScript chore(vite): add Vite configuration for testing environment
…ables for join and rank
- Introduced various lattice types including `latticeMaxNumber`, `latticeMinNumber`, `latticeMaxBigInt`, `latticeSetUnion`, `latticeSetIntersection`, `latticeTupleAppend`, and `latticeArrayConcat`. - Implemented a testing framework in `testkit.ts` for property-based testing of lattice laws and invariants. - Created arbitrary generators for coordinates and lattice types in `testkit/arb`. - Added invariant assertions for lattices and join frames in `testkit/assert`. - Developed law checkers for verifying properties of equality and order in `testkit/laws`. - Established comprehensive tests for coordinates and event algebra, ensuring compliance with defined laws and invariants.
- Added `createScheduler` function for managing scheduled updates with a min-heap. - Introduced `UnrolledQueue` with comprehensive tests covering structural invariants, performance benchmarks, and property-based tests. - Implemented stress benchmarks for enqueue and dequeue operations in `UnrolledQueue`. - Configured TypeScript settings for building and testing the scheduler package. - Developed foundational reactive primitives including `signal`, `computed`, and `effect` for reactive programming. - Established type-level definitions for signals, resources, and projections to enhance type safety and usability.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.