Skip to content

fix: Publishing Push Job Management API - 10 issues resolved - #34862#34874

Merged
hassandotcms merged 7 commits intomainfrom
claude/issue-34862-20260304-1534
Mar 13, 2026
Merged

fix: Publishing Push Job Management API - 10 issues resolved - #34862#34874
hassandotcms merged 7 commits intomainfrom
claude/issue-34862-20260304-1534

Conversation

@hassandotcms
Copy link
Contributor

This PR addresses all 10 issues identified in the Publishing Push publishing job management REST endpoints:

HIGH Priority Fixes:

  1. DELETE /{bundleId} now returns 404 for non-existent bundles
  2. POST /push/{bundleId} validates date format before bundle lookup
  3. Added machine-readable enums for status query parameters

MEDIUM Priority Fixes:
4. Added allowableValues for deliveryStrategy parameter
5. Documented operation case-insensitivity vs deliveryStrategy case-sensitivity
6. Added date-time format and timezone requirements for date fields
7. Exposed filterKey in response views for API reproducibility

LOW Priority Fixes:
8. Documented purge async behavior and WebSocket notifications for API clients
9. Fixed bundleId examples to use correct ULID format
10. Added port range validation pattern for EndpointDetailView.port

Additional Security & Validation Improvements:

  • Added bundleId format validation to prevent XSS attacks
  • Fixed pagination validation to return 400 instead of silent clamping
  • Enhanced OpenAPI documentation with proper schema constraints

Resolves #34862

Generated with Claude Code

This commit addresses all 10 issues identified in the Publishing Push publishing job management REST endpoints:

**HIGH Priority Fixes:**
1. DELETE /{bundleId} now returns 404 for non-existent bundles
2. POST /push/{bundleId} validates date format before bundle lookup
3. Added machine-readable enums for status query parameters

**MEDIUM Priority Fixes:**
4. Added allowableValues for deliveryStrategy parameter
5. Documented operation case-insensitivity vs deliveryStrategy case-sensitivity
6. Added date-time format and timezone requirements for date fields
7. Exposed filterKey in response views for API reproducibility

**LOW Priority Fixes:**
8. Documented purge async behavior and WebSocket notifications for API clients
9. Fixed bundleId examples to use correct ULID format
10. Added port range validation pattern for EndpointDetailView.port

**Additional Security & Validation Improvements:**
- Added bundleId format validation to prevent XSS attacks
- Fixed pagination validation to return 400 instead of silent clamping
- Enhanced OpenAPI documentation with proper schema constraints

Resolves #34862

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-authored-by: Freddy Montes <fmontes@users.noreply.github.com>
hassandotcms and others added 4 commits March 5, 2026 21:49
- Restore dual-check (bundle + audit table) for DELETE endpoint to
  prevent orphaned audit records from becoming undeletable
- Add DeliveryStrategyDeserializer to return clean error messages
  for invalid deliveryStrategy values without exposing Java class names
- Cache parsed dates in push endpoint to avoid redundant double parsing
- Update 3 pagination tests to expect 400 errors instead of clamping

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@hassandotcms hassandotcms marked this pull request as ready for review March 10, 2026 13:05
@hassandotcms hassandotcms changed the title fix: Publishing Push Job Management API - 10 issues resolved fix: Publishing Push Job Management API - 10 issues resolved - #34862 Mar 13, 2026
…piled Pattern

- Extract repeated bundleId validation into reusable validateBundleId() method
- Replace String.matches() with compiled static Pattern constant (BUNDLE_ID_PATTERN)
- Add default case to date-parsing switch for defensive consistency
@hassandotcms hassandotcms added this pull request to the merge queue Mar 13, 2026
Merged via the queue into main with commit 5fce075 Mar 13, 2026
52 checks passed
@hassandotcms hassandotcms deleted the claude/issue-34862-20260304-1534 branch March 13, 2026 18:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area : Backend PR changes Java/Maven backend code

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

bug: Push Publishing Job Management API — 4 issues in error handling and input validation

5 participants