From ce70c0df6a7c70acf565469dd16b780130f61aef Mon Sep 17 00:00:00 2001 From: crazywhalecc Date: Mon, 18 May 2026 10:54:32 +0800 Subject: [PATCH] Register artifacts dynamically if not already initialized --- src/StaticPHP/Registry/ArtifactLoader.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/StaticPHP/Registry/ArtifactLoader.php b/src/StaticPHP/Registry/ArtifactLoader.php index ed4ef1e7..ecbeccfa 100644 --- a/src/StaticPHP/Registry/ArtifactLoader.php +++ b/src/StaticPHP/Registry/ArtifactLoader.php @@ -36,6 +36,13 @@ class ArtifactLoader public static function getArtifactInstance(string $artifact_name): ?Artifact { self::initArtifactInstances(); + if (!isset(self::$artifacts[$artifact_name])) { + // Artifact may have been registered after initArtifactInstances() ran (e.g., from a vendor registry) + $config = ArtifactConfig::get($artifact_name); + if ($config !== null) { + self::$artifacts[$artifact_name] = new Artifact($artifact_name, $config); + } + } return self::$artifacts[$artifact_name] ?? null; }