Skip to content

test(gpt55): agentic review @beta.15 — openai.gpt-5.5#21

Closed
wezell wants to merge 1 commit into
t15-gpt55-basefrom
t15-gpt55-head
Closed

test(gpt55): agentic review @beta.15 — openai.gpt-5.5#21
wezell wants to merge 1 commit into
t15-gpt55-basefrom
t15-gpt55-head

Conversation

@wezell

@wezell wezell commented Jun 26, 2026

Copy link
Copy Markdown
Owner

Clean single-model e2e at @v3.3.0-beta.15. Model: openai.gpt-5.5 — Bedrock Mantle. Reviewed diff = only the dotCMS#36317 change. Throwaway.

dotCMS#36279)

Content Drive's upload dialog lets users pick Asset vs File, which are
semantically base types. Previously only DOTASSET could be resolved from a
base type on the backend, so firing the NEW workflow action with
baseType: FILEASSET failed with "content type or base type is not set or is
invalid". This adds the missing FILEASSET resolution and switches the
frontend to send the base type.

Backend:
- Extract the dotAsset mime-matching algorithm into a reusable
  BaseTypeMimeTypeMatcher (parameterized by base type + binary field var);
  DotAssetAPIImpl.tryMatch now delegates to it (DOTASSET behavior unchanged).
- Move DotAssetBaseTypeToContentTypeStrategyImpl out of the resolver into its
  own class and add FileAssetBaseTypeToContentTypeStrategyImpl, which
  mime-matches FILEASSET content types and falls back to the default FileAsset.
- Register both strategies; fix BaseTypeToContentTypeStrategyResolver.subscribe
  which ignored its baseContentType arg and always registered under DOTASSET.

Frontend:
- Revert uploadDotAsset to its original 2-arg form; add uploadFileByBaseType
  (DotUploadFileService) and newContentletByBaseType (DotWorkflowActionsFireService)
  which send baseType instead of contentType.
- Content Drive now emits DOTASSET/FILEASSET and routes uploads through the new
  method; root-level uploads carry the current site identifier so they land on
  the browsed site, not the default host.

Tests: resolver unit test (subscribe regression + FILEASSET registration),
FileAsset strategy integration test, and frontend specs for the new methods,
base-type selection, and current-site root upload.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown

🤖 dotBot Review (Bedrock Mantle)

New Issues

  • 🟡 Medium: core-web/libs/data-access/src/lib/dot-workflow-actions-fire/dot-workflow-actions-fire.service.ts:157newContentletByBaseType builds data: { baseType, ...data }, so caller-supplied data.baseType overrides the method argument and caller-supplied data.contentType is still sent despite this API promising a base-type-only request. Put baseType after data and omit/guard contentType.
  • 🟡 Medium: core-web/libs/data-access/src/lib/dot-upload-file/dot-upload-file.service.ts:163 — the string/asset-id branch of uploadFileByBaseType drops extraData, so callers using the documented file: string path cannot pass hostFolder, indexPolicy, or other request data while the File branch can.
  • 🟡 Medium: dotCMS/src/main/java/com/dotcms/contenttype/business/FileAssetBaseTypeToContentTypeStrategyImpl.java:82 — if the request contentlet contains the fileAsset key with a null value, assetValue.toString() throws an uncaught NullPointerException instead of falling back or returning an empty match, causing the new FILEASSET base-type resolution path to fail with a 500.

openai.gpt-5.5 · Run: #28255175234 · tokens: in: 19307 · out: 5557 (reasoning: 5104) · total: 24864 · est. ~$0.080

@wezell wezell closed this Jun 26, 2026
@wezell wezell deleted the t15-gpt55-head branch June 26, 2026 19:07
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.

2 participants