Update release-packages.yml#20
Merged
Merged
Conversation
rbuergi
added a commit
that referenced
this pull request
May 3, 2026
…skip test Get on a NodeType whose per-node hub can't activate (compilation rejected the HubConfiguration) was timing out at 10s in FetchNode and returning a generic "Not found" — leaving the caller (Coder agent / MCP / UI) with no signal that the underlying problem is a broken source file. Add GetWithBrokenNodeTypeFallback: when FetchNode returns null AND nodeTypeService.GetCompilationError(path) shows a recorded error, read the node from IMeshService.QueryAsync (catalog snapshot — the single documented exception to "queries are for sets only" since the live hub is unreachable by definition) and wrap the response with the compile error. The Coder workflow now surfaces the fix-the-source signal that GetDiagnostics already exposes. Un-skips test #20 (Get_InstanceOfBrokenNodeType_WrapsResponseWithCompilationError); test runs in ~23s (most of it the 10s FetchNode timeout before the catalog fallback kicks in). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
rbuergi
added a commit
that referenced
this pull request
May 10, 2026
…fix DI lifetimes, redact PII, drop dynamic - ThreadExecution: collapse triple-stacked <summary> blocks on WatchForExecution and NotifyParentCompletion. Tooling kept the last one anyway; the dead scaffolding was just noise. - SocialExtensions: register LinkedInPublisher / XPublisher as TRUE singletons (factory-resolved with named HttpClient). The previous AddHttpClient<T>+AddSingleton<IPlatformPublisher> mix made the concrete type transient while the interface alias was singleton — direct vs via-interface resolution returned different instances. Also gate hosted-service registration on at least one platform being configured (the "all-or-nothing" comment was wrong; with zero platforms the four hosted services started anyway and faulted on first tick). - LinkedInPublisher: replace `(dynamic)media.shareMediaCategory` peek with two concrete payload shapes — typo turns into a compile error instead of a RuntimeBinderException. - LinkedIn / X publishers: cap error-body logs at 200 chars to bound PII exposure (the body can echo the user's post text on validation rejection). Full body still goes to PublishResult.Error for the caller. Addresses PR #95 review items #9, #20, #21, #22, #23. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
rbuergi
added a commit
that referenced
this pull request
May 31, 2026
… centrally Enabling doc-gen (#21) surfaced doc-quality warnings (CS0419 ambiguous cref x66, CS1734 bad paramref x20, CS1572/CS1723/CS1587) plus xUnit1026 (unused theory param x2). Added to the central NoWarn so the build is code-warning-clean. The 20 MSB3026 are file-copy retries from the locally-running Memex.AppHost (environmental; absent in CI), not a code issue. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
rbuergi
added a commit
that referenced
this pull request
May 31, 2026
…t suppressed) Subagent pass fixed real doc bugs surfaced by enabling GenerateDocumentationFile: ambiguous/unresolved <see cref> (CS0419/CS1574), bad <paramref> (CS1734), stray <param> (CS1572), cref-to-typeparam (CS1723), misplaced comments (CS1587), malformed XML (CS1570), and unused theory params (xUnit1026) — correcting the reference or degrading to <c>...</c>, never suppressing. NoWarn now suppresses ONLY doc-completeness (CS1591/CS1573/CS1712, thousands of members). Each project builds clean. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
rbuergi
added a commit
that referenced
this pull request
May 31, 2026
… can't see MeshWeaver.AI) Closes the doc-quality warning sweep: every CS-level doc warning is now fixed, not suppressed. Only doc-completeness (CS1591/CS1573/CS1712) is centrally suppressed; the remaining MSB3026 is the file-copy lock from the locally-running Memex.AppHost (environmental, absent in CI). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
rbuergi
added a commit
that referenced
this pull request
Jun 5, 2026
… fans out PostgreSqlPartitionedMeshQuery.Autocomplete now serves the TOP-LEVEL case (empty base or a "/name" prefix) from public.top_level_index via the new ICrossSchemaQueryProvider.AutocompleteTopLevelAsync — one small indexed matview read with a PG-side relevance score (exact > name-prefix > id-prefix > substring; ORDER BY score DESC, not alphabetical), access-filtered by partition_access. The within-partition case (concrete basePath) stays the per-schema scoped query. Autocomplete NEVER fans out across schemas — the connection-pool-storm fix for the autocomplete path. Increment 2 of #20. Test: AutocompleteTopLevel_ReturnsScoredMatches_FromMatview_NoFanOut. 21/21 PG index/guard/autocomplete tests green. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
rbuergi
added a commit
that referenced
this pull request
Jun 5, 2026
…elevance ORDER BY on cross-schema search #19 (grain warming): SyncedQueryMeshNodes warms the per-node grain of each NEWLY-added result via the shared IMeshNodeStreamCache, so the GUI's subsequent databinding hits a warm cache instead of a cold DB read. Scoped to real-user queries (System framework walks + anonymous guests excluded → no load amplification); gated to new paths (a quiescing live query never re-warms). Reuses the cache — no new message type. #20 (general relevance): GenerateCrossSchemaSelectQuery ORDER BYs a PG-side hybrid score (exact name > name-prefix > id-prefix > substring > description) when a text search has no explicit OrderBy, so the LIMIT keeps the most-RELEVANT rows instead of arbitrary heap order (a relevance bug: a relevant row could fall outside the LIMIT and never reach the merge). Sort by score, not alphabetically; an explicit OrderBy supersedes. Tests: 46/46 PG (cross-schema search, satellite fan-out, multi-query union, top-level index + autocomplete, segment-guard) green — no regression. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
rbuergi
added a commit
that referenced
this pull request
Jun 5, 2026
…view + unscoped query defer #16 matview: rebuild_top_level_index() now selects exactly the partition ROOT per schema (namespace='' AND id=<schema_name>) so path (a generated column = id when namespace='') is globally unique — the prior (namespace,id)/(path) UNIQUE index collided on non-root top-level nodes repeating ids across partitions. atioz migration completes; matview = one row per real partition. #20 (partial): StorageAdapterMeshQueryProvider defers UNSCOPED queries to the native partitioned provider's SQL fan-out (partitioned PG only, via StorageAdapterQueryProviderOptions). Removes the pedestrian's slow cross-partition ListChildPaths walk for the onboarding middleware's unscoped 'nodeType:User content.email:X' lookup (the 20s timeout). Scoped/satellite queries untouched (pedestrian is the real server for _Access reads) — 452/452 PG tests pass. Absent-partition scoped-walk slowness (_Access/User/_UserActivity) is a separate routing-layer fast-fail, tracked next. RoutingConvergenceTests: PG regression guards that ResolvePath/GetQuery converge to empty (no hang) for absent partitions + non-matches. Docs: CLAUDE.md + Deployment.md rewritten to the AKS image-update deploy (dotnet publish -t:PublishContainer → az aks command invoke set image/rollout); deploy.sh = first-time env setup only; bare aspire deploy = legacy. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
rbuergi
added a commit
that referenced
this pull request
Jun 5, 2026
…_nodes The pedestrian StorageAdapterMeshQueryProvider's ListChildPaths scope-walk was the 60-70s onboarding/storm stall. PostgreSqlPartitionedMeshQuery now OWNS scoped primary-content serving by delegating to a per-schema PostgreSqlMeshQuery over the CACHED adapter (live deltas, no walk): - PostgreSqlPathRoutingAdapter.GetSchemaAdapter / provider.GetSchemaAdapter expose the cached per-schema adapter (shared in-process Changes feed). - PostgreSqlPartitionedMeshQuery: scoped mesh_nodes Query/QueryAsync/Select/within- partition Autocomplete delegate to a per-schema PostgreSqlMeshQuery (one per cached adapter → live deltas). Gated by !NeedsFanOut. - Pedestrian DeferToNativeProvider: defers unscoped/wildcard (→ native cross-schema fan-out) and scoped mesh_nodes (→ delegate); KEEPS scoped-satellite. The per-schema delegate's satellite Query Initial under-returns pre-existing rows (the live-delta path works; Initial-with-preexisting is a follow-up). Satellite reads to an absent partition are now fast anyway (42P01-tolerant, post-ghost-fix), so not a storm path. Renamed DeferUnscopedAndSatelliteToNativeProvider -> DeferToNativeProvider. PG suite 454/454. Doc: PartitionStorageRouting.md updated. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
rbuergi
added a commit
that referenced
this pull request
Jun 7, 2026
GenerateSelectQuery now appends the same hybrid-relevance ORDER BY ladder that GenerateCrossSchemaSelectQuery uses (#20 / 9bdc64e) for free-text queries with no explicit OrderBy: exact-name > name-prefix > id-prefix > name-substring > id-substring > description-substring, then last_modified. Previously a scoped single-partition text query had NO ordering, so LIMIT kept arbitrary heap rows and a relevant match could fall outside the LIMIT before any C#-side ComputeRowScores re-rank saw it -- the same relevance bug the cross-schema path already fixed. Now both paths agree. Uses the `n` alias directly (no UNION wrap) + a parameterised @scoreText; an explicit sort: still supersedes. +3 SqlGeneratorTests (ladder present for text, absent for structured-only, superseded by explicit OrderBy). 32/32 generator unit tests + 29/29 search integration tests pass. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
No description provided.