agent-board-runner 0.1.6 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.js CHANGED
@@ -3341,12 +3341,25 @@ async function restartCardSession(supabase, config, card) {
3341
3341
  }
3342
3342
 
3343
3343
  // src/deploy.ts
3344
+ var deploysInFlight = /* @__PURE__ */ new Set();
3344
3345
  async function handleDeployRequested(supabase, config, project) {
3345
3346
  const registered = config.registeredProjects.find((candidate) => candidate.id === project.id);
3346
3347
  if (!registered) {
3347
3348
  logger.runner.warn("DEPLOY", `Ignoring deploy request: project ${project.id} is not registered on this runner.`);
3348
3349
  return;
3349
3350
  }
3351
+ if (deploysInFlight.has(project.id)) {
3352
+ logger.runner.info("DEPLOY", `Deploy already in progress for project ${project.id}, skipping duplicate trigger.`);
3353
+ return;
3354
+ }
3355
+ deploysInFlight.add(project.id);
3356
+ try {
3357
+ await runDeploy(supabase, config, project);
3358
+ } finally {
3359
+ deploysInFlight.delete(project.id);
3360
+ }
3361
+ }
3362
+ async function runDeploy(supabase, config, project) {
3350
3363
  const allCards = await listCardsInColumn(supabase, project.id, "deploy");
3351
3364
  const cards = allCards.filter((card) => card.assigned_user_id === config.ownerUserId);
3352
3365
  if (cards.length === 0) {
package/dist/index.js CHANGED
@@ -3280,12 +3280,25 @@ async function restartCardSession(supabase, config, card) {
3280
3280
  }
3281
3281
 
3282
3282
  // src/deploy.ts
3283
+ var deploysInFlight = /* @__PURE__ */ new Set();
3283
3284
  async function handleDeployRequested(supabase, config, project) {
3284
3285
  const registered = config.registeredProjects.find((candidate) => candidate.id === project.id);
3285
3286
  if (!registered) {
3286
3287
  logger.runner.warn("DEPLOY", `Ignoring deploy request: project ${project.id} is not registered on this runner.`);
3287
3288
  return;
3288
3289
  }
3290
+ if (deploysInFlight.has(project.id)) {
3291
+ logger.runner.info("DEPLOY", `Deploy already in progress for project ${project.id}, skipping duplicate trigger.`);
3292
+ return;
3293
+ }
3294
+ deploysInFlight.add(project.id);
3295
+ try {
3296
+ await runDeploy(supabase, config, project);
3297
+ } finally {
3298
+ deploysInFlight.delete(project.id);
3299
+ }
3300
+ }
3301
+ async function runDeploy(supabase, config, project) {
3289
3302
  const allCards = await listCardsInColumn(supabase, project.id, "deploy");
3290
3303
  const cards = allCards.filter((card) => card.assigned_user_id === config.ownerUserId);
3291
3304
  if (cards.length === 0) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-board-runner",
3
- "version": "0.1.6",
3
+ "version": "0.1.7",
4
4
  "description": "Local runner for Agent Board — signs in with your own Supabase account (no shared secrets) and drives Claude Code against repos under your local repos root.",
5
5
  "type": "module",
6
6
  "bin": {