BS-JD-401 - Static extension API v0 #27
Labels
No Label
area:animation
area:assets
area:audio
area:brushes
area:build-release
area:extensions
area:governance
area:hierarchy
area:inspector
area:navigation
area:operators
area:physics
area:project-ux
area:quality
area:rendering
area:runtime
area:scene-io
area:terrain
area:viewport
priority:P0
priority:P1
priority:P2
priority:P3
roadmap:jackdaw
roadmap:production
type:architecture
type:docs
type:epic
type:feature
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: Falling-Metal-Interactive/Blacksite#27
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Formalize a stable, statically linked extension API before attempting dynamic loading.
Why
Blacksite already has editor plugin hooks; a deliberate static API gives future-game extensions a stable path without dylib complexity.
Implementation notes
Acceptance criteria
Tests/docs
Compile-time example crate or fixture. Update ADR/docs/editor architecture.
Rbanh referenced this issue2026-07-11 18:49:46 -04:00
Expanded component lifecycle foundation
The v0 static extension API must register real authoring-component lifecycle behavior, not metadata/inspector labels alone. The foundation should provide:
ActorKindas a derived compatibility/presentation hint; component requirements/conflicts define validity and permit useful composition such as renderer + light.#51 is the first major consumer: static/skinned renderers and their material bindings must participate through this lifecycle. Dynamic-library loading remains out of scope for v0.
Registry-driven component lifecycle implemented locally
The component foundation requested in the expanded scope is now dogfooded by static/skinned renderers and material bindings:
ActorKindreduced to a derived compatibility/presentation hint;The live composition screenshot path, ADR 0034, extensibility guide, and test matrix are recorded in #51 comment 865. This remains a local unpublished implementation; #27 stays open for its broader panel/command/tool API publication gate.