Address all open TCA field type coverage issues in the xima-typo3-recordlist extension.
Work through the sub-issues in priority order. Each sub-issue contains a dedicated agent
prompt — use those prompts for the individual fixes.
Priority order:
1. #63 password hash masking (security)
2. #64 datetime format (data correctness)
3. #65 radio label resolution (data correctness)
4. #66 flex badge (cosmetic)
5. #67 imageManipulation + json badge (cosmetic)
6. #68 check bitmask (cosmetic/enhancement)
7. #69 link formatting (cosmetic)
For each fix:
- Read the sub-issue description and the embedded agent prompt before starting.
- Verify the issue is still valid against the current code before making changes.
- Keep changes minimal — only touch the files listed in the sub-issue.
- After each fix, confirm the change does not affect any existing partial or resolver
that is already working (select, group, inline, category, file, check-single, datetime-date).
- Close the sub-issue after a successful fix.
Reference file for full type matrix: TCA_FIELD_TYPE_COVERAGE.md in the repo root.
Overview
Audit of all 25 TYPO3 TCA column types against the extension's rendering and filter pipeline (May 2026). The extension handles relation types (
select,group,inline,category,file) fully. All other types fall through to the genericTextpartial (stripTags() → crop(255)), which is safe but incomplete for several types.No type causes a fatal error or broken response. The issues below are security, display quality, or UX correctness concerns.
Full audit matrix:
TCA_FIELD_TYPE_COVERAGE.mdSub-issues
🔴 Must Fix
type=passwordexposes password hash in list view⚠ Should Fix
type=datetimepartial ignores fieldformatconfig (time/datetime columns broken)type=radioshows raw stored value instead of translated item labelℹ Cosmetic / Enhancement
type=flexshows stripped XML instead of a meaningful placeholdertype=imageManipulationandtype=jsonshow raw JSON blobstype=checkwith multiple items (bitmask) only shows overall true/falsetype=linkshows raw typolink URI instead of formatted linkTypes confirmed working correctly
check(single)Booleanpartial — ✓/✗ iconcategoryCategorypartial + MM resolvercolorText— hex string readablecountryText— country code readabledatetime(date only)DateTimepartial — correct forformat=dateemailText— email string readablefileSysFileReferencespartial + FK resolverfolderText— path readablegroupGrouppartial + MM/CSV resolverinlineInlinepartial + FK/MM resolverinputText— string valuelanguageLanguagepartial (as languageField)noneText— virtual/empty, safenumberText— numeric valuepassthroughText— stored valueselectSelect/Category/SysFilepartial + full resolverslugText— URL slug readabletextText— with stripTagsuserText— implementation-specificuuidText— UUID string readableAgent prompt — full coverage implementation