Commit Graph
62 Commits
Author SHA1 Message Date
HumbleTurtle 7ac412a335 Make gateway lifecycle help specific 2026-08-01 04:28:39 -03:00
HumbleTurtle ffbe28798b Serialize gateway log compaction safely 2026-08-01 04:21:56 -03:00
HumbleTurtle 5289965772 Keep CLI log compaction on live inode 2026-08-01 04:20:45 -03:00
HumbleTurtle fccdfd58df Preserve live gateway log during compaction 2026-08-01 04:18:00 -03:00
HumbleTurtle 39adc19510 Allow compatible CLI release upgrades 2026-08-01 04:15:09 -03:00
HumbleTurtle 0e552497b2 Use one relay listener lane by default 2026-08-01 04:03:01 -03:00
HumbleTurtle b555779bef Clear stale worker identity on project attach 2026-08-01 03:59:52 -03:00
HumbleTurtle 463caec13b Remove legacy CLI and MCP aliases 2026-08-01 03:53:02 -03:00
HumbleTurtle bfda22f59b Repair MCP diagnostics and gateway lifecycle 2026-08-01 03:50:28 -03:00
HumbleTurtle ffd31cf568 Fix project attach reload before MCP discovery 2026-07-30 19:57:47 -03:00
HumbleTurtle 5f864eab06 Remove duplicate bootstrap installers 2026-07-30 00:27:22 -03:00
HumbleTurtle a70cb7c46c Release resilient atomic Napseer CLI runtime 2026-07-30 00:21:50 -03:00
HumbleTurtle a88930ce69 fix(auth): reload attached credentials in live MCP 2026-07-21 01:51:38 -03:00
HumbleTurtle 590d10b7da feat(memory): resolve paths in context reads 2026-07-19 15:18:29 -03:00
HumbleTurtle 7e4002579b fix(auth): recover anonymous projects after token expiry 2026-07-19 14:36:27 -03:00
HumbleTurtle a2958b108f fix(auth): preserve OAuth project sessions 2026-07-18 19:32:29 -03:00
HumbleTurtle e1a4cf93f0 fix(cli): consolidate CLI dispatch surface and add nap project init
The dispatcher in `napseer_mcp_server.py::cli_main` had grown a duplicated
fragment of the project-command dispatcher (the attach/create/claim/status/
encryption block) that survived an earlier refactor. Because the fragment
was left at function-body indent after the `return` that closes the
canonical block, every `nap` subcommand that hands off to the MCP server
crashed at import time:

    File "/home/matias/.local/share/napseer/napseer_mcp_server.py",
    line 13561
        "frontend_url": cli_option(argv[3:], "--frontend-url",
                                   default=None),
    IndentationError: unexpected indent

That broke `nap project attach`, `nap project create`, `nap gateway
start`, and every other `nap *` command that dispatches to the MCP
server, surfacing as an "unknown command" / 401-style failure at the
caller. The pinned published revision `cbdc1840` still ships the broken
file; the next backend build needs to bump to this commit.

Rewrite `cli_main` so each `if command == "<cmd>":` block has a
single, complete dispatcher with no leftover fragments. Promote
`init` (first-time directory setup, no browser) to a canonical
`nap project init` subcommand, leave `attach` calling
`operator_loopback_login`, and `create` / `claim` unchanged.

Drop deprecated aliases (`ls`, `new`, `send`, `rm`, `set-status`,
`admin`, `global-list`, positional-state shortcut for
`nap project encryption set`, `process --all` shortcut) with clear
RuntimeError pointers to the canonical verbs.

Tests: `tests/test_cli_dispatch_consolidation.py` asserts canonical
verbs route correctly and dropped aliases raise with a clear pointer;
`tests/test_project_init_wizard.py` exercises the
`nap project init` wizard end-to-end;
`tests/test_nap_install_gateway_routes.py` updated for the
`process --all` removal. 19/19 pytest cases pass.

See /incidents/2026-06-15/napseer-mcp-server-py-13561-indentation-error-upstream
in Napseer memory for the prior incident writeup.
2026-06-15 14:10:39 -03:00
HumbleTurtle 9ea082c919 refactor: Extract modular subpackage from napseer_mcp_server.py
Split 810+ lines into organized modules:
- napseer/constants.py: Discovery, lifecycle, kanban, planning constants
- napseer/crypto.py: ChaCha20-Poly1305, AES-256-GCM, key derivation
- napseer/gateway.py: Gateway management, relay, terminal helpers
- napseer/telemetry.py: Event logging, metrics

Main file imports from modular package when available, with graceful
fallback to inline definitions for backward compatibility.

Tests: 36/36 passing
2026-06-15 14:10:39 -03:00
HumbleTurtle cbdc184055 Add incremental local index sync 2026-05-23 01:54:09 -03:00
HumbleTurtle 031b888fdd Use node identity in local helper UI 2026-05-22 23:39:59 -03:00
HumbleTurtle 1cb8075324 Require identity for context graph tools 2026-05-22 23:34:59 -03:00
HumbleTurtle fa754bb5bd Require identity for agent node tools 2026-05-22 23:32:31 -03:00
HumbleTurtle 5fb0603802 Relax plan lifecycle reason requirements 2026-05-22 23:28:31 -03:00
HumbleTurtle 1813e9f4e3 Require identity for plan lifecycle tools 2026-05-22 23:23:57 -03:00
HumbleTurtle 65448aee0b Require identity for graph node tools 2026-05-22 23:19:39 -03:00
HumbleTurtle 6759ce7055 Require identity for tee bulk updates 2026-05-22 23:09:57 -03:00
HumbleTurtle 411a7b73e1 Require node identity for kanban mutations 2026-05-22 23:05:32 -03:00
HumbleTurtle 58162f3f59 Route object patches by node id 2026-05-22 22:53:51 -03:00
HumbleTurtle ddab2dccc8 Require node identity for mutation tools 2026-05-22 22:47:30 -03:00
HumbleTurtle 8d009ad61f Remove path based full discovery reads 2026-05-22 22:27:32 -03:00
HumbleTurtle 27a37a4938 Enforce ID-based node reads in MCP wrapper 2026-05-22 22:09:11 -03:00
HumbleTurtle 9bce54ac0a Add project-scoped OAuth attach flow 2026-05-20 22:36:33 -03:00
HumbleTurtle 5cdbc8f2be Improve MCP memory discovery tools 2026-05-20 12:29:24 -03:00
HumbleTurtle 18c67ef27d Separate vault and gateway passphrases 2026-05-20 00:27:43 -03:00
HumbleTurtle e24daf54c1 Simplify chat secret CLI flow 2026-05-19 17:42:44 -03:00
HumbleTurtle 4948646b9a Bump CLI distribution contract 2026-05-19 16:56:13 -03:00
HumbleTurtle aa15a677f9 Add plan lineage CLI helpers 2026-05-17 09:00:47 -03:00
HumbleTurtle f320ea655f Compact MCP write command results 2026-05-14 10:37:05 -03:00
HumbleTurtle 181aa8c42f Default MCP discovery to path views 2026-05-14 10:33:58 -03:00
HumbleTurtle b818abc75c Make recent memory title-only by default 2026-05-12 17:36:01 -03:00
HumbleTurtle dd0af0f6a9 Remove local gateway unlock gate 2026-05-10 07:54:34 -03:00
HumbleTurtle e7aed9ddf6 Purge legacy CLI command aliases 2026-05-10 07:38:39 -03:00
HumbleTurtle 08c4096868 Centralize kanban dependency vocabulary 2026-05-10 03:38:18 -03:00
HumbleTurtle ecb549d159 Add kanban dependency view summaries 2026-05-10 03:35:57 -03:00
HumbleTurtle dfead93d15 Deduplicate kanban card slugs 2026-05-10 02:30:38 -03:00
HumbleTurtle 4a332ed413 Fix MCP REST boolean query encoding 2026-05-10 01:22:57 -03:00
HumbleTurtle d88d8da259 Add kanban workflow MCP tools 2026-05-09 06:12:12 -03:00
HumbleTurtle 97071a42aa Refresh gateway listener auth before relay connect 2026-05-07 19:57:26 -03:00
HumbleTurtle c0d3c0c89a Raise memory discovery limits 2026-05-07 07:11:51 -03:00
HumbleTurtle a073f22403 Add memory ergonomics helper tools 2026-05-06 17:19:12 -03:00