Please verify the following issues in the client portal API functions:
1. **publicClientRequestDetail** - Verify Creator Field:
- Check that the response includes a "creator" object for the request
- The creator should have at minimum: { id, full_name, email }
- Test with requestId: "6945c6abd57a3e60cb0021e7" and slug: "brasch"
- Expected: response.request.creator should exist and have user details
2. **publicClientDecision** - Verify Single Call Handling:
- When a decision is made with note and newImages, it should:
a) Create the decision record
b) Store the note on the decision
c) Attach the newImages to the decision (not as separate comment)
- The decision should NOT trigger a separate comment creation
- Test payload: { requestId, decision: "approved", note: "Test note", newImages: ["url1"] }
- Expected: Only ONE timeline entry for the decision (not decision + separate comment)
3. **Duplicate Prevention**:
- Verify that when publicClientDecision is called with newImages:
- Images are linked to the decision, not created as separate attachments
- The decision note is stored on the decision record itself
- No duplicate comment is automatically created
- The frontend now calls ONLY publicClientDecision (not followed by publicAddClientComment)
4. **Timeline Display Logic**:
- Request attachments should be filtered by: posted_at < earliest decision time
- This prevents showing decision-related images twice (once in request, once in decision)
- Verify that decision attachments include both targetAttachmentIds and newImages
Please test these scenarios and confirm:
- Creator is properly returned in publicClientRequestDetail
- Decision with note+images creates single entry, not duplicate
- Timeline logic correctly handles attachment filtering
Current behavior we're fixing:
- ❌ Duplicate entries for decisions (decision + comment showing same content)
- ❌ Missing creator information on request display
- ❌ Decision images potentially showing twice in timeline
Expected behavior:
- ✅ Single decision entry with note and images
- ✅ Creator displayed: "[Creator Name] posted review request"
- ✅ No duplicate images in timelineCopy this prompt and send it to the main project management app (projects.achtungkraft.com) to verify the API is correctly handling creator fields, decision logic, and preventing duplicates.