Fix: Add temporary ID resolution to update_project handler #12805
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes issue where
update_projectcould not reference issues created with temporary IDs in the same workflow run.Problem
The
update_projectsafe output handler did not support temporary IDs in thecontent_numberfield. When agents created issues with temporary IDs (e.g.,aw_dep20260130a) and then tried to add them to a project board, the handler rejected the temporary ID because it only validatedcontent_numberas strictly numeric values.Root Cause
update_project.cjsonly supported temporary project IDs, not temporary issue IDsresolveIssueNumberutilitySolution
Code Changes:
update_project.cjs:loadTemporaryIdMap,resolveIssueNumber)temporaryIdMapparameter to handler functionsafe_output_project_handler_manager.cjs:update_project.test.cjs:Testing
Architecture Context
Workflows with
project:frontmatter field generate two handler manager steps:update_project,create_project_status_update, etc. withGH_AW_PROJECT_GITHUB_TOKENGITHUB_TOKENThe project handler manager now loads the temporary ID map from the environment (populated by the main handler manager from a previous run or deferred messages) and passes it to handlers for resolution.
Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.