fix(watch): drop proposed_folder_auto; a recorded folder is never re-decided
The extra bookkeeping field showed up in Obsidian's Properties panel as a second 'proposed folder' row, which was confusing. Simpler rule replaces it: once proposed_folder is set it is never changed. The owner edits it if they disagree; deleting the field asks for a fresh suggestion.
This commit is contained in:
@@ -326,27 +326,27 @@ def main() -> int:
|
||||
except OSError:
|
||||
pass
|
||||
|
||||
# ---- watcher: the owner's hand-picked folder must survive ----------
|
||||
from sorter.watch import user_selected_folder
|
||||
# ---- watcher: a recorded folder is never re-decided ----------------
|
||||
from sorter.watch import existing_folder
|
||||
from sorter.models import Note as _Note
|
||||
|
||||
def _n(chosen, auto):
|
||||
def _n(chosen):
|
||||
return _Note(path="x", rel_path="010 inbox/x.md", filename="x.md",
|
||||
stem="x", title="x", note_type="note", status=None,
|
||||
fm={"proposed_folder": chosen, "proposed_folder_auto": auto})
|
||||
fm={"proposed_folder": chosen})
|
||||
|
||||
if user_selected_folder(_n("300 areas/A", "200 projects/B")) == "300 areas/A":
|
||||
print("PASS guard: a hand-edited folder is treated as the owner's choice")
|
||||
if existing_folder(_n("300 areas/A")) == "300 areas/A":
|
||||
print("PASS guard: a recorded folder is treated as already decided")
|
||||
passed += 1
|
||||
else:
|
||||
details.append("FAIL guard: hand-edited folder not detected")
|
||||
details.append("FAIL guard: recorded folder not detected")
|
||||
failed += 1
|
||||
|
||||
if user_selected_folder(_n("200 projects/B", "200 projects/B")) is None:
|
||||
print("PASS guard: an untouched proposal is not treated as customised")
|
||||
if existing_folder(_n("")) is None:
|
||||
print("PASS guard: no recorded folder means the watcher may suggest one")
|
||||
passed += 1
|
||||
else:
|
||||
details.append("FAIL guard: untouched proposal wrongly seen as customised")
|
||||
details.append("FAIL guard: empty folder wrongly treated as set")
|
||||
failed += 1
|
||||
|
||||
# ---- inbox cleared --------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user