f149eff5bc
LiveArtifactRepository uses a hot subscription that does not replay history, so its cache was always empty when verifyProduces ran immediately after emit. Fix by reading directly from EventStore (synchronous) instead of the repository. Also emit ArtifactCreatedEvent for non-llmEmitted produces slots after stage validation passes, and fix tool parameter decoding to use JsonPrimitive.content so escape sequences like \n are resolved rather than passed as literal backslash-n.