chore(release): version packages#103
Open
github-actions[bot] wants to merge 1 commit into
Open
Conversation
0fe0bac to
f32c107
Compare
f32c107 to
2ee65d8
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
[email protected]
Minor Changes
gitsema admin models list|allow|deny|reset --kind <embedding|narrator|guide> [--org <name>]. Independently,narrate/explain/guide(CLI, HTTP, and MCP) accept request-scoped BYOK credentials (--byok-http-url/--byok-api-key/--byok-model/--byok-max-tokens/--byok-temperatureand equivalent HTTP/MCP fields) that bypass the allow-list entirely and are never persisted.gitsema audit log [--org] [--repo] [--limit]. Completes the Multi-Tenant Auth Track (Phases 122-125).gitsema index doctor --fix: automatically backfills missing FTS5 content and garbage-collects orphan embeddings when those issues are detected, then re-reports index health — no need to runindex backfill-fts/index gcseparately.gitsema tools serve: user accounts with password login (gitsema auth login/logout/whoami) and long-lived API keys (gitsema auth token create/list/revoke), backed by newusers/sessions/api_keystables. The server's auth middleware now resolves these alongside the existingGITSEMA_SERVE_KEY/per-repo token mechanisms.textDocument/hovernow enriches its semantic matches with optional Temporal (last touch/change frequency), Risk & quality (debt/hotspot/security), and Structure (caller/callee counts) sections when their data is available. AddedtextDocument/codeLenswith per-symbol "Called N× · debt X.XX" annotations, and an opt-ingitsema tools lsp --diagnosticsflag that pushestextDocument/publishDiagnosticsnotifications for high-debt/high-hotspot-risk files on a background timer (not supported together with--remote).gitsema tools mcp --remote <url>andgitsema tools lsp --remote <url>(with--remote-key/--remote-timeout, orGITSEMA_REMOTE/GITSEMA_REMOTE_KEY) now proxy every data-access call to a runninggitsema tools serveinstance via a new genericPOST /api/v1/protocol/:operationroute, with a startup health check that fails fast if the remote is unreachable.gitsema tools mcp --websocket <bind-address>andgitsema tools lsp --websocket <bind-address>(e.g.--websocket 0.0.0.0:4242) listen on fixed/mcp//lsppaths, with--key <token>requiring a matchingAuthorization: Bearer <token>header. Unlike--remotedelegation, WebSocket supports server push, so--diagnosticsnow works together with--websocket. gitsema does not terminate TLS — put a reverse proxy in front forwss://.textDocument/definitionandtextDocument/referencesnow resolve structurally first when the knowledge graph (gitsema graph build) is built, returning exact matches instead of approximate semantic/text results (fallback results are now taggedtags: ['fallback']). Added three new LSP methods backed by the same graph:textDocument/prepareCallHierarchy,callHierarchy/incomingCalls, andcallHierarchy/outgoingCalls, advertised via a newcallHierarchyProvider: truecapability.gitsema tools mcp --http <bind-address>(e.g.--http 0.0.0.0:4242) — a proper MCP Streamable HTTP transport using the SDK's ownStreamableHTTPServerTransport, listening on a fixed/mcppath with stateful sessions tracked via theMcp-Session-Idheader.--key <token>requires a matchingAuthorization: Bearer <token>header, same convention as--websocket. Unlike the non-standard--websockettransport (kept only for forward compatibility), Streamable HTTP is MCP's actual recommended network transport and should be preferred by clients/harnesses that need a network-reachable MCP server.gitsema tools servedeployment can now offer several named embedding profiles (provider/model pairs) at once viaGITSEMA_EMBEDDING_PROFILES/theembeddingProfilesconfig key. Repos are pinned to a profile forever at first index (gitsema remote-index --profile <name>), andgitsema repos info <repo-id>shows the pinned profile. Servers with no profiles configured behave exactly as before.org_admin/memberroles), and repo access is granted per-user viarepo_grants(read/write/owner, optionally scoped to a branch glob). New CLI:gitsema orgs create/list/members add/remove/list,gitsema users create/list, andgitsema repos grant/grants/revoke/move-to-org. New HTTP routes under/api/v1/orgsand/api/v1/repos/:repoId/{grants,move-to-org}.public(gitsema repos visibility <repo-id> public|private), auto-grantingreadaccess to non-owner callers who index an existing public repo, gated by a first-index allow-list (auth.allowPublicAutoIndex/GITSEMA_PUBLIC_AUTO_INDEX) and a per-user re-index throttle (auth.minReindexIntervalSeconds/GITSEMA_MIN_REINDEX_INTERVAL_SECONDS).(provider, externalId)identity linked alongside their password/API keys, all resolving to the same account. Providers must be explicitly allowlisted viaGITSEMA_SSO_PROVIDERS. New operator CLI:gitsema auth sso link/unlink/list. New self-service HTTP routes:GET /api/v1/auth/ssoandDELETE /api/v1/auth/sso/:provider/:externalId. The live browser-based OIDC login flow is not yet implemented — linking an identity is currently an operator action.graph neighbors,graph path,blast-radius,relate,similar, andhotspots: pass--out html:graph.htmlfor an interactive force-directed graph (clicking a node shows its details and suggested follow-up commands), or--out text/--out markdown:graph.mdfor an ASCII tree / nested bullet list rendering, alongside each command's existing JSON and default text output.Patch Changes
4000-char LLM-result truncation cap (previously a separate constant inguideTools.tsandllm/narrator.ts) into a single sharedcore/narrator/resultCap.tshelper. Also refresheddocs/feature-ideas.md— removed LSP/MCP remote-delegation, WebSocket, structural-navigation, and diagnostics/hover ideas that shipped as Phases 113–117, and added the still-undesigned plugin-API idea.gitsema index backfill-fts(and its existing top-level aliasgitsema backfill-fts) in favor ofgitsema index rebuild-fts. No index database predating Phase 11 remains in active use, so the Git-refetch behaviorbackfill-ftsprovided is no longer needed; both commands print a deprecation warning but keep working.gitsema tools lsp --tcpis now deprecated in favor of--websocket --key: raw TCP has no request framing to carry a Bearer token in, so the unauthenticated---tcpgap flagged in review10 is closed by steering users to the already-authenticated WebSocket transport instead of inventing a bespoke handshake-auth protocol.--tcpcontinues to work unchanged but now prints a deprecation notice on every invocation.gitsema tools mcp --remote: thenarrate_repoandexplain_issue_or_errortools now delegate to the remote server like every other tool (they previously always ran locally), and--remotenow also takes effect when combined with--websocketor--http(previously only the default stdio transport honored it).gitsema tools mcp --websocketnow prints a startup warning that raw WebSocket is not one of MCP's standard transports and is unlikely to work with most MCP clients/harnesses — it's kept for forward compatibility, not removed. A proper MCP Streamable HTTP transport is planned as a follow-up (seedocs/PLAN.mdPhase 117).SELECT 1) on first use, so a bad or unreachablestorage.metadata.url/GITSEMA_STORAGE_METADATA_URLfails with an actionable error instead of an opaque driver error at the first query — mirroring the existing Qdrant connection probe. Also fixed a stale "in progress" roadmap heading and the recurringdocs/features.mdversion-banner drift, now enforced by a test.--key(withGITSEMA_WEBSOCKET_KEY/GITSEMA_MCP_HTTP_KEYenv-var fallbacks for--key);tools lsp --tcpis documented as unauthenticated.hotspots'topKparameter is now capped at 500 on the HTTP route and MCP tool.regression-gate/code-review's git ref handling moved from shell-interpolatedexecSynctoexecFileSyncwith the same git-ref allowlist used elsewhere.resolveNode()now uses an indexeddisplay_namelookup instead of a full graph scan, the HTML viz's client-sideesc()helper now escapes quotes to match the server-side escaper, andgitsema cycles' DFS no longer risks a stack overflow on very long import chains.