Skip to content

Scope All Tasks to the active organisation and unscoped tasks - #476

Merged
witbrock merged 1 commit into
mainfrom
codex/jvnautosci-2691-task-org-scope
Aug 28, 2026
Merged

Scope All Tasks to the active organisation and unscoped tasks#476
witbrock merged 1 commit into
mainfrom
codex/jvnautosci-2691-task-org-scope

Conversation

@witbrock

Copy link
Copy Markdown
Member

Jira: JVNAUTOSCI-2691

Summary:

  • scope task listings to the trusted active-window organisation plus unscoped tasks; Personal is unscoped-only
  • show task organisation scope and let represented members assign unscoped tasks from the detail UI
  • enforce source/destination membership, canonical scope relations, provenance, stale-response fencing, and Personal window isolation
  • reuse the trusted access evaluator per sanitisation batch to keep the scoped page responsive

Validation:

  • 102 targeted backend tests passed
  • 12 targeted frontend tests passed
  • targeted frontend static lint, JavaScript syntax, Ruff import/undefined-name checks, and diff check passed
  • isolated browser replay: Personal 50/50 unscoped and 0 scoped; represented org 34 scoped plus 16 unscoped; assignment selector showed only Unscoped plus represented membership
  • same 50-task API page improved from 29.9 s to 4.37 s

No deployment is included.

@witbrock
witbrock merged commit d6cbca2 into main Aug 28, 2026
4 checks passed
existing_organisation_concept_id = _normalise_optional_concept_id(
existing_task.get("organisation_concept_id")
)
organisation_concept_id = existing_organisation_concept_id
from flask import session

import src.backend.security.access_control as access_control
import src.backend.services.window_session_context_service as window_context
@witbrock
witbrock deleted the codex/jvnautosci-2691-task-org-scope branch August 28, 2026 15:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant