Frontmatter
| id | 9165 |
| title | [Grid] Fix Runtime Buffer Updates Breaking Row/Cell Pooling |
| state | Closed |
| labels | bugairegressionarchitecture |
| assignees | tobiu |
| createdAt | Feb 15, 2026, 4:32 AM |
| updatedAt | Feb 15, 2026, 2:27 PM |
| githubUrl | https://github.com/neomjs/neo/issues/9165 |
| author | tobiu |
| commentsCount | 0 |
| parentIssue | null |
| subIssues | 9167 [Grid] Fix Runtime Buffer Updates (Phase 1: Functional) 9168 [Grid] Optimize Runtime Buffer Updates (Phase 2: Performance) |
| subIssuesCompleted | 2 |
| subIssuesTotal | 2 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Feb 15, 2026, 2:27 PM |
[Grid] Fix Runtime Buffer Updates Breaking Row/Cell Pooling
tobiu assigned to @tobiu on Feb 15, 2026, 4:47 AM
tobiu cross-referenced by #9167 on Feb 15, 2026, 1:00 PM
tobiu cross-referenced by #9168 on Feb 15, 2026, 1:00 PM
tobiu added sub-issue #9167 on Feb 15, 2026, 1:01 PM
tobiu added sub-issue #9168 on Feb 15, 2026, 1:01 PM
tobiu closed this issue on Feb 15, 2026, 2:27 PM
Runtime changes to
bufferRowRangeandbufferColumnRangecurrently break the grid rendering (blank grid or missing cells).Root Cause: The Row and Cell pooling logic (Epic #8964) initializes fixed pools based on the initial configuration.
bufferRowRangeincreases the requireditemscount. ThecreateRowPoollogic needs to verify and expand the pool dynamically.bufferColumnRangerecalculatescellPoolSize. ExistingNeo.grid.Rowinstances rely on a fixedpooledCellsarray size initialized during their first render. They need to be forced to resize this pool to align with the newcellPoolSize.Proposed Fix:
afterSetBufferRowRangetriggers pool expansion inNeo.grid.Body.afterSetBufferColumnRangetriggers a full re-render of all rows to resize their cell pools.