Skip to content

feat(org): Phase 3 in-host Organization Settings org-ui slice - #65

Merged
XYAIStudio merged 1 commit into
mainfrom
cursor/org-settings-phase3-483e
Sep 19, 2026
Merged

XYAIStudio merged 1 commit into
mainfrom
cursor/org-settings-phase3-483e

Conversation

@XYAIStudio

Copy link
Copy Markdown
Owner

Summary

Organization Settings is now an in-host Organization sub-UI. Same seam as Announcements / Org chart / Employees / Skills / Governance / Knowledge / Tasks / Reflections: shared org-ui page + thin Dashboard adapter + host /api/org-module/... + freeos org export-standalone.

No sidecar, no iframe, and no Agents / Chat / Workspace bulk work in this PR (workbench gets one entry card + a tiny overview link).

Critical boundary — what this page is not

FreeOS already has system Settings. This page is org-module settings only.

On this page Not on this page (link out)
org_os catalog module toggles (reuse GET/PUT /api/org-module/modules) LLM API keys / models (/system-settings/models)
Org-local prefs: display name + description (PUT /api/org-module/prefs) Users (/system-settings/users)
Explicit “not here” callout Timezone, security, registration, air-gap, DB backup
Link to Organization workbench Sidecar company / AI / users / database tabs

Sidecar /api/settings is not migrated and not cloned. Default path does not read it.

Data ownership

Surface Store API Meaning
Catalog toggles {FREEOS_HOME}/org-os/module-toggles.json existing GET/PUT /api/org-module/modules Hide/show Open-12 catalog keys; workspace / settings stay locked on
Org-local prefs {FREEOS_HOME}/org-os/prefs.json GET /api/org-module/settings · PUT /api/org-module/prefs Org display name / description
FreeOS system settings Octop users / providers / config.json /system-settings* Not edited here

What landed

  • dashboard/src/org-ui/pages/settings — SettingsPage
  • Dashboard route /organization/settings (workbench card + path tabs)
  • Host APIs: settings snapshot + prefs write; toggles reuse /modules
  • Export scaffold lists Settings and imports the same page
  • Tests: prefs store + HTTP + org-ui + workbench + export-standalone

Out of this PR

Agents, Chat, Workspace (beyond a tiny workbench link), sidecar Settings (AI keys, users, database), FreeOS system settings themselves.

Target branch

Type of change

  • New feature

Test plan

  • uv run pytest tests/unit/test_org_settings.py tests/unit/cli/test_org_export_standalone.py tests/unit/i18n (74 passed)
  • npx vitest run on org-ui / Organization / route tests (29 passed)
  • uv run mypy --strict on new modules; npx tsc --noEmit
  • Pre-commit make precommit + dashboard build
  • make all (CI)

Checklist

  • Updated CHANGELOG.md
  • docs/org-merge-plan.md records the Settings slice, SoT, and what is not on this page
Open in Web Open in Cursor 

Add /organization/settings as org-module settings only: catalog toggles
(reuse GET/PUT /api/org-module/modules) and org-local prefs
({FREEOS_HOME}/org-os/prefs.json). Link out to FreeOS system settings
for LLM keys, users, and timezone. No sidecar and no system-settings
duplication.
@XYAIStudio
XYAIStudio marked this pull request as ready for review September 19, 2026 05:06
@XYAIStudio
XYAIStudio merged commit 71cf89b into main Sep 19, 2026
4 checks passed
@XYAIStudio
XYAIStudio deleted the cursor/org-settings-phase3-483e branch September 19, 2026 05:06
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.

2 participants