{
 "flight": {
  "id": 42713,
  "agent": "github-copilot",
  "state": "merged",
  "title": "Fixes #86 Add validation for empty logical IDs to prevent deployment corruption",
  "number": 394,
  "source": "aidev",
  "commits": 6,
  "debrief": null,
  "outcome": "merged_clean",
  "signals": [
   "aidev:Copilot"
  ],
  "index_ok": false,
  "additions": 398,
  "closed_at": "2025-07-07T19:50:13+00:00",
  "deletions": 127,
  "merged_at": "2025-07-07T19:50:13+00:00",
  "opened_at": "2025-07-03T16:33:39+00:00",
  "task_type": "fix",
  "body_chars": 1958,
  "confidence": "dataset",
  "updated_at": "2026-11-03T20:02:51.719893+00:00",
  "enriched_at": null,
  "body_excerpt": "## Problem\n\nWhen an artifact has an empty logical ID in the platform file (e.g., `\"logicalId\": \"\"`), the `_replace_logical_ids` method causes deployment failures by corrupting base64 encoded content. This happens because the method checks `if logical_id in raw_file:` - when `logical_id` is an empty ",
  "review_count": 5,
  "files_changed": 11,
  "hours_to_merge": 99.28,
  "metrics_source": "aidev_commit_sum",
  "change_requests": 0,
  "og_generated_at": null,
  "reviewer_excerpt": "While this works, its occurring after the publish workspace folders step. We should be performing metadata validations before any publish occurs",
  "review_comment_count": 0,
  "reviewer_excerpt_url": "https://github.com/microsoft/fabric-cicd/pull/394#issuecomment-3033083014"
 },
 "repo": {
  "name": "fabric-cicd",
  "owner": "microsoft",
  "stars": 344,
  "license": "MIT",
  "full_name": "microsoft/fabric-cicd",
  "primary_language": "Python"
 },
 "author": {
  "login": "Copilot",
  "name": null,
  "github_profile": "https://github.com/Copilot",
  "page": null
 },
 "claim": null,
 "events": [
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "copilot-swe-agent[bot]"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "copilot-swe-agent[bot]"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "copilot-swe-agent[bot]"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "copilot-swe-agent[bot]"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "copilot-swe-agent[bot]"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "KieferSheldon"
  },
  {
   "at": null,
   "url": null,
   "kind": "reviewed",
   "actor_login": null
  },
  {
   "at": null,
   "url": null,
   "kind": "reviewed",
   "actor_login": null
  }
 ],
 "related": [
  {
   "agent": "github-copilot",
   "state": "merged",
   "title": "Fixes #388 - Rename ItemDisplayNameAlreadyInUse",
   "number": 389,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 2,
   "deletions": 2,
   "merged_at": "2025-07-02T21:13:09+00:00",
   "opened_at": "2025-07-02T18:34:01+00:00",
   "task_type": "fix",
   "files_changed": 3,
   "hours_to_merge": 2.65
  },
  {
   "agent": "github-copilot",
   "state": "merged",
   "title": "Resolves #299 - Remove Max Retry Limit",
   "number": 386,
   "outcome": "merged_after_rework",
   "index_ok": true,
   "additions": 345,
   "deletions": 283,
   "merged_at": "2025-07-07T17:19:11+00:00",
   "opened_at": "2025-07-02T15:22:04+00:00",
   "task_type": "fix",
   "files_changed": 11,
   "hours_to_merge": 121.95
  },
  {
   "agent": "github-copilot",
   "state": "merged",
   "title": "Resolves #376 Fix documentation basic example to include environment parameter for parameter replacement",
   "number": 383,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 81,
   "deletions": 2,
   "merged_at": "2025-07-02T18:04:46+00:00",
   "opened_at": "2025-07-01T20:38:38+00:00",
   "task_type": "fix",
   "files_changed": 5,
   "hours_to_merge": 21.44
  }
 ],
 "pr_url": "https://github.com/microsoft/fabric-cicd/pull/394",
 "page": "https://agentriders.com/logs/microsoft/fabric-cicd/394/"
}