dirstate: use `dirstate.change_files` to scope the change in `add`
This is the way.
--- a/mercurial/commands.py Wed Feb 15 11:51:58 2023 +0100
+++ b/mercurial/commands.py Tue Dec 13 12:57:38 2022 +0100
@@ -252,7 +252,7 @@
Returns 0 if all files are successfully added.
"""
- with repo.wlock():
+ with repo.wlock(), repo.dirstate.changing_files(repo):
m = scmutil.match(repo[None], pats, pycompat.byteskwargs(opts))
uipathfn = scmutil.getuipathfn(repo, legacyrelativevalue=True)
rejected = cmdutil.add(ui, repo, m, b"", uipathfn, False, **opts)