Repository navigation
feat(nano): add a standalone headless host - #111
RomanEmreis wants to merge 4 commits into
Conversation
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e9693ab4aa
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Route recognized memory kinds to memory queries and return NotBuilt graph availability with an index recommendation before standalone indexing. Use Windows Known Folder paths in standalone fixtures and select workspace locks by their persisted identity instead of scanning a shared directory.
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f81bad794f
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7838945a82
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8cb9195390
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| let memory = memory::query::MemoryRevisionSelector::Revision( | ||
| status.revision_id.context("Memory has no publication")?, | ||
| ); |
There was a problem hiding this comment.
Pin memory only for requested domains
When a valid configured memory sidecar has no published project revision, such as immediately after creation but before indexing, a project_context_search or project_context call with domain: "repository" still reaches this unconditional unwrap and fails as generic context_unavailable before querying the otherwise available graph. Pin the memory revision only for memory and all requests so repository-domain retrieval remains independent of memory publication state.
AGENTS.md reference: AGENTS.md:L207-L211
Useful? React with 👍 / 👎.
| match graph::sqlite::open_for_query_at(&self.sidecar)? { | ||
| graph::sqlite::OpenQuerySidecarResult::Ready(sidecar) => Ok(Some(sidecar)), | ||
| graph::sqlite::OpenQuerySidecarResult::Absent => Ok(None), | ||
| _ => anyhow::bail!("Standalone graph sidecar requires migration or rebuild"), |
There was a problem hiding this comment.
Return structured status for incompatible graph stores
When repo-graph.db uses an older schema needing migration or an incompatible newer schema, this branch aborts before repository_graph_status can construct a response, and StandaloneTools collapses the failure to generic context_unavailable. Although the absent-sidecar case is now handled, this remaining state prevents the status tool from reporting Availability::Incompatible with the appropriate Index or Rebuild action, and its generic refresh suggestion may repeatedly fail.
Useful? React with 👍 / 👎.
Summary
Add
ferrus-nanofor headless coding sessions in unregistered Git or non-Git workspaces, without HQ, task claims, orferrus.db.The standalone host shares Nano's engine, provider, native tools, instruction loader, and journal contracts. It uses private workspace-bound storage, guarded continuation, explicit local graph/read-only memory context, and optional external MCP peers. Release archives and installers include the companion binary; default Cargo features remain unchanged.
Closes #87.
Type
Workflow impact (if applicable)
Standalone completion is independent of managed submit/approval. Existing managed roles, task transitions, and registration behavior are preserved.
Checklist
Notes for reviewers
nano-openai,nano-mcptest suites; 11 standalone E2E tests;nano-openai-only E2E; formatting and Clippy across default/no-default/provider/MCP combinations. macOS dist packaging passed checksums, both binary smoke tests, arm64/deployment-target checks, andinit/doctor.