You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: AGENTS.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,6 +12,9 @@
12
12
- When initialization logic is required (initialization tasks), add a simple hosted service to perform it and register that hosted service inside the relevant extensions.
13
13
- Do not expose user-facing knobs for AGE/Postgres connection pool sizing (e.g., `MaxConnections` parameters); rely on EF Core-style connection-string keywords and reasonable defaults inside the connector.
14
14
- Graph store registrations (Postgres, Neo4j, Cosmos) must automatically register a default `IGraphStore`; remove `MakeDefault` toggles/options and rely on the first registration when an unkeyed graph store is requested.
15
+
- Keep bulk graph store operations on `IGraphStore`; do not split them into a separate `IBulkGraphStore` interface.
16
+
- Avoid separate scoped graph store abstractions (e.g., `IScopedGraphStore`); keep scope management on the primary client/graph store or its factory rather than exposing an extra DI service.
17
+
- Always update `README.md` (and related docs) to reflect any behavior or API changes you make so documentation stays current with the code.
15
18
16
19
# Conversations
17
20
any resulting updates to agents.md should go under the section "## Rules to follow"
Copy file name to clipboardExpand all lines: README.md
+10-6Lines changed: 10 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -236,7 +236,7 @@ GraphRAG ships with a first-class Apache AGE adapter (`ManagedCode.GraphRag.Post
236
236
}
237
237
}
238
238
```
239
-
4.**Register through DI.**`services.AddPostgresGraphStore("postgres", configure: ...)` wires up `IAgeConnectionManager`, `IAgeClientFactory`, `IGraphStore`, `IScopedGraphStore`, and `IBulkGraphStore`. Pool sizing follows the standard Npgsql settings (configure `Max Pool Size`, `Timeout`, etc. inside the connection string). The first registration becomes the default unkeyed `IGraphStore`; additional stores remain keyed-only.
239
+
4.**Register through DI.**`services.AddPostgresGraphStore("postgres", configure: ...)` wires up `IAgeConnectionManager`, `IAgeClientFactory`, `PostgresGraphStore`, `IGraphStore`, and `PostgresExplainService`. Pool sizing follows the standard Npgsql settings (configure `Max Pool Size`, `Timeout`, etc. inside the connection string). The first registration becomes the default unkeyed `IGraphStore`; additional stores remain keyed-only.
240
240
241
241
```csharp
242
242
varservices=newServiceCollection()
@@ -253,23 +253,27 @@ GraphRAG ships with a first-class Apache AGE adapter (`ManagedCode.GraphRag.Post
The `AgeConnectionManager` automatically retries transient `53300: too many clients` errors (up to three exponential backoff attempts) so scopes can wait for a free slot before failing. When a scope is disposed, the underlying `IAgeClientScope` returns its connection to the pool, keeping concurrency predictable even under heavy fan-out.
276
+
The `AgeConnectionManager` automatically retries transient `53300: too many clients` errors (up to three exponential backoff attempts) so scopes can wait for a free slot before failing. When a scope is disposed, the underlying `IAgeClientScope`created by `IAgeClientFactory`returns its connection to the pool, keeping concurrency predictable even under heavy fan-out.
0 commit comments