Skip to content

V1 beta - #2

Merged
le0daniel merged 102 commits into
mainfrom
feature/remove-old-parsers-and-collection-like-stuff
Aug 14, 2026
Merged

V1 beta#2
le0daniel merged 102 commits into
mainfrom
feature/remove-old-parsers-and-collection-like-stuff

Conversation

@le0daniel

Copy link
Copy Markdown
Owner

No description provided.

le0daniel added 30 commits July 27, 2026 12:18
…nsumers for `DateTime` and `Enum` types, remove unused `UserDefinedParsers`, and simplify `ArrayConsumer`.
…xemes`, simplifying token parsing and decoding logic, removing now-obsolete classes and tests.
…or TypeScript code generation and related tests.
…tion, and TypeScript code generation, including related tests and documentation updates.
…e `Arrays::filterNullValues` with specialized methods, and update PHP version requirement to `^8.5`.
…es, enums, structs, collections, and unions. Include related utilities, registry handling, and extensive test coverage.
…es, enums, structs, collections, and unions. Include related utilities, registry handling, and extensive test coverage.
…et`, refactor code generators to use `TypescriptGenerator` and new `Options`, add tests for branded type handling and unsupported type exception.
…with dedicated nodes (`BoolNode`, `FloatNode`, `IntNode`, `MixedNode`, `NullNode`, `StringNode`) and associated `BackingType` enum; update consumers, tests, and utilities accordingly.
…lientAwareExceptionPresenter` to `ExposedExceptionPresenter`; update dependencies, tests, and usages accordingly.
…and mocks to handle branded and named types directly via attributes; expand type system validation with additional tests and exceptions.
…ing and optimization; add comprehensive unit tests for AST optimization, metadata elimination, node diagnostics, and registry shape validation across multiple scenarios.
…ipt source generation with imports and code blocks; include comprehensive unit tests for deterministic behavior and edge cases.
… and `TypeScriptFile` classes; refactor to use `TypescriptFile` and `TypescriptImport` for streamlined source generation with unified import handling and code composition; update tests and dependencies accordingly.
…rializableClient` and TypeScript utilities; implement `InteractsWithToasts` trait, `ToastType`, and `Toast` classes; update client behaviors, type definitions, and Laravel controller integration tests.
…prove type safety with named parameters and static closures while enhancing error type serialization.
…ommands, and registry handling for customizable cache key length.
…ollection-like-stuff' into feature/remove-old-parsers-and-collection-like-stuff
…factor error handling and TypeScript generation; add comprehensive unit tests.
…, and `NonFalsyString` with specialized constraint classes; add `IntRange`, `ListLength`, `LowercaseString`, `NonEmptyString`, `NonFalsyString`, and `NumericString`.
… Laravel adapter

- Added `ClientFactory` interface and default `OperationClientFactory` with `createClientFromHttpRequest` method.
- Updated Laravel adapter to support configurable client creation via `client` config key.
- Replaced inline client header logic with `ClientFactory` for improved flexibility and maintainability.
- Enhanced documentation to detail the new `ClientFactory` configuration and default behavior.
- Added comprehensive tests for `OperationClientFactory` to validate client selection logic.
…in error classifications

- Implemented `ErrorClassifier` for precise error categorization.
- Added tests for `ThrowAttributeResolver` and `ErrorClassifier`, validating cases like authentication, authorization, domain errors, and fallback logic.
- Introduced diverse mock classes (`RequiresLoginInterface`, `SessionExpiredException`, `NamedDomainExposedException`, etc.) for error handling scenarios.
- Refactored `Throws` and `ExposeAs` attributes to improve validation and type distinction (e.g., `ErrorType`, `name` support).
- Standardized naming logic in middleware and improved domain error handling declarations.
- Updated documentation and comments for new error handling behavior.
…elated tests, and introduce new error handling setup for scope-specific declarations and improved domain error categorization.
…TTP response details, improve TypeScript typing accuracy, and update documentation and test coverage accordingly.
…ils, and improve explanation of core concepts and server-client communication.
… handling and documentation

- Introduced the `RATE_LIMITED` (429) error category for rate-limiting scenarios, with optional `RetryInResolver` for dynamic `retryIn` resolution.
- Enhanced `ServerConfiguration` to support resolver configuration and exception
- Add `RecordKey` to validate if a node is usable as a key (`isUsableAsKey`) and to check closed key sets (`isClosedKeySet`).
- Introduce `literalKeyValue` to handle stringified JSON object keys.
- Update `ArrayConsumer` to integrate `RecordKey` for stricter key validation during parsing.
- Add extensive unit tests for `RecordKey` to cover key validation scenarios.
- Ensure JSON output differentiates between lists and records in serialization.
- Extend test coverage for executor and parser with a focus on record handling.
…ion logic

- Introduced new mocks (`ApiCredentials`, `AuditedNoteInput`, `UpdateProfileInput`) to enhance testing of parsing and hydration scenarios.
- Added support for virtual properties in parsing strategies and reflection.
- Implemented `PropertiesReflector` for determining property accessibility and hooks.
- Expanded tests for `TypeParser` and `UserDefinedObjectConsumer` to validate casting strategies and property handling.
- Updated serialization and hydration logic to respect input-output constraints, including virtual and hooked properties.
- Simplified handling of uncastable types and enriched related test cases.
… operation factories

- Introduced `CachedOperationRegistryTest` for comprehensive unit testing of cached operation behavior, including partial materialization, memoization, and error handling.
- Added `RegistryFixtureOperations` mock for testing query and command operation scenarios.
- Refactored `CachedOperationRegistry` to replace legacy one-closure-per-operation format with a centralized match-arm approach, improving performance and memory efficiency.
- Enhanced error handling with `OperationNotFoundException::forKey` for unknown operation keys.
- Updated PHP code generation in `CachedOperationRegistry::toPhpCode` to streamline key and operation definition logic.
…across operation registries and improve parameter naming.
… across documentation, code, and tests to standardize naming and improve clarity.
…lue objects

- Introduced comprehensive test suites (`OrderCastingTest`, `OrderErrorsTest`) to validate end-to-end behavior for commands and queries with nested casting, value objects, and optional handling.
- Added new fixtures for `CartCommands`, `CheckoutCommands`, `OrderCommands`, and `OrderQueries` to demonstrate command/query input-output flows.
- Implemented `IntegrationHarness` for consistent integration testing of cached and non-cached operation behavior.
- Expanded type fixtures (`Address`, `Currency`, `LineItemInput`, `Money`, `OrderNumber`, `CustomerProfile`) to support edge case validations.
- Improved error handling coverage, including domain exceptions (`OrderAlreadyShippedException`, `OrderNotFoundException`) and runtime exceptions in value objects.
- Finalized support for `Castable` attributes and object hydration strategies.
…tions, input validation, and return type consistency.
…ution, generics, and structural shapes

- Introduced new test cases to validate edge conditions for nested casting, union resolution, nullable containers, and virtual getters/setters using classes like `Batch`, `HandlingInstructions`, and `HomeDelivery`.
- Added comprehensive test coverage for coercion, input validation, and alias handling in queries (`CatalogQueries`, `InventoryQueries`) and types (`CatalogShared`, `Sku`).
- Implemented `CastingGenericsAndAliasesTest`, `CollectionsAndStructuresTest`, and `CoercionAndEdgeModesTest` to confirm behavior consistency across various scenarios.
- Extended fixtures with new value objects (`CatalogShared`, `Money`) and container classes (`Batch`, `Paginated`, `HomeDelivery`) to support generics and intersection types.
- Updated integration harness to support advanced input scenarios like discriminated unions, indexed paths, and coercion flags during testing.
…ion registries

- Introduced `tests/benchmark/run.php` to compare registry initialization, schema resolution, and request execution.
- Updated `composer.json` to include `benchmark` script with description.
- Refactored `IntegrationHarness` to expose `discoverEagerRegistry` and added `CACHE_ID_LENGTH` constant for reuse.
- Optimized `Operation` class to memoize input/output nodes for improved performance.
- Extended `tests/benchmark/run.php` to include `end2end` measurements, simulating a full PHP-FPM request lifecycle.
- Configured warm-up and sample sizes for end-to-end benchmarks (`WARMUP_E2E`, `SAMPLES_E2E`).
- Added checks to validate `orders.getOrder` execution results on both eager and cached registries.
- Updated benchmark output to include `end2end` results for comprehensive performance comparison.
- Introduced `ConfigurableMiddleware` interface to enable middleware with per-operation configurations.
- Updated `OperationDiscovery` to support configuration validation for `#[Middleware]` attributes.
- Added `MiddlewareDefinition` class to encapsulate middleware details, including class and configuration data.
- Enhanced `Server` to pass configured middleware instances to operations during runtime execution.
- Implemented tests for configured middleware, ensuring correct behavior with valid, invalid, and container-shared instances.
- Extended documentation to include guidelines for configuring middleware using the `#[Middleware]` attribute.
- Updated `executeOperation` to handle all response validation, errors, and hooks, ensuring consistent error handling across transports.
- Simplified `OperationClient` interface to return raw status and parsed JSON, delegating envelope validation to `executeOperation`.
- Removed client-bound hooks, introducing global hooks via new `registerHook` API for unified operation observation.
- Enhanced client error reporting to return detailed envelopes instead of throwing, enabling easier downstream handling.
- Updated tests and documentation to reflect changes in transport responsibilities and hook registration.
- Implemented `MetadataMiddleware` to enable metadata injection in RPC responses.
- Updated `ShippingCommands` to utilize `MetadataMiddleware` with per-operation configuration.
- Adjusted `RpcSuccess` to maintain metadata order in serialized output.
- Enhanced integration tests to validate metadata appending for successful and error responses.
- Fixed unit test in `RpcSuccessTest` to ensure metadata is correctly serialized.
@coderabbitai

coderabbitai Bot commented Aug 14, 2026

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 569 files, which is 419 over the limit of 150.

To get a review, reduce the PR to 150 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to Pro+ to raise the limit.

Usage-priced reviews support at most 300 files.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: af0c120e-0916-4529-9aef-5427ba36b207

📥 Commits

Reviewing files that changed from the base of the PR and between 9428ef7 and 3464f8c.

⛔ Files ignored due to path filters (13)
  • composer.lock is excluded by !**/*.lock
  • tests/ts-output/generated/accounts.ts is excluded by !**/generated/**
  • tests/ts-output/generated/catalog.ts is excluded by !**/generated/**
  • tests/ts-output/generated/lib/DefaultClient.ts is excluded by !**/generated/**
  • tests/ts-output/generated/lib/OperationClient.ts is excluded by !**/generated/**
  • tests/ts-output/generated/lib/OperationException.ts is excluded by !**/generated/**
  • tests/ts-output/generated/lib/bindings.ts is excluded by !**/generated/**
  • tests/ts-output/generated/lib/client-operations-spa.ts is excluded by !**/generated/**
  • tests/ts-output/generated/lib/type-map.ts is excluded by !**/generated/**
  • tests/ts-output/generated/lib/types.ts is excluded by !**/generated/**
  • tests/ts-output/generated/lib/utils.ts is excluded by !**/generated/**
  • tests/ts-output/generated/shapes.ts is excluded by !**/generated/**
  • tests/ts-output/package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (569)
  • .github/workflows/ci.yml
  • CLAUDE.md
  • README.md
  • composer.json
  • docs/client-directives.md
  • docs/errors.md
  • docs/laravel.md
  • docs/operations.md
  • docs/server.md
  • docs/types.md
  • docs/typescript-client.md
  • extension.neon
  • phpstan.neon
  • phpunit.xml
  • pint.json
  • src/Adapters/Laravel/Commands/ClearOptimizeCommand.php
  • src/Adapters/Laravel/Commands/CodeGenCommand.php
  • src/Adapters/Laravel/Commands/ListCommand.php
  • src/Adapters/Laravel/Commands/OptimizeCommand.php
  • src/Adapters/Laravel/Contracts/ClientFactory.php
  • src/Adapters/Laravel/Contracts/ContextFactory.php
  • src/Adapters/Laravel/Contracts/RetryInResolver.php
  • src/Adapters/Laravel/LaravelHttpController.php
  • src/Adapters/Laravel/LaravelServiceProvider.php
  • src/Adapters/Laravel/Middleware/LocalMetadataMiddleware.php
  • src/Adapters/Laravel/OperationClientFactory.php
  • src/Adapters/Laravel/Preloader.php
  • src/Adapters/Laravel/Utils/ArtisanOptions.php
  • src/Adapters/Laravel/config/config.php
  • src/Adapters/PHPStan/UtilitiesNodeResolver.php
  • src/CodeGen/CodeGenerators.php
  • src/CodeGen/CodeGenerators/EmitOperationClientBindings.php
  • src/CodeGen/CodeGenerators/EmitOperations.php
  • src/CodeGen/CodeGenerators/EmitOperationsSpaClient.php
  • src/CodeGen/CodeGenerators/EmitQueryKey.php
  • src/CodeGen/CodeGenerators/EmitTanstackQuery.php
  • src/CodeGen/CodeGenerators/EmitTypeMap.php
  • src/CodeGen/CodeGenerators/EmitTypeUtils.php
  • src/CodeGen/CodeGenerators/EmitTypes.php
  • src/CodeGen/Contracts/DependsOn.php
  • src/CodeGen/Contracts/GeneratesLibFiles.php
  • src/CodeGen/Contracts/GeneratesOperationCode.php
  • src/CodeGen/Data/DefinitionTarget.php
  • src/CodeGen/Data/ServerMetadata.php
  • src/CodeGen/Data/TypedOperation.php
  • src/CodeGen/Exceptions/CodeGenException.php
  • src/CodeGen/Exceptions/InvalidGeneratorDependencies.php
  • src/CodeGen/Helpers/TypeScriptFile.php
  • src/CodeGen/Helpers/TypescriptCodeBlock.php
  • src/CodeGen/Helpers/TypescriptImportStatement.php
  • src/CodeGen/TypescriptDefinitionGenerator.php
  • src/CodeGen/TypescriptServerCodeGenerator.php
  • src/CodeGen/Utils/ErrorTypescript.php
  • src/CodeGen/Utils/OutputDirectory.php
  • src/CodeGen/Utils/Paths.php
  • src/CodeGen/Utils/Typescript.php
  • src/Contracts/Attributes/Brand.php
  • src/Contracts/Attributes/Castable.php
  • src/Contracts/Attributes/Command.php
  • src/Contracts/Attributes/ExposeAs.php
  • src/Contracts/Attributes/Middleware.php
  • src/Contracts/Attributes/Named.php
  • src/Contracts/Attributes/Optional.php
  • src/Contracts/Attributes/Query.php
  • src/Contracts/Attributes/Throws.php
  • src/Contracts/Client.php
  • src/Contracts/ClientAwareException.php
  • src/Contracts/Coercible.php
  • src/Contracts/ConfigurableMiddleware.php
  • src/Contracts/Constraint.php
  • src/Contracts/Discoverer.php
  • src/Contracts/ExceptionPresenter.php
  • src/Contracts/ExportableToPhpCode.php
  • src/Contracts/MiddlewareContract.php
  • src/Contracts/NodeInterface.php
  • src/Contracts/OperationKeyGenerator.php
  • src/Contracts/OperationRegistry.php
  • src/Contracts/Parser.php
  • src/Contracts/PhpTsBindingsException.php
  • src/Contracts/RpcResult.php
  • src/Contracts/SerializableClient.php
  • src/Contracts/ServerAdapter.php
  • src/Contracts/ValidatableNode.php
  • src/Contracts/ValueObjects/IntValueObject.php
  • src/Contracts/ValueObjects/StringValueObject.php
  • src/Data/IO.php
  • src/Data/Value.php
  • src/Executor/Contracts/ExecutionContext.php
  • src/Executor/Contracts/Executor.php
  • src/Executor/Contracts/Handler.php
  • src/Executor/Data/Context.php
  • src/Executor/Data/Failure.php
  • src/Executor/Data/Issue.php
  • src/Executor/Data/IssueMessage.php
  • src/Executor/Data/Issues.php
  • src/Executor/Data/ParsingOptions.php
  • src/Executor/Data/SerializationOptions.php
  • src/Executor/Data/Success.php
  • src/Executor/Exceptions/SchemaException.php
  • src/Executor/Exceptions/ValidationException.php
  • src/Executor/Handlers/CustomClassHandler.php
  • src/Executor/Handlers/IntersectionHandler.php
  • src/Executor/Handlers/ListHandler.php
  • src/Executor/Handlers/RecordHandler.php
  • src/Executor/Handlers/StructHandler.php
  • src/Executor/Handlers/TupleHandler.php
  • src/Executor/Handlers/UnionHandler.php
  • src/Executor/SchemaExecutor.php
  • src/Parser/ASTOptimizer.php
  • src/Parser/AstSorter.php
  • src/Parser/Consumers/ArrayConsumer.php
  • src/Parser/Consumers/BuiltInLeafConsumer.php
  • src/Parser/Consumers/ClassConstConsumer.php
  • src/Parser/Consumers/IntConsumer.php
  • src/Parser/Consumers/LiteralConsumer.php
  • src/Parser/Consumers/UserDefinedParsers.php
  • src/Parser/Consumers/UtilsConsumer.php
  • src/Parser/Contracts/Coercible.php
  • src/Parser/Contracts/Constraint.php
  • src/Parser/Contracts/LeafNode.php
  • src/Parser/Contracts/NodeInterface.php
  • src/Parser/Contracts/TypeConsumer.php
  • src/Parser/Contracts/TypeRegistry.php
  • src/Parser/Contracts/ValidatableNode.php
  • src/Parser/Contracts/WrapsNode.php
  • src/Parser/Contracts/WrapsNodes.php
  • src/Parser/Data/Exceptions/InvalidSyntaxException.php
  • src/Parser/Data/Exceptions/ParserException.php
  • src/Parser/Data/Exceptions/UnknownTypeKeyException.php
  • src/Parser/Data/GlobalTypeAliases.php
  • src/Parser/Definition/ParserState.php
  • src/Parser/Definition/Position.php
  • src/Parser/Definition/Token.php
  • src/Parser/Definition/TokenType.php
  • src/Parser/Exceptions/InvalidSyntaxException.php
  • src/Parser/Helpers/ASTOptimizer.php
  • src/Parser/Helpers/AstValidator.php
  • src/Parser/Helpers/Constraints/IntRange.php
  • src/Parser/Helpers/Constraints/ListLength.php
  • src/Parser/Helpers/Constraints/LowercaseString.php
  • src/Parser/Helpers/Constraints/NonEmptyString.php
  • src/Parser/Helpers/Constraints/NonFalsyString.php
  • src/Parser/Helpers/Constraints/NumericString.php
  • src/Parser/Helpers/Constraints/UppercaseString.php
  • src/Parser/Helpers/Constraints/ValidatesString.php
  • src/Parser/Helpers/Consumers/AliasConsumer.php
  • src/Parser/Helpers/Consumers/ArrayConsumer.php
  • src/Parser/Helpers/Consumers/BuiltInLeafConsumer.php
  • src/Parser/Helpers/Consumers/ClassConstConsumer.php
  • src/Parser/Helpers/Consumers/DateTimeConsumer.php
  • src/Parser/Helpers/Consumers/EnumConsumer.php
  • src/Parser/Helpers/Consumers/IntConsumer.php
  • src/Parser/Helpers/Consumers/InteractsWithGenerics.php
  • src/Parser/Helpers/Consumers/LiteralConsumer.php
  • src/Parser/Helpers/Consumers/StructConsumer.php
  • src/Parser/Helpers/Consumers/UserDefinedObjectConsumer.php
  • src/Parser/Helpers/Consumers/UtilsConsumer.php
  • src/Parser/Helpers/Consumers/ValueObjectConsumer.php
  • src/Parser/Helpers/ParserState.php
  • src/Parser/Helpers/ParsingScope.php
  • src/Parser/Helpers/RecordKey.php
  • src/Parser/Helpers/Registry/CachedTypeRegistry.php
  • src/Parser/Lexer/Exceptions/UnexpectedCharacterException.php
  • src/Parser/Lexer/Lexer.php
  • src/Parser/Lexer/SourceLocation.php
  • src/Parser/Lexer/Token.php
  • src/Parser/Lexer/TokenType.php
  • src/Parser/Nodes/ConstraintNode.php
  • src/Parser/Nodes/CustomCastingNode.php
  • src/Parser/Nodes/Data/BackingType.php
  • src/Parser/Nodes/Data/BuiltInType.php
  • src/Parser/Nodes/Data/LiteralType.php
  • src/Parser/Nodes/Data/NamedType.php
  • src/Parser/Nodes/Data/ObjectCastStrategy.php
  • src/Parser/Nodes/Data/PropertyType.php
  • src/Parser/Nodes/Data/StructPhpType.php
  • src/Parser/Nodes/IntersectionNode.php
  • src/Parser/Nodes/Leaf/BoolNode.php
  • src/Parser/Nodes/Leaf/BuiltInNode.php
  • src/Parser/Nodes/Leaf/DateTimeNode.php
  • src/Parser/Nodes/Leaf/EnumNode.php
  • src/Parser/Nodes/Leaf/FloatNode.php
  • src/Parser/Nodes/Leaf/IntNode.php
  • src/Parser/Nodes/Leaf/LiteralNode.php
  • src/Parser/Nodes/Leaf/MixedNode.php
  • src/Parser/Nodes/Leaf/NullNode.php
  • src/Parser/Nodes/Leaf/RejectsInvalidType.php
  • src/Parser/Nodes/Leaf/StringNode.php
  • src/Parser/Nodes/Leaf/ValueObjectNode.php
  • src/Parser/Nodes/ListNode.php
  • src/Parser/Nodes/MetadataNode.php
  • src/Parser/Nodes/NamedNode.php
  • src/Parser/Nodes/PropertyNode.php
  • src/Parser/Nodes/RecordNode.php
  • src/Parser/Nodes/ReferencedNode.php
  • src/Parser/Nodes/StructNode.php
  • src/Parser/Nodes/TupleNode.php
  • src/Parser/Nodes/UnionNode.php
  • src/Parser/Parsers/DateTimeParser.php
  • src/Parser/Parsers/EnumCasesParser.php
  • src/Parser/Registry/CachedTypeRegistry.php
  • src/Parser/TypeParser.php
  • src/Parser/TypeStringTokenizer.php
  • src/Parser/Utils/Lexemes.php
  • src/Reflection/AttributesReflector.php
  • src/Reflection/FileReflector.php
  • src/Reflection/MetadataAttributes.php
  • src/Reflection/PropertiesReflector.php
  • src/Reflection/TypeReflector.php
  • src/Server/Adapters/NewInstanceAdapter.php
  • src/Server/Adapters/PsrContainerAdapter.php
  • src/Server/Client/InteractsWithToasts.php
  • src/Server/Client/NullClient.php
  • src/Server/Client/OperationSPAClient.php
  • src/Server/Data/Definition.php
  • src/Server/Data/ErrorType.php
  • src/Server/Data/Exceptions/InvalidInputException.php
  • src/Server/Data/Exceptions/InvalidMiddlewareException.php
  • src/Server/Data/Exceptions/InvalidOutputException.php
  • src/Server/Data/Exceptions/OperationNotFoundException.php
  • src/Server/Data/Exceptions/UnknownResultTypeException.php
  • src/Server/Data/MiddlewareDefinition.php
  • src/Server/Data/Operation.php
  • src/Server/Data/OperationType.php
  • src/Server/Data/ResolveInfo.php
  • src/Server/Data/RpcError.php
  • src/Server/Data/RpcSuccess.php
  • src/Server/Data/ServerConfiguration.php
  • src/Server/Data/Toast.php
  • src/Server/Data/ToastType.php
  • src/Server/Errors/ErrorClassifier.php
  • src/Server/Errors/ExceptionScope.php
  • src/Server/Errors/ThrowAttributeResolver.php
  • src/Server/KeyGenerators/HashSha256KeyGenerator.php
  • src/Server/KeyGenerators/PlainlyExposedKeyGenerator.php
  • src/Server/Operations/CachedOperationRegistry.php
  • src/Server/Operations/DiscoveryManager.php
  • src/Server/Operations/EagerlyLoadedOperationRegistry.php
  • src/Server/Operations/EagerlyLoadedRegistry.php
  • src/Server/Operations/OperationDiscovery.php
  • src/Server/Pipeline/ContextualPipeline.php
  • src/Server/Preloader.php
  • src/Server/Presenter/CatchAllPresenter.php
  • src/Server/Presenter/ClientAwareExceptionPresenter.php
  • src/Server/Presenter/InvalidInputPresenter.php
  • src/Server/Presenter/NotFoundPresenter.php
  • src/Server/Presenter/UnauthenticatedPresenter.php
  • src/Server/Presenter/UnauthorizedPresenter.php
  • src/Server/Server.php
  • src/Typescript/Code/TypescriptFile.php
  • src/Typescript/Code/TypescriptImport.php
  • src/Typescript/Data/EmissionContext.php
  • src/Typescript/Data/Typescript.php
  • src/Typescript/Exceptions/InvalidStringLiteralException.php
  • src/Typescript/Exceptions/UnknownAliasException.php
  • src/Typescript/Exceptions/UnsupportedTypeException.php
  • src/Typescript/Helpers/AliasRegistry.php
  • src/Typescript/TypescriptGenerator.php
  • src/Typescript/Utils/Syntax.php
  • src/Utils/Arrays.php
  • src/Utils/Assertions.php
  • src/Utils/Dicts.php
  • src/Utils/Hashs.php
  • src/Utils/Lists.php
  • src/Utils/Namespaces.php
  • src/Utils/Nodes.php
  • src/Utils/PHPExport.php
  • src/Utils/PhpDoc.php
  • src/Utils/Reflections.php
  • src/Utils/Regexes.php
  • src/Utils/Strings.php
  • src/Validators/Email.php
  • src/Validators/LengthValidator.php
  • src/Validators/NonEmptyString.php
  • src/Validators/NonFalsyStringValidator.php
  • tests/Adapters/Laravel/CodeGenCommandNamingTest.php
  • tests/Adapters/Laravel/LaravelHttpControllerTest.php
  • tests/Adapters/Laravel/OperationClientFactoryTest.php
  • tests/Executor/SchemaExecutorTest.php
  • tests/Feature/ErrorHandling/ConflictException.php
  • tests/Feature/ErrorHandling/DecoyDeclaringMiddleware.php
  • tests/Feature/ErrorHandling/ErrorScopeOperations.php
  • tests/Feature/ErrorHandling/ForbiddenException.php
  • tests/Feature/ErrorHandling/GoneException.php
  • tests/Feature/ErrorHandling/MiddlewareOwnException.php
  • tests/Feature/ErrorHandling/MissingResourceException.php
  • tests/Feature/ErrorHandling/SelfDeclaringMiddleware.php
  • tests/Feature/ErrorHandling/SessionExpiredException.php
  • tests/Feature/ErrorHandling/SharedException.php
  • tests/Feature/ErrorHandling/TeapotException.php
  • tests/Feature/ErrorHandling/TokenExpiredException.php
  • tests/Feature/ErrorHandling/TooManyRequestsException.php
  • tests/Feature/ErrorHandling/UndeclaredThrowingMiddleware.php
  • tests/Feature/FullSchemaTest.php
  • tests/Feature/Mocks/CreateObjectInput.php
  • tests/Feature/Mocks/CreateUserInput.php
  • tests/Feature/Mocks/CreateUserWithOptionalEmail.php
  • tests/Feature/Mocks/GlobalMiddlewareException.php
  • tests/Feature/Mocks/GloballyThrowingMiddleware.php
  • tests/Feature/Mocks/MutatingPrefixMiddleware.php
  • tests/Feature/Mocks/NotAMiddleware.php
  • tests/Feature/Mocks/Paginated.php
  • tests/Feature/Mocks/SortByInput.php
  • tests/Feature/Operations/ConfiguredGreeting.php
  • tests/Feature/Operations/InvalidNameException.php
  • tests/Feature/Operations/NameCheckingMiddleware.php
  • tests/Feature/Operations/PoolingTestClass.php
  • tests/Feature/Operations/PrefixNameMiddleware.php
  • tests/Feature/Operations/TestClass.php
  • tests/Feature/ServerErrorHandlingTest.php
  • tests/Feature/ServerTest.php
  • tests/Integration/CastingGenericsAndAliasesTest.php
  • tests/Integration/CoercionAndEdgeModesTest.php
  • tests/Integration/CollectionsAndStructuresTest.php
  • tests/Integration/Fixtures/DataShapes/Paginated.php
  • tests/Integration/Fixtures/Exceptions/OrderAlreadyShippedException.php
  • tests/Integration/Fixtures/Exceptions/OrderNotFoundException.php
  • tests/Integration/Fixtures/MetadataMiddleware.php
  • tests/Integration/Fixtures/NoOpMiddleware.php
  • tests/Integration/Fixtures/Operations/CartCommands.php
  • tests/Integration/Fixtures/Operations/CatalogQueries.php
  • tests/Integration/Fixtures/Operations/CheckoutCommands.php
  • tests/Integration/Fixtures/Operations/InventoryQueries.php
  • tests/Integration/Fixtures/Operations/InventoryRefinements.php
  • tests/Integration/Fixtures/Operations/OrderCommands.php
  • tests/Integration/Fixtures/Operations/OrderQueries.php
  • tests/Integration/Fixtures/Operations/ShippingCommands.php
  • tests/Integration/Fixtures/Types/Address.php
  • tests/Integration/Fixtures/Types/Batch.php
  • tests/Integration/Fixtures/Types/CatalogShared.php
  • tests/Integration/Fixtures/Types/Currency.php
  • tests/Integration/Fixtures/Types/CustomerProfile.php
  • tests/Integration/Fixtures/Types/HandlingInstructions.php
  • tests/Integration/Fixtures/Types/HomeDelivery.php
  • tests/Integration/Fixtures/Types/LineItemInput.php
  • tests/Integration/Fixtures/Types/Money.php
  • tests/Integration/Fixtures/Types/OrderNumber.php
  • tests/Integration/Fixtures/Types/OrderStatus.php
  • tests/Integration/Fixtures/Types/OrderSummary.php
  • tests/Integration/Fixtures/Types/PalletSize.php
  • tests/Integration/Fixtures/Types/PaymentMethod.php
  • tests/Integration/Fixtures/Types/PickupPoint.php
  • tests/Integration/Fixtures/Types/PlaceOrderInput.php
  • tests/Integration/Fixtures/Types/PublicWarehouse.php
  • tests/Integration/Fixtures/Types/Quantity.php
  • tests/Integration/Fixtures/Types/ShippingClass.php
  • tests/Integration/Fixtures/Types/Sku.php
  • tests/Integration/Fixtures/Types/StockLevel.php
  • tests/Integration/Fixtures/Types/WarehouseId.php
  • tests/Integration/IntegrationHarness.php
  • tests/Integration/OrderCastingTest.php
  • tests/Integration/OrderErrorsTest.php
  • tests/Integration/OrderSerializationTest.php
  • tests/Integration/OrderUnionsTest.php
  • tests/Integration/RefinementsTest.php
  • tests/Integration/ScalarsAndLiteralsTest.php
  • tests/Mocks/Errors/ErrorOperations.php
  • tests/Mocks/Errors/ExposedDomainException.php
  • tests/Mocks/Errors/MiddlewareDomainException.php
  • tests/Mocks/Errors/RecordMissingException.php
  • tests/Mocks/Errors/RenamingMiddleware.php
  • tests/Mocks/Errors/ThrowingMiddleware.php
  • tests/Mocks/Errors/UndeclaredExposedException.php
  • tests/Mocks/Errors/UnexposedException.php
  • tests/Mocks/Errors/UserMissingException.php
  • tests/Mocks/Image.php
  • tests/Mocks/InvalidationNamespace.php
  • tests/Mocks/Named/AliasNaming.php
  • tests/Mocks/Named/ArticleResource.php
  • tests/Mocks/Named/AsymmetricNamed.php
  • tests/Mocks/Named/BrandedPayload.php
  • tests/Mocks/Named/Conflict/Customer.php
  • tests/Mocks/Named/Customer.php
  • tests/Mocks/Named/InvalidlyBranded.php
  • tests/Mocks/Named/InvalidlyNamed.php
  • tests/Mocks/Named/NamedValueObject.php
  • tests/Mocks/Named/Order.php
  • tests/Mocks/Named/OrderStatus.php
  • tests/Mocks/Named/PerDirectionNamed.php
  • tests/Mocks/Named/PublicResource.php
  • tests/Mocks/Named/RenamedThing.php
  • tests/Mocks/ResultEnum.php
  • tests/Mocks/ValueObjects/AbstractValueObject.php
  • tests/Mocks/ValueObjects/AmbiguousValueObject.php
  • tests/Mocks/ValueObjects/CreateAccountInput.php
  • tests/Mocks/ValueObjects/Email.php
  • tests/Mocks/ValueObjects/EmptyValidationValueObject.php
  • tests/Mocks/ValueObjects/ExplodingValueObject.php
  • tests/Mocks/ValueObjects/Inherited/AbstractBrandedId.php
  • tests/Mocks/ValueObjects/Inherited/AccountId.php
  • tests/Mocks/ValueObjects/Inherited/AlsoBranded.php
  • tests/Mocks/ValueObjects/Inherited/AmbiguousId.php
  • tests/Mocks/ValueObjects/Inherited/BadClosureId.php
  • tests/Mocks/ValueObjects/Inherited/BaseId.php
  • tests/Mocks/ValueObjects/Inherited/BrandId.php
  • tests/Mocks/ValueObjects/Inherited/ChildId.php
  • tests/Mocks/ValueObjects/Inherited/ComputedId.php
  • tests/Mocks/ValueObjects/Inherited/ComputedLocally.php
  • tests/Mocks/ValueObjects/Inherited/DeepId.php
  • tests/Mocks/ValueObjects/Inherited/DeepIntId.php
  • tests/Mocks/ValueObjects/Inherited/DisambiguatedId.php
  • tests/Mocks/ValueObjects/Inherited/GrandChildId.php
  • tests/Mocks/ValueObjects/Inherited/IntId.php
  • tests/Mocks/ValueObjects/Inherited/InvoiceId.php
  • tests/Mocks/ValueObjects/Inherited/LegacyId.php
  • tests/Mocks/ValueObjects/Inherited/LocallyOverriddenId.php
  • tests/Mocks/ValueObjects/Inherited/Naming.php
  • tests/Mocks/ValueObjects/Inherited/ParentWinsBase.php
  • tests/Mocks/ValueObjects/Inherited/ParentWinsContract.php
  • tests/Mocks/ValueObjects/Inherited/ParentWinsId.php
  • tests/Mocks/ValueObjects/Inherited/PartiallyOverriddenId.php
  • tests/Mocks/ValueObjects/Inherited/PlainContract.php
  • tests/Mocks/ValueObjects/Inherited/PlainId.php
  • tests/Mocks/ValueObjects/Inherited/ReceiptId.php
  • tests/Mocks/ValueObjects/Inherited/SharedExplicitBrand.php
  • tests/Mocks/ValueObjects/Inherited/SharedExplicitBrandId.php
  • tests/Mocks/ValueObjects/Slug.php
  • tests/Mocks/ValueObjects/StatusEnum.php
  • tests/Mocks/ValueObjects/UserId.php
  • tests/Mocks/ValueObjects/ValidatedAge.php
  • tests/Mocks/ValueObjects/ValidatedEmail.php
  • tests/Pest.php
  • tests/Unit/Adapters/Laravel/ArtisanOptionsTest.php
  • tests/Unit/CodeGen/CodeGeneratorsTest.php
  • tests/Unit/CodeGen/EmitOperationClientBindingsTest.php
  • tests/Unit/CodeGen/EmitOperationsSpaClientTest.php
  • tests/Unit/CodeGen/EmitQueryKeyTest.php
  • tests/Unit/CodeGen/EmitTanstackQueryTest.php
  • tests/Unit/CodeGen/EmitTypeUtilsTest.php
  • tests/Unit/CodeGen/EmitTypesTest.php
  • tests/Unit/CodeGen/ErrorTypescriptTest.php
  • tests/Unit/CodeGen/Mocks/AsymmetricNamedOperations.php
  • tests/Unit/CodeGen/Mocks/ConflictingNamedOperations.php
  • tests/Unit/CodeGen/Mocks/Inherited/BaseOperations.php
  • tests/Unit/CodeGen/Mocks/Inherited/InheritedResult.php
  • tests/Unit/CodeGen/Mocks/InheritingOperations.php
  • tests/Unit/CodeGen/Mocks/NameClashOperations.php
  • tests/Unit/CodeGen/Mocks/NamedOperations.php
  • tests/Unit/CodeGen/Mocks/PerDirectionNamedOperations.php
  • tests/Unit/CodeGen/Mocks/TsOutput/AccountOperations.php
  • tests/Unit/CodeGen/Mocks/TsOutput/CatalogOperations.php
  • tests/Unit/CodeGen/Mocks/TsOutput/ShapeOperations.php
  • tests/Unit/CodeGen/Mocks/TsOutput/Types/AccountFilter.php
  • tests/Unit/CodeGen/Mocks/TsOutput/Types/AccountLockedException.php
  • tests/Unit/CodeGen/Mocks/TsOutput/Types/AliasNaming.php
  • tests/Unit/CodeGen/Mocks/TsOutput/Types/Availability.php
  • tests/Unit/CodeGen/Mocks/TsOutput/Types/Draft.php
  • tests/Unit/CodeGen/Mocks/TsOutput/Types/Money.php
  • tests/Unit/CodeGen/Mocks/TsOutput/Types/Product.php
  • tests/Unit/CodeGen/Mocks/TsOutput/Types/ProductId.php
  • tests/Unit/CodeGen/Mocks/TsOutput/Types/ProvisioningException.php
  • tests/Unit/CodeGen/Mocks/TsOutput/Types/QuotaExceededException.php
  • tests/Unit/CodeGen/Mocks/TsOutput/Types/Sku.php
  • tests/Unit/CodeGen/Mocks/UnrepresentableOperations.php
  • tests/Unit/CodeGen/Mocks/UserOperations.php
  • tests/Unit/CodeGen/OutputDirectoryTest.php
  • tests/Unit/CodeGen/PathsTest.php
  • tests/Unit/CodeGen/TsOutputFixture.php
  • tests/Unit/CodeGen/TsOutputFixtureTest.php
  • tests/Unit/CodeGen/TypescriptServerCodeGeneratorTest.php
  • tests/Unit/CodeGen/Utils/TypescriptTest.php
  • tests/Unit/Contracts/Attributes/NamespaceAsStringTest.php
  • tests/Unit/Contracts/ExceptionHierarchyTest.php
  • tests/Unit/Definition/TypescriptDefinitionTest.php
  • tests/Unit/Executor/ContextPathTest.php
  • tests/Unit/Executor/Exceptions/ValidationExceptionTest.php
  • tests/Unit/Executor/Mocks/ApiCredentials.php
  • tests/Unit/Executor/Mocks/AuditedNoteInput.php
  • tests/Unit/Executor/Mocks/UpdateProfileInput.php
  • tests/Unit/Executor/Mocks/UserSchema.php
  • tests/Unit/Executor/RecordWireShapeTest.php
  • tests/Unit/Executor/ResultTest.php
  • tests/Unit/Executor/SchemaExecutorTest.php
  • tests/Unit/Executor/StrictnessTest.php
  • tests/Unit/Executor/UnionAndEnumDispatchTest.php
  • tests/Unit/Parser/ASTOptimizerTest.php
  • tests/Unit/Parser/Constraints/IntRangeTest.php
  • tests/Unit/Parser/Constraints/ListLengthTest.php
  • tests/Unit/Parser/Constraints/PhpstanRefinementsTest.php
  • tests/Unit/Parser/Constraints/StringConstraintsTest.php
  • tests/Unit/Parser/Data/ParsingContextTest.php
  • tests/Unit/Parser/Data/Stubs/AccountData.php
  • tests/Unit/Parser/Data/Stubs/AccountWithImage.php
  • tests/Unit/Parser/Data/Stubs/Address.php
  • tests/Unit/Parser/Data/Stubs/CastableAbstractClass.php
  • tests/Unit/Parser/Data/Stubs/ComplexPhpDoc.php
  • tests/Unit/Parser/Data/Stubs/ExplicitNeverCasting.php
  • tests/Unit/Parser/Data/Stubs/ForcedConstructorCasting.php
  • tests/Unit/Parser/Data/Stubs/FullAccount.php
  • tests/Unit/Parser/Data/Stubs/MyUserClass.php
  • tests/Unit/Parser/Data/Stubs/ReadonlyOutputFields.php
  • tests/Unit/Parser/Data/Stubs/SomeAbstractClass.php
  • tests/Unit/Parser/Data/Stubs/SomeFileInterface.php
  • tests/Unit/Parser/Data/Stubs/UncastableClass.php
  • tests/Unit/Parser/Data/UserMock.php
  • tests/Unit/Parser/Definition/LexemesTest.php
  • tests/Unit/Parser/Lexer/LexerTest.php
  • tests/Unit/Parser/MetadataEliminationTest.php
  • tests/Unit/Parser/NamedTypeTest.php
  • tests/Unit/Parser/NodeDiagnosticStringTest.php
  • tests/Unit/Parser/OptimizeAndWriteToFileTest.php
  • tests/Unit/Parser/OptimizedCodeShapeTest.php
  • tests/Unit/Parser/RecordKeyTest.php
  • tests/Unit/Parser/StructNodeOrderTest.php
  • tests/Unit/Parser/TypeParserTest.php
  • tests/Unit/Parser/UserDefinedObjectConsumerTest.php
  • tests/Unit/Parser/ValueObjectConsumerTest.php
  • tests/Unit/PhpStan/Mocks/MyTestClass.php
  • tests/Unit/PhpStan/UtilitiesResolverTest.php
  • tests/Unit/PhpStan/data/types.php
  • tests/Unit/Reflection/FileReflectorTest.php
  • tests/Unit/Reflection/Fixtures/ClassConstantBeforeDeclaration.php
  • tests/Unit/Reflection/Fixtures/EveryUseStatementShape.php
  • tests/Unit/Reflection/Fixtures/SomeTrait.php
  • tests/Unit/Reflection/Mocks/NativeTypesMock.php
  • tests/Unit/Reflection/Mocks/PropertyVisibilityShowcase.php
  • tests/Unit/Reflection/Mocks/UserClassMock.php
  • tests/Unit/Reflection/PropertiesReflectorTest.php
  • tests/Unit/Reflection/TypeReflectionTest.php
  • tests/Unit/Server/Client/NullClientTest.php
  • tests/Unit/Server/Client/OperationSPAClientTest.php
  • tests/Unit/Server/Data/Exceptions/InvalidInputExceptionTest.php
  • tests/Unit/Server/Data/RpcErrorTest.php
  • tests/Unit/Server/Data/RpcSuccessTest.php
  • tests/Unit/Server/Data/ServerConfigurationTest.php
  • tests/Unit/Server/Errors/ErrorClassifierTest.php
  • tests/Unit/Server/Errors/Mocks/DuplicateNamingMiddleware.php
  • tests/Unit/Server/Errors/Mocks/InvalidExposeAsException.php
  • tests/Unit/Server/Errors/Mocks/NamedDomainExposedException.php
  • tests/Unit/Server/Errors/Mocks/NamingMiddleware.php
  • tests/Unit/Server/Errors/Mocks/NotFoundExposedException.php
  • tests/Unit/Server/Errors/Mocks/RequiresLoginInterface.php
  • tests/Unit/Server/Errors/Mocks/SessionExpiredException.php
  • tests/Unit/Server/Errors/Mocks/ThrowResolverOperations.php
  • tests/Unit/Server/Errors/Mocks/TooManyAttemptsException.php
  • tests/Unit/Server/Errors/Mocks/UnauthenticatedException.php
  • tests/Unit/Server/Errors/Mocks/UnauthorizedException.php
  • tests/Unit/Server/Errors/Mocks/UnnamedTypeMiddleware.php
  • tests/Unit/Server/Errors/ThrowAttributeResolverTest.php
  • tests/Unit/Server/KeyGeneratorTest.php
  • tests/Unit/Server/MiddlewareDefinitionTest.php
  • tests/Unit/Server/OperationDiscoveryTest.php
  • tests/Unit/Server/Operations/CachedOperationRegistryTest.php
  • tests/Unit/Server/Operations/Mocks/RegistryFixtureOperations.php
  • tests/Unit/Server/Pipeline/ContextualPipelineTest.php
  • tests/Unit/TypeStringTokenizerTest.php
  • tests/Unit/Typescript/AliasRegistryTest.php
  • tests/Unit/Typescript/Code/TypescriptFileTest.php
  • tests/Unit/Typescript/Code/TypescriptImportTest.php
  • tests/Unit/Typescript/NamedTypesTest.php
  • tests/Unit/Typescript/OptimizedAstTest.php
  • tests/Unit/Typescript/Stubs/EmptyEnum.php
  • tests/Unit/Typescript/TypescriptGeneratorTest.php
  • tests/Unit/Typescript/Utils/SyntaxTest.php
  • tests/Unit/Utils/Mocks/ReflectionsUtilMock.php
  • tests/Unit/Utils/NamespacesTest.php
  • tests/Unit/Utils/NodesTest.php
  • tests/Unit/Utils/PHPExportTest.php
  • tests/Unit/Utils/PhpDocTest.php
  • tests/Unit/Utils/ReflectionsTest.php
  • tests/Unit/Utils/RegexesTest.php
  • tests/Unit/Validators/EmailTest.php
  • tests/Unit/Validators/LengthValidatorTest.php
  • tests/benchmark/run.php
  • tests/ts-output/.gitignore
  • tests/ts-output/generate.php
  • tests/ts-output/package.json
  • tests/ts-output/src/usage.ts
  • tests/ts-output/tsconfig.json

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Comment @coderabbitai help to get the list of available commands.

@le0daniel le0daniel changed the title Feature/remove old parsers and collection like stuff V1 beta Aug 14, 2026
@le0daniel
le0daniel merged commit 365b3fa into main Aug 14, 2026
3 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