Skip to content

removing .donna directory#75

Merged
Tiendil merged 1 commit into
mainfrom
feature/remove-donna-dir
May 14, 2026
Merged

removing .donna directory#75
Tiendil merged 1 commit into
mainfrom
feature/remove-donna-dir

Conversation

@Tiendil
Copy link
Copy Markdown
Owner

@Tiendil Tiendil commented May 14, 2026

No description provided.

Copilot AI review requested due to automatic review settings May 14, 2026 14:59
@Tiendil Tiendil merged commit 58410b2 into main May 14, 2026
3 checks passed
@Tiendil Tiendil deleted the feature/remove-donna-dir branch May 14, 2026 15:01
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR migrates Donna’s project/workspace layout away from a .donna/ directory to a root donna.toml configuration file and a configurable session directory (defaulting to .session/donna), updating the CLI, runtime behavior, and documentation/spec artifacts accordingly.

Changes:

  • Replace .donna/config.toml with <project-root>/donna.toml and update project root discovery to look for donna.toml.
  • Make the session directory configurable via config().session (default .session/donna) and update all docs/specs to reference @/.session/donna/**.
  • Update workspace initialization/update flows and user-facing error/help messages to reflect the new layout.

Reviewed changes

Copilot reviewed 40 out of 40 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
specs/work/log_changes.donna.md Update session artifact scope reference to @/.session/donna/**.
specs/intro.donna.md Update terminology and paths from .donna workspace to donna.toml + configured session dir.
specs/core/top_level_architecture.donna.md Wording updates around “workspace/project” and fixture sync paths.
README.md Update installation/config/session path documentation for donna.toml and .session/donna.
donna/workspaces/sessions.py Session dir now derived from config().session.
donna/workspaces/initialization.py Discover/init/update now based on donna.toml; ensure session dir exists on init.
donna/workspaces/errors.py Update error messages/fields for new config file location and naming.
donna/workspaces/config.py Introduce session config + default; compute session artifact filter dynamically.
donna/workspaces/artifacts.py Remove special-case skip of .donna/tmp during filesystem walk.
donna/skills/fixtures/usage.md Update skill docs to reference donna.toml and configured session dir.
donna/skills/fixtures/initialization.md Update initialization docs for donna.toml + .session/donna.
donna/skills/fixtures/configuration.md Document new config format/keys including session.
donna/skills/fixtures/artifacts.md Update artifact-area docs to .session/donna and donna.toml.
donna/fixtures/specs/rfc/work/request.donna.md Update RFC workflow docs to .session/donna artifact paths.
donna/fixtures/specs/rfc/work/plan.donna.md Update session artifact paths to .session/donna.
donna/fixtures/specs/rfc/work/do.donna.md Update default workflow ids to .session/donna.
donna/fixtures/specs/rfc/work/design.donna.md Update session artifact paths to .session/donna.
donna/fixtures/specs/rfc/specs/request_for_change.donna.md Update required RFC storage path to .session/donna.
donna/fixtures/specs/rfc/specs/design.donna.md Update required Design storage path to .session/donna.
donna/fixtures/specs/research/work/research.donna.md Update session artifact paths to .session/donna.
donna/fixtures/specs/research/specs/report.donna.md Update required research storage path to .session/donna.
donna/fixtures/specs/intro.donna.md Update journal configuration path to donna.toml.
donna/core/utils.py Change project discovery to search for config file instead of .donna dir.
donna/core/errors.py Update ProjectDirNotFound error shape/message for config-file discovery.
donna/cli/types.py Update help text/examples to use .session/donna and donna.toml.
donna/cli/commands/workspaces.py Update CLI help/success messages to “project config/files” wording.
donna/cli/commands/artifacts.py Update CLI help text wording (“Donna project”).
donna.toml Add new root config file with session dir, filters, sources, journal forwarding.
.donna/config.toml Remove legacy config file.
.agents/donna/usage/worlds.donna.md Update references from .donna/config.toml and .donna/session to new paths.
.agents/donna/usage/cli.donna.md Update discovery and example paths to donna.toml / .session/donna.
.agents/donna/rfc/work/request.donna.md Sync RFC workflow docs to .session/donna.
.agents/donna/rfc/work/plan.donna.md Sync RFC plan workflow docs to .session/donna.
.agents/donna/rfc/work/do.donna.md Sync RFC do workflow docs to .session/donna.
.agents/donna/rfc/work/design.donna.md Sync RFC design workflow docs to .session/donna.
.agents/donna/rfc/specs/request_for_change.donna.md Sync RFC spec docs to .session/donna.
.agents/donna/rfc/specs/design.donna.md Sync Design spec docs to .session/donna.
.agents/donna/research/work/research.donna.md Sync research workflow docs to .session/donna.
.agents/donna/research/specs/report.donna.md Sync research spec docs to .session/donna.
.agents/donna/intro.donna.md Update journal config reference to donna.toml.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +138 to +142
session_path = self.session.as_posix().strip("/")
if session_path in {"", "."}:
return ArtifactIdPattern.parse("@/**/*.donna.md").unwrap()

return ArtifactIdPattern.parse(f"@/{session_path}/**/*.donna.md").unwrap()
session = ".session/donna"
```

Relative paths are resolved from the project root; absolute paths are used as configured. Use a directory ignored by version control unless a project intentionally tracks session artifacts.
4. Donna will output descriptions of all operations it performs to complete the work.
5. Donna will output **action requests** that you MUST perform. You MUST follow these instructions precisely.
6. When you done processing an action request, call `donna -p <protocol> sessions action-request-completed <action-request-id> <next-full-operation-id>` to report request completion. `<next-full-operation-id>` MUST contain the full identifier of the next operation, for example `@/.donna/session/execute_rfc.donna.md:review_changes`.
6. When you done processing an action request, call `donna -p <protocol> sessions action-request-completed <action-request-id> <next-full-operation-id>` to report request completion. `<next-full-operation-id>` MUST contain the full identifier of the next operation, for example `@/.session/donna/execute_rfc.donna.md:review_changes`.
Comment on lines 7 to 9
def dir() -> pathlib.Path:
return project_dir() / DONNA_DIR_NAME / DONNA_WORLD_SESSION_DIR_NAME
return project_dir() / config().session

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