Shared Workspace¶
Cluster: Uncategorised | Type: component | MCP Tools: 8
Overview¶
Public API¶
SharedWorkspaceDecisionError(ValueError)¶
The LLM did not produce a usable, validated arbitration decision.
WorkspaceArbitrationDecision¶
Validated arbitration verdict for a single conflicted path.
| Field | Type | Default |
|---|---|---|
path | str | required |
winner | str | '' |
denied_holders | tuple[str, ...] | () |
escalate | bool | True |
rationale | str | '' |
degraded | bool | False |
raw_response | str | '' |
Methods:
requires_human_review() -> bool¶
Public alias: escalation == a human-review requirement.
SharedWorkspaceArbitrationPlanner¶
Runtime-first facade with deterministic fallback, one-way exclusivity safety
Constructor:
| Parameter | Type | Default |
|---|---|---|
runtime | SharedWorkspaceArbitrationRuntime \| None | None |
Methods:
decide(path: str, holders: list[dict]) -> WorkspaceArbitrationDecision¶
WorkspaceConflict¶
| Field | Type | Default |
|---|---|---|
path | str | required |
holders | tuple[str, ...] | required |
SharedWorkspace¶
Constructor:
| Parameter | Type | Default |
|---|---|---|
root | str \| Path | '.g6/workspace' |
planner | SharedWorkspaceArbitrationPlanner \| None | None |
Methods:
ensure_layout() -> None¶
write_note(agent_id: str, text: str) -> Path¶
enqueue_merge(patch_id: str, diff_summary: str) -> Path¶
lock_path(relative_path: str, holder_id: str = 'agent') -> AbstractContextManager[Path]¶
detect_conflicts() -> list[WorkspaceConflict]¶
arbitrate_conflict(path: str) -> dict¶
Produce an ADVISORY arbitration recommendation for one conflicted
path.
arbitrate_conflicts() -> dict¶
Arbitrate ALL currently-detected lock conflicts (batch).
Functions¶
agentic_planner_enabled(default_enabled: bool) -> bool¶
Decide whether the agentic shared_workspace arbitration planner should run.
deterministic_arbitration(path: str, holders: list[dict]) -> WorkspaceArbitrationDecision¶
Demoted real arbitration verdict (the zero-LLM baseline).
grounded_arbitration(path: str, holders: list[dict], planner: 'SharedWorkspaceArbitrationRuntime | None' = None) -> tuple[WorkspaceArbitrationDecision, Any, bool, str]¶
The ONE shared grounded arbitration chokepoint for EVERY arbitration surface.
MCP Tools¶
| Operation | Source |
|---|---|
ops | shared_workspace_mcp |
help | shared_workspace_mcp |
detect_conflicts | shared_workspace_mcp |
arbitrate_conflict | shared_workspace_mcp |
arbitrate_conflicts | shared_workspace_mcp |
list_patterns | shared_workspace_mcp |
explain_arbitration | shared_workspace_mcp |
list_strategies | shared_workspace_mcp |