Expose and accept version coauthor information#1928
Draft
fashxp wants to merge 7 commits into
Draft
Conversation
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SsEa2MTm2gRPyGEdHGnnoF
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SsEa2MTm2gRPyGEdHGnnoF
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SsEa2MTm2gRPyGEdHGnnoF
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SsEa2MTm2gRPyGEdHGnnoF
This was referenced Jul 2, 2026
Up to standards ✅🟢 Issues
|
| Category | Results |
|---|---|
| BestPractice | 1 minor |
| CodeStyle | 23 minor |
| Complexity | 1 medium |
🟢 Metrics 63 complexity
Metric Results Complexity 63
NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.
Member
Author
|
CI status confirmed: all failing checks (PHPStan matrix, Codeception matrix, Sonar analysis) fail solely on |
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SsEa2MTm2gRPyGEdHGnnoF
Drop the redundant "(e.g. agent)" concat from the coauthorType OpenAPI descriptions (the Property already carries example: 'agent') and shorten the previousCoauthorContext locals to coauthorSnapshot, keeping both the line length and PHPMD's variable-length rule happy. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SsEa2MTm2gRPyGEdHGnnoF
Cover UpdateService::update() coauthor-context wiring end to end through the public API with a real Pimcore\Model\Version\CoauthorContext: payload keys activate the context only for the duration of the save, empty/partial keys never activate it, an outer context is overridden during save and restored exactly afterwards, and the context is still restored when save() throws. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SsEa2MTm2gRPyGEdHGnnoF
|
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.

!!! DO NOT MERGE BEFORE 2026.2 release
Summary
Exposes the new core version coauthor fields (
coauthorType,coauthor) in the versions API and lets clients set them on element saves and on existing versions.Depends on pimcore/pimcore#19235 — draft until that merges (CI installs
pimcore/pimcorefrom Packagist and needsPimcore\Model\Version\CoauthorContextInterface).Changes
Versionlisting schema +VersionHydrator: optional nullablecoauthorType/coauthor(NOT added torequired— additive, BC-safe). First unit test for the Version module (VersionHydratorTest).coauthorType/coauthorkeys (same pattern astask):UpdateService/PatchServiceinjectCoauthorContextInterfaceand run the save inside an active context, snapshot-and-restoring any outer context infinally. New typed constants onElementSaveServiceInterface; OpenAPIPropertydeclarations on the five update/patch request bodies.PUT /versions/{id}accepts optionalcoauthorType/coauthor(likenote/public); empty string clears the field.Verification
GET /versions/{elementType}/{id}returns the fields,PUT /versions/{id}sets and clears them.🤖 Generated with Claude Code
https://claude.ai/code/session_01SsEa2MTm2gRPyGEdHGnnoF