Checkpoint: headless JSON architecture documented + cleanup (Stufe 1+2)

Restore point before Stufe 3 (central resolver-service refactoring).

Includes this session's work:
- Success Story (usecase) rebuild: new fields/tabs, UsecaseSerializer,
  thin List/Show renderers, MM relations, inline content elements.
- vitec_columns content block (two-column layout with per-item content)
  incl. unified header section; special-cased JSON resolution.
- Container per-column flex (items[].config align/justify) + gap on parent.
- Unified header section across CEs/plugins/containers; header fields in JSON.
- ISO-style architecture spec: Documentation/Headless-JSON-Architecture.md.
- Cleanup: removed local scratch + verified .bak backups.
- Fixes: B-6 (undefined thumbnail variable in Downloadcardcollection image
  resolver), B-7 (unsatisfiable legacy CType OR branch in Downloadcard/Datasheets).

Rollback: git reset --hard snapshot-2026-07-09-pre-stufe3

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
o-rasche
2026-07-09 10:01:56 +02:00
parent c6759186cb
commit bb7c03235d
237 changed files with 6698 additions and 1749 deletions

30
fix-asset-perms.sh Normal file
View File

@@ -0,0 +1,30 @@
#!/bin/bash
# =============================================================================
# VITEC — fix backend asset permissions after a deploy via the Windows sshfs mount
# -----------------------------------------------------------------------------
# sshfs-win (WinFsp) writes newly deployed files with mode 770 (no other-read).
# The webserver runs as "other" (suexec) -> assets under Resources/Public and
# public/_assets return HTTP 403 (backend icons / CSS / JS missing).
#
# chmod OVER the Windows mount does NOT change the real server mode, so this
# has to run ON THE SERVER, via real SSH, as the site owner (vitecevo).
#
# Usage (from the live/ project root on the server):
# bash fix-asset-perms.sh
# =============================================================================
set -u
cd "$(dirname "$0")" || exit 1
echo "[perms] Project root: $(pwd)"
echo "[perms] Setting files 644 / directories 755 under Resources/Public + _assets ..."
find public/_assets packages/vitec/Resources/Public -type f -exec chmod 644 {} \; 2>/dev/null
find public/_assets packages/vitec/Resources/Public -type d -exec chmod 755 {} \; 2>/dev/null
echo "[perms] Flushing TYPO3 caches ..."
if [ -x vendor/bin/typo3 ]; then
vendor/bin/typo3 cache:flush
else
echo "[perms] (vendor/bin/typo3 not found — skip cache flush)"
fi
echo "[perms] Done."