diff --git a/libs/CheatEngine.Client.Abstractions/Tables/ITableClient.cs b/libs/CheatEngine.Client.Abstractions/Tables/ITableClient.cs
index 3feafd8c..b9e38971 100644
--- a/libs/CheatEngine.Client.Abstractions/Tables/ITableClient.cs
+++ b/libs/CheatEngine.Client.Abstractions/Tables/ITableClient.cs
@@ -507,7 +507,7 @@ public bool TrySetActive(MemoryRecordId id, bool isActive, out MemoryRecordSnaps
public MemoryRecordSnapshot SetActive(MemoryRecordId id, bool isActive,
CancellationToken cancellationToken = default);
- /// Moves one record under a parent, or passes to restore it to the root.
+ /// Requests a parent relationship for one record and copies its resulting state.
/// The identifier of the record to move.
/// The identifier of the new parent, or for the root.
/// The copied moved record on success; otherwise the default value.
@@ -521,6 +521,11 @@ public MemoryRecordSnapshot SetActive(MemoryRecordId id, bool isActive,
/// , and an absent record or parent is
/// ; all of them report .
/// The refusals described under apply too.
+ /// Cheat Engine 7.7 exposes no supported operation to detach an existing child to the root. SDK builds with
+ /// verified parent assignment refuse that request with
+ /// and ; a record already at the root succeeds without a setter.
+ /// Older packaged SDK builds can report success for an ignored assignment. These checks require the corrected
+ /// SDK implementation; changing the Client's failure mapping alone does not add them.
///
/// The activation has ended.
///
@@ -529,7 +534,7 @@ public MemoryRecordSnapshot SetActive(MemoryRecordId id, bool isActive,
public bool TrySetParent(MemoryRecordId childId, MemoryRecordId? parentId, out MemoryRecordSnapshot record,
out CheatEngineFailure failure, CancellationToken cancellationToken = default);
- /// Moves one record under a parent, or restores it to the root, and returns its copied post-change state.
+ /// Requests a parent relationship and returns the copied record; see for host limitations.
/// The identifier of the record to move.
/// The identifier of the new parent, or for the root.
/// Observed before the move is dispatched to Cheat Engine's main thread.
diff --git a/libs/CheatEngine.Client.Core/Domains/TableMapping.cs b/libs/CheatEngine.Client.Core/Domains/TableMapping.cs
index 334c9a11..b8aa6e7a 100644
--- a/libs/CheatEngine.Client.Core/Domains/TableMapping.cs
+++ b/libs/CheatEngine.Client.Core/Domains/TableMapping.cs
@@ -360,7 +360,7 @@ private static string Describe(TableRecordMutationOutcome outcome)
return outcome.Problem switch
{
MemoryRecordMutationProblem.AddressListUnavailable => AddressListUnavailableMessage,
- MemoryRecordMutationProblem.GlobalUnavailable => "A Cheat Engine Address List function is unavailable.",
+ MemoryRecordMutationProblem.GlobalUnavailable => "The required Cheat Engine Address List operation is unavailable.",
MemoryRecordMutationProblem.RecordNotFound => RecordNotFoundMessage,
MemoryRecordMutationProblem.ParentNotFound =>
"The requested parent Cheat Engine memory record was not found.",