⚠️ OpenSpec-managed issue — this content is automatically synced
from the openspec/ directory. Manual edits will be overwritten on next sync.
Artifacts
Summary
Add the portal-subject scoping identity that planninq currently lacks: a UUID
domain-ref property on the three schemas an external contractor needs to read
or write. task and timeEntry each gain a contractorRef (format: uuid)
alongside their existing Nextcloud-uid fields (assignedTo, user); project
gains a contractorRefs (uuid[]) alongside members. Nothing is removed —
the NC-uid fields stay exactly as they are for internal dev/IT teams. This is
the config link of the planninq ADR-046 portal chain; the code link
(portal-contribution) ships the provider that scopes portal reads by these
new refs and depends on this change.
Specs
Tasks
Design
See design.md for technical design details.
Synced from openspec/changes/portal-identity by OpenSpec workflow
App: planninq
Artifacts
Summary
Add the portal-subject scoping identity that planninq currently lacks: a UUID
domain-ref property on the three schemas an external contractor needs to read
or write.
taskandtimeEntryeach gain acontractorRef(format: uuid)alongside their existing Nextcloud-uid fields (
assignedTo,user);projectgains a
contractorRefs(uuid[]) alongsidemembers. Nothing is removed —the NC-uid fields stay exactly as they are for internal dev/IT teams. This is
the config link of the planninq ADR-046 portal chain; the code link
(
portal-contribution) ships the provider that scopes portal reads by thesenew refs and depends on this change.
Specs
Tasks
Design
See design.md for technical design details.
Synced from
openspec/changes/portal-identityby OpenSpec workflowApp:
planninq