Cesivi Server - Known Limitations (Reference)¶
Home → Documentation → Reference → Known Limitations
Main Documentation¶
The authoritative Known Limitations documentation has been consolidated into a single location:
→ _docs/KNOWN_LIMITATIONS.md ← Start here!
This document now contains only supplementary technical details that support the main guide.
Supplementary Technical Details¶
Site Column Persistence (Field/View/ContentType Updates)¶
Full documentation: _docs/KNOWN_LIMITATIONS.md
✅ FIXED (PLAN-998, v268)¶
Site column updates now persist correctly. SetProperty and Field.Update() both detect site columns
(ParentList == null, ParentWeb != null) and call SaveWebFieldAsync to persist to storage.
Test: SiteColumnUpdate_Lifecycle_PersistsChanges — PASSES (8/8 CsomPersistenceLifecycleTests ✅)
Previously Affected (Now Fixed)¶
Previously, this pattern failed for site columns:
var field = web.Fields.GetByInternalNameOrTitle("Title");
field.Description = "New description";
field.Update(); // Change was NOT persisted to disk
ExecuteQuery();
// After reconnecting, the change was lost
Root Cause (fixed):
- SetProperty and Field.Update() both had if (parentList != null) guards that excluded site columns
- Fixed by adding else if (parentWeb != null) branches that call SaveWebFieldAsync
- CsomProcessor.PropertyProcessing.cs + CsomProcessor.MethodProcessing.Handling2.cs
Collection Reload After Delete (Technical Details)¶
Full documentation: _docs/KNOWN_LIMITATIONS.md
Folder Deletion - RESOLVED (2025-12-13)¶
Folder deletion + collection reload now works correctly.
Fix Applied (Commit de4dbcfd):
1. SPFolderCollection.Add() now sets ParentFolderObject and ParentList on new folders
2. CsomProcessor uses direct parent references for cache invalidation
3. ObjectPathResolver.RemoveFolderFromCache() searches SPFolder and SPList instances
File Delete + Collection Reload (CSOM SDK Limitation)¶
Test: Folder_DeleteFileInFolder_ShouldSucceed
Error: CollectionNotInitializedException: The collection has not been initialized
Root Cause: - Server infrastructure complete - parent references set, direct removal + cache invalidation implemented - Server returns correct data - file is removed from storage and collection - CSOM SDK doesn't mark collection as "initialized" after reload - SDK's internal property tracking metadata not set correctly
Why Server-Side Fix Not Possible: - CSOM SDK maintains client-side metadata about which properties/collections are "loaded" - Server returns data correctly but SDK metadata flags aren't updated - Fixing requires implementing SDK's internal property tracking protocol (20-40h effort)
Impact: 1/340 CSOM tests (0.3%)
File Version Deletion (Storage Path Mismatch)¶
Full documentation: _docs/KNOWN_LIMITATIONS.md
Storage Path Mismatch:
- Versions are saved at: RootWeb/Libraries/{ListName}/Files/.versions/{FileName}/{VersionID}.version.json
- Versions are loaded at: WebApplications/Default/SiteCollections/RootSite/RootWeb/Libraries/{ListName}/Files/.versions/...
- These paths don't match, causing GetFileVersionsAsync() to return 0 versions
Infrastructure in Place:
- RemoveVersionFromCache() method added
- Cache invalidation call in version delete handler
- Helper methods for removing versions from collections
- BLOCKED: Cannot work until path mismatch is resolved
Impact: 1/340 CSOM tests (0.3%)
Investigation Documentation¶
CSOM Collection Reload Investigation: - METADATA_PROTOCOL_PLAN.md - Implementation plan - METADATA_PROTOCOL_SESSION1_2025_12_13.md - Diagnostic logging + Phase 2 Option A - METADATA_PROTOCOL_SESSION2_2025_12_13.md - Cache invalidation implementation - METADATA_PROTOCOL_ASSESSMENT.md - Final assessment
Key Commits:
- 9191d5fd: feat: Add diagnostic logging + Phase 2 Option A attempt
- 919f1f57: feat: Add ObjectPathResolver cache invalidation (Phase 2 Option C)
- de4dbcfd: fix: Folder deletion + collection reload working
See Also¶
Primary Documentation: - _docs/KNOWN_LIMITATIONS.md - Main known limitations guide (START HERE) - _docs/TROUBLESHOOTING.md - General troubleshooting for issues - ERROR_CATALOG.md - Detailed error patterns
Document Version: 2.0 (Supplementary) Last Updated: 2026-02-04 (PLAN-228) Note: This is a supplementary document. See _docs/KNOWN_LIMITATIONS.md for the main guide.