aboutsummaryrefslogtreecommitdiff
path: root/adr/ADR-0007-safe-sdl-opengl.md
diff options
context:
space:
mode:
authorValentin Popov <valentin@popov.link>2026-06-22 15:12:57 +0300
committerValentin Popov <valentin@popov.link>2026-06-22 15:12:57 +0300
commitf69c893a401730339ad72610c573e20282573045 (patch)
tree8db67167f966463f979aa5417714ed23b333c3d1 /adr/ADR-0007-safe-sdl-opengl.md
parent543672796161e1ab500ed446611d391a451add09 (diff)
downloadfparkan-f69c893a401730339ad72610c573e20282573045.tar.xz
fparkan-f69c893a401730339ad72610c573e20282573045.zip
fix: harden path lookup and mark gl backend gap
Diffstat (limited to 'adr/ADR-0007-safe-sdl-opengl.md')
-rw-r--r--adr/ADR-0007-safe-sdl-opengl.md23
1 files changed, 22 insertions, 1 deletions
diff --git a/adr/ADR-0007-safe-sdl-opengl.md b/adr/ADR-0007-safe-sdl-opengl.md
index f82c424..01e35e4 100644
--- a/adr/ADR-0007-safe-sdl-opengl.md
+++ b/adr/ADR-0007-safe-sdl-opengl.md
@@ -2,4 +2,25 @@
Status: provisional
-Workspace-owned code forbids `unsafe`. SDL/OpenGL adapters must use maintained external crates behind a safe project API. The current repository still contains legacy demo code scheduled for replacement; new adapter crates are placeholders until a fully audited safe facade is selected and proven on all target profiles.
+Workspace-owned code forbids `unsafe`. SDL/OpenGL adapters must use maintained
+external crates behind a safe project API; local Objective-C/CGL/SDL/OpenGL FFI
+inside FParkan is not an acceptable implementation strategy.
+
+The current adapter crates are safe boundary stubs. They compile the intended
+ports and deterministic command contracts, but they do not create SDL windows,
+GL contexts, GPU resources, shaders, draw calls, swapchains, or presents. They
+must not be treated as backend readiness evidence.
+
+To close the macOS backend requirement, choose and vendor/lock a maintained
+safe facade stack, then implement:
+
+- SDL event source, window creation, GL context lifecycle, drawable size and
+ present;
+- GL shader compile/link, buffer/texture upload, render state, draw calls and
+ diagnostics;
+- game/viewer composition roots using those adapters;
+- hidden-window/offscreen macOS smoke tests and licensed local model/terrain
+ frame captures.
+
+Until those are implemented, Desktop GL evidence may document external probes
+only; it does not satisfy the permanent adapter requirement.