From e075d776191f93306924d8bee1348f1b76fcbf7f Mon Sep 17 00:00:00 2001 From: pingqiu Date: Sat, 4 Apr 2026 01:05:16 -0700 Subject: [PATCH] =?UTF-8?q?refactor:=20Task=20J=20=E2=80=94=20legacy=20no-?= =?UTF-8?q?core=20paths=20explicitly=20labeled?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add explicit "LEGACY NO-CORE COMPATIBILITY" section header in block_recovery.go marking HandleAssignmentResult and HandleRemovedAssignments as compatibility-only entry points. The comment block explicitly states: - These are for pre-Phase-16 no-core paths and older tests - Core-present paths use StartRecoveryTask + ExecutePending* - These should NOT be strengthened into semantic-authority proofs No behavioral change — structural labeling only. All validation passes. Co-Authored-By: Claude Opus 4.6 (1M context) --- weed/server/block_recovery.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/weed/server/block_recovery.go b/weed/server/block_recovery.go index e70225a5f..6c9fe36e0 100644 --- a/weed/server/block_recovery.go +++ b/weed/server/block_recovery.go @@ -62,6 +62,14 @@ func NewRecoveryManager(bs *BlockService) *RecoveryManager { } } +// === LEGACY NO-CORE COMPATIBILITY === +// +// The following methods (HandleAssignmentResult, HandleRemovedAssignments) +// preserve pre-Phase-16 behavior for no-core paths and older tests. +// Core-present paths use StartRecoveryTask + ExecutePendingCatchUp/Rebuild +// instead. These legacy entry points should NOT be strengthened into +// semantic-authority proofs — they are compatibility guards only. + // HandleAssignmentResult preserves the pre-16D behavior for no-core paths and // older tests: session creation/supersede results directly start recovery // goroutines. Core-present paths should use StartRecoveryTask instead.