- Ya
- 6 Agosti 2026, 17:55 UTC
- Mwandishi
- Kamo
- Ahadi ya
- f230eb8
LegalAssignmentOwnership is a SEPARATE guard from LegalPackageAccess on purpose: a member executing their own agreement holds no HR right, and widening the HR read set to admit them would hand every member the templates grid and the audience preview's full roster with emails. Everything that is not the caller's own assignment answers an identical 404 — a 403 would confirm the uid is real. detail() does the first-view bookkeeping on the HR row (firstViewedAt, PENDING -> IN_PROGRESS) rather than in ESigService, so the recipient-status machine is untouched and the badge stays honest. The attestation wording comes from the FROZEN version, never from the package's mutable draft. documentPdf serves ACKNOWLEDGE-ONLY documents and verifies the served ImgDat's content-address digest against the frozen contentSha256 before it serves a byte; saveImgContent repoints img.setDat on every Docs save, so drift is live. Signable documents are refused with a 409 naming the esign route — those bytes must come from the service that flattens them. KToken's orgID/memberID are primitive long, so the plan's "== null" identity check is 0 instead; extractKToken leaves 0 behind for an absent session field.