fix: preserve install markers for Codex plugin roots#3110
fix: preserve install markers for Codex plugin roots#3110dongyeop-cmyk wants to merge 2 commits into
Conversation
Greptile SummaryThis PR preserves install markers for marketplace installs that use a nested
Confidence Score: 4/5This PR needs a small compile fix before merging. A single contained build-breaking scope error remains in the install command marker write. The marker-path and SQLite migration changes are narrow and covered by tests.
What T-Rex did
Important Files Changed
Sequence Diagram%%{init: {'theme': 'neutral'}}%%
sequenceDiagram
participant Installer as runInstallCommandInner
participant Runtime as setup-runtime
participant Cache as Versioned cache root
participant Market as Marketplace root
Installer->>Runtime: ensureBun / ensureUv
Installer->>Cache: installPluginDependencies(cacheDir)
Installer->>Runtime: writeInstallMarker(cacheDir, versions)
Runtime->>Cache: .install-version
alt marketplace plugin/package.json exists
Installer->>Runtime: writeInstallMarker(marketplaceDirectory(), versions)
Runtime->>Market: resolve to plugin/.install-version
end
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
sequenceDiagram
participant Installer as runInstallCommandInner
participant Runtime as setup-runtime
participant Cache as Versioned cache root
participant Market as Marketplace root
Installer->>Runtime: ensureBun / ensureUv
Installer->>Cache: installPluginDependencies(cacheDir)
Installer->>Runtime: writeInstallMarker(cacheDir, versions)
Runtime->>Cache: .install-version
alt marketplace plugin/package.json exists
Installer->>Runtime: writeInstallMarker(marketplaceDirectory(), versions)
Runtime->>Market: resolve to plugin/.install-version
end
Reviews (2): Last reviewed commit: "fix: tolerate pre-platform-source sessio..." | Re-trigger Greptile |
|
T-Rex pricing update — T-Rex was free through June 2026. Effective July 1, 2026, T-Rex adds 2 credits on top of the standard 1-credit review (3 total). T-Rex settings |
| await runTasks(tasks); | ||
|
|
||
| if (installedBunVersion && installedUvVersion) { | ||
| writeInstallMarker(cacheDir, version, installedBunVersion, installedUvVersion); |
There was a problem hiding this comment.
Restore cacheDir scope
cacheDir is declared inside the runtime setup task at line 1597, so this post-runTasks marker write is outside its block scope and the TypeScript build fails with Cannot find name 'cacheDir'. Hoist const cacheDir = pluginCacheDirectory(version) before the tasks are created, or recompute it here before calling writeInstallMarker.
Artifacts
Repro: project typecheck attempt output showing missing type definitions before source checking
- Keeps the command output available without making the summary code-heavy.
Repro: narrow TypeScript compile output showing Cannot find name cacheDir at install.ts line 1642
- Keeps the command output available without making the summary code-heavy.
Summary
plugin/roots so marketplace installs and Codex-installed plugin roots share the same marker pathVerification