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
|`AddMember(ctx, teamID, add)`| Add member directly by email |
912
919
|`UpdateMember(ctx, teamID, email, update)`| Update member role (uses email) |
913
920
|`RemoveMember(ctx, teamID, email)`| Remove member (uses email) |
914
921
|`InviteMember(ctx, teamID, invite)`| Invite user to team |
@@ -1229,25 +1236,24 @@ This SDK follows the service-oriented architecture pattern established by [googl
1229
1236
1230
1237
### Upstream ContextForge API Bugs
1231
1238
1232
-
The SDK integration tests have identified six bugs in ContextForge (confirmed in both v0.8.0 and v1.0.0-BETA-1; revalidation against v1.0.0-BETA-2 is pending in this repository). These bugs are in the upstream API, not the SDK implementation. Affected tests are skipped and will be re-enabled once upstream bugs are fixed.
1239
+
The SDK integration tests currently document several upstream ContextForge API bugs. These bugs are in the upstream API, not the SDK implementation. Affected tests are skipped and will be re-enabled once upstream fixes land; see the linked reports for the latest validated version for each issue.
1233
1240
1234
1241
**CONTEXTFORGE-001: Toggle Endpoints Return Stale State**
1235
1242
The `POST /prompts/{id}/toggle` and `POST /resources/{id}/toggle` endpoints return stale `isActive` state despite correctly updating the database. See [`docs/upstream-bugs/contextforge-001-prompt-toggle.md`](docs/upstream-bugs/contextforge-001-prompt-toggle.md).
1236
1243
1237
1244
**CONTEXTFORGE-002: Prompts API Accepts Empty Template Field**
1238
1245
The `POST /prompts` endpoint accepts prompt creation without the `template` field, allowing semantically invalid prompts. See [`docs/upstream-bugs/contextforge-002-prompt-validation-missing-template.md`](docs/upstream-bugs/contextforge-002-prompt-validation-missing-template.md).
1239
1246
1240
-
**CONTEXTFORGE-003: Prompts Toggle Returns 400 Instead of 404**
1241
-
The `POST /prompts/{id}/toggle` endpoint returns HTTP 400 for non-existent prompts instead of 404. See [`docs/upstream-bugs/contextforge-003-prompt-toggle-error-code.md`](docs/upstream-bugs/contextforge-003-prompt-toggle-error-code.md).
1242
-
1243
-
**CONTEXTFORGE-004: Teams Individual Resource Endpoints Reject Valid Authentication**
1244
-
Individual team endpoints (`GET/PUT/DELETE /teams/{id}/*`) reject valid JWT tokens with 401 Unauthorized, despite list/create working correctly. See [`docs/upstream-bugs/contextforge-004-teams-auth-individual-endpoints.md`](docs/upstream-bugs/contextforge-004-teams-auth-individual-endpoints.md).
1245
-
1246
1247
**CONTEXTFORGE-005: Teams API Ignores User-Provided Slug Field**
1247
1248
The `POST /teams` endpoint ignores the `slug` field and always auto-generates from team name. See [`docs/upstream-bugs/contextforge-005-teams-slug-ignored.md`](docs/upstream-bugs/contextforge-005-teams-slug-ignored.md).
1248
1249
1249
-
**CONTEXTFORGE-006: Teams API Returns 422 Instead of 400 for Validation Errors**
1250
-
The `POST /teams` endpoint returns HTTP 422 (Unprocessable Entity) for validation errors instead of 400 (Bad Request). See [`docs/upstream-bugs/contextforge-006-teams-validation-error-code.md`](docs/upstream-bugs/contextforge-006-teams-validation-error-code.md).
1250
+
**CONTEXTFORGE-008: Agent Bearer Auth Field Name Mismatch**
1251
+
The A2A agent API still expects `auth_token` for bearer auth instead of the SDK’s `auth_value` field. See [`docs/upstream-bugs/contextforge-008-agent-auth-field-name.md`](docs/upstream-bugs/contextforge-008-agent-auth-field-name.md).
1252
+
1253
+
**CONTEXTFORGE-010: Team ID Filter Returns Permission Error**
1254
+
The tools list API still returns a `403` for some team-scoped filter combinations that should succeed. See [`docs/upstream-bugs/contextforge-010-team-id-filter-permission-error.md`](docs/upstream-bugs/contextforge-010-team-id-filter-permission-error.md).
1255
+
1256
+
Resolved in current RC1 validation: `CONTEXTFORGE-004` team endpoint auth failures no longer reproduce. Historical and resolved reports remain under [`docs/upstream-bugs/`](docs/upstream-bugs/).
1251
1257
1252
1258
All bug reports include root cause analysis, proposed solutions, and workarounds.
**Affected Version:** v0.8.0, v1.0.0-BETA-1, v1.0.0-BETA-2 (fixed in v1.0.0-RC1)
6
6
**Severity:** High
7
-
**Status:**Confirmed in v1.0.0-BETA-2 (still valid)
7
+
**Status:**FIXED in v1.0.0-RC1
8
8
**Reported:** 2025-11-09
9
-
**Last Validated:** 2026-02-06
9
+
**Last Validated:** 2026-03-05
10
10
11
11
## Summary
12
12
13
-
Individual team resource endpoints (`GET/PUT/DELETE /teams/{id}/*`) reject valid JWT authentication tokens with "Invalid token" (401 Unauthorized) errors, despite the same token working correctly for team list and create operations. This prevents any read, update, or delete operations on individual teams.
13
+
In affected versions, individual team resource endpoints (`GET/PUT/DELETE /teams/{id}/*`) reject valid JWT authentication tokens with "Invalid token" (401 Unauthorized) errors, despite the same token working correctly for team list and create operations. This issue is fixed in ContextForge v1.0.0-RC1.
-**Still Valid?** No. The issue no longer reproduces in the RC1 integration harness.
454
+
-**Observed behavior:**`GET`, `PUT`, `DELETE`, member management, invitations, and discovery routes all completed successfully under authenticated SDK calls.
455
+
-**SDK action:** Removed the `CONTEXTFORGE-004` skips from team integration coverage and re-enabled the affected scenarios.
456
+
457
+
### Evidence
458
+
459
+
-`TestTeamsService_BasicCRUD` passed for get, update, and delete operations.
460
+
-`TestTeamsService_Members`, `TestTeamsService_Invitations`, and `TestTeamsService_Discovery` all passed against the RC1 harness.
461
+
- The full `make integration-test-all` run passed with the RC1 harness after switching tests to reuse the pre-generated setup token.
462
+
449
463
## v1.0.0-BETA-2 Revalidation Notes
450
464
451
465
**Validated:** 2026-02-06
452
466
453
467
-**Still Valid?** Yes. Individual teams endpoints remain broken under valid auth contexts.
454
468
-**Is it actually a bug?** Yes. Authenticated users should not receive auth failures for valid routes/permissions.
455
469
456
-
### Evidence
470
+
### Historical Evidence
457
471
458
472
-`teams.get_team(...)` still raises authentication errors in live checks.
459
473
- Route order still allows `/{team_id}` to shadow `/discover` in `mcpgateway/routers/teams.py`.
0 commit comments