| ... | ... | @@ -945,10 +945,11 @@ const makeOpenCodeRuntime = Effect.gen(function* () { |
| 945 | 945 | ...commandContext, |
| 946 | 946 | }).pipe(Effect.exit); |
| 947 | 947 | |
| 948 | | // First attempt — run all inventory commands in parallel. |
| 948 | // Every OpenCode CLI command opens the same shared SQLite database. Running them |
| 949 | // concurrently causes "database is locked" failures, so run them one at a time. |
| 949 | 950 | const [initialModelsResult, initialAgentsResult, initialSkillsResult] = yield* Effect.all( |
| 950 | 951 | [runModelsCli(), runAgentsCli(), runSkillsCli()], |
| 951 | | { concurrency: "unbounded" }, |
| 952 | { concurrency: 1 }, |
| 952 | 953 | ); |
| 953 | 954 | let modelsResult = initialModelsResult; |
| 954 | 955 | let agentsResult = initialAgentsResult; |
| ... | ... | @@ -966,7 +967,7 @@ const makeOpenCodeRuntime = Effect.gen(function* () { |
| 966 | 967 | needsAgentsRetry ? runAgentsCli() : Effect.succeed(agentsResult), |
| 967 | 968 | needsSkillsRetry ? runSkillsCli() : Effect.succeed(skillsResult), |
| 968 | 969 | ], |
| 969 | | { concurrency: "unbounded" }, |
| 970 | { concurrency: 1 }, |
| 970 | 971 | ); |
| 971 | 972 | modelsResult = m2; |
| 972 | 973 | agentsResult = a2; |