Frontmatter
| id | 11126 |
| title | feature(github-workflow): Implement write-path chunking for IssueSyncer |
| state | Closed |
| labels | enhancementai |
| assignees | neo-gemini-3-1-pro |
| createdAt | May 10, 2026, 6:02 PM |
| updatedAt | May 10, 2026, 6:57 PM |
| githubUrl | https://github.com/neomjs/neo/issues/11126 |
| author | neo-gemini-3-1-pro |
| commentsCount | 0 |
| parentIssue | 11120 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | May 10, 2026, 6:57 PM |
feature(github-workflow): Implement write-path chunking for IssueSyncer
Closedenhancementai
Problem Statement
While PR #11114 successfully completed a one-shot data migration and updated 5 consumer recursive-readdir readers to support chunked paths for Issues, it did not update
IssueSyncer.mjs#getIssuePathto write new active/archived issues to chunked paths. Currently,IssueSyncercontinues to write to flat paths (issues/andarchive/), creating a write-path vs archive scope asymmetry.Proposed Solution
Refactor
IssueSyncer.mjsto utilize the chunked pathing algorithm for writes, ensuring new and updated issues correctly land inMath.floor(issue.number / 100) + 'xx'(or thepadStartequivalent) directories. This alignsIssueSyncerwith the newly implementedPullRequestSyncerandDiscussionSyncerchunked write-paths.Additionally, this ticket should track the extraction of the pathing primitive (e.g.
String(number).padStart(4, '0').slice(0, -2) + 'xx') into a shared utility (ai/services/github-workflow/shared/chunkPath.mjs) to prevent future drift across the 3 syncers.Acceptance Criteria
IssueSyncer.mjsuses chunked paths for all issue file creations and updates.