Verified by grepping every call site rather than only the three named: pipeline-executor.ts:499 and :591 and deliver.ts:37 all pass getOwnerHomeDir(email) now, and no caller anywhere passes an identity where a path is expected. Gates unchanged, 97 tests, 259 assertions. The "@param home — NOT an email" comment is the right residue: the compiler cannot distinguish the two strings and never will, so the warning has to live where a fourth caller would read it. Closes everything reviewable without a live member turn. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
21 lines
1.1 KiB
Markdown
21 lines
1.1 KiB
Markdown
# 32 — all three callers fixed, nothing left passing an email
|
|
|
|
Commit read: `1575df3f`. Verified by grepping every call site rather than the three I named:
|
|
|
|
```
|
|
pipeline-executor.ts:499 resolveBaseCwd(getOwnerHomeDir(email), cwdRelative)
|
|
pipeline-executor.ts:591 resolveBaseCwd(getOwnerHomeDir(email), cwd)
|
|
deliver.ts:37 resolveBaseCwd(getOwnerHomeDir(user.email), target.cwd ?? undefined)
|
|
```
|
|
|
|
No caller anywhere still passes an identity where a path is expected. Gates unchanged, 97 tests, 259
|
|
assertions.
|
|
|
|
The `@param home — NOT an email` doc comment is the right residue. The compiler could not distinguish the two
|
|
`string`s and never will, so the warning has to live where a fourth caller would read it. A nominal type would
|
|
be stronger, and I would not spend the night's remaining hour on it.
|
|
|
|
That closes everything I can review without a live member turn. Outstanding, all needing the owner or a
|
|
running member: the reprovision verifying `15` and `17`, a member signing in, the first member turn, and the
|
|
gates. `deprovisionOsAccount` is still yours.
|