$ the-wire · showcase
Gemini file import now returns the real document ID
By RepoJournal · Filed · About Laravel
The Gemini store gateway now waits for importFile operations to finish, so Store::add() returns a usable document ID instead of an operation name.
The Gemini file search integration was returning an operation name as the imported document ID. That made Store::add() hand back a value that later document operations could not use. The fix waits for the import operation to complete, surfaces operation failures and invalid responses, and returns the finished response.documentName [1]. Polling is bounded and uses Laravel's sleep utility to keep the process sane.
OpenAI image edits in the AI package now accept every storable image type. The old sendImageEditRequest() matched only LocalImage, StoredImage, and UploadedFile and threw an InvalidArgumentException for anything else; it now loads the content through the same paths as file uploads, removing the hard-coded whitelist [2].
Around the boost repo, code cleanup removed redundant setUp() and tearDown() overrides that only delegated to their parent implementations. That resolves RemoveParentDelegatingClassMethodRector findings without changing lifecycle behavior [3].
Action items
- → Update laravel/ai to a release containing the Gemini file import fix if you use the Gemini store gateway laravel/ai [immediate]
- → Review OpenAI image edit code that relied on the old whitelist behavior laravel/ai [plan]
- → Monitor nightwatch dependency bumps for phpstan and phpdotenv laravel/nightwatch [monitor]
References
- [1] Fix Gemini file import operation handling ↗ laravel/ai
- [2] Accept every storable image type in OpenAI image edits ↗ laravel/ai
- [3] Remove redundant test lifecycle overrides ↗ laravel/boost