-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcoverage.json
More file actions
70 lines (70 loc) · 3.18 KB
/
coverage.json
File metadata and controls
70 lines (70 loc) · 3.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
{
"kind": "coverage_report",
"version": "1.0",
"generatedAt": "2026-02-05T19:33:47.482Z",
"sources": {
"buildRequest": true,
"implementationPlan": true
},
"requirements": {
"total": 3,
"implemented": 2,
"items": [
{
"id": "REQ-1",
"summary": "Backend: Ensure there is a stable, query-only method for resolving a user’s organization/group memberships (e.g., implement `getGroupsByUser(user : Principal)` and/or `getGroupsByCaller()`), using the existing membership source of truth (`profileMembers`/`getProfileMemberships`). This method must not cause the Profile page to fail to render due to authorization traps during membership resolution.",
"status": "unknown",
"plannedFiles": [],
"matchedFiles": []
},
{
"id": "REQ-2",
"summary": "Frontend: Update the Profile loading flow used by the Profile view (currently within `frontend/src/pages/HomePage.tsx` and the query logic in `frontend/src/hooks/useQueries.ts`) to use the backend’s membership-resolution method and handle authorization/rejection errors without breaking rendering. The Profile view must reliably choose a profile when the user has exactly one membership, prompt the organization chooser when the user has multiple memberships and none is selected, and show a user-visible fallback state (not a blank screen) when loading fails.",
"status": "implemented",
"plannedFiles": [
"frontend/src/hooks/useQueries.ts",
"frontend/src/pages/HomePage.tsx",
"frontend/src/components/ProfileLoadFallbackCard.tsx"
],
"matchedFiles": [
"frontend/src/hooks/useQueries.ts",
"frontend/src/pages/HomePage.tsx",
"frontend/src/components/ProfileLoadFallbackCard.tsx"
]
},
{
"id": "REQ-3",
"summary": "Frontend: Add defensive error handling in `useProfile()` and `useGetCallerUserProfile()` (and any other profile/membership fetches used by the Profile view) so that backend authorization traps/rejections are converted into safe return values (e.g., `null`/`[]`) and do not propagate as uncaught query errors that prevent the Profile view from determining membership-based routing.",
"status": "implemented",
"plannedFiles": [
"frontend/src/hooks/useQueries.ts",
"frontend/src/hooks/useQueries.ts",
"frontend/src/pages/HomePage.tsx"
],
"matchedFiles": [
"frontend/src/hooks/useQueries.ts",
"frontend/src/hooks/useQueries.ts",
"frontend/src/pages/HomePage.tsx"
]
}
]
},
"changedFiles": [
"backend/main.mo",
"build-request.json",
"feature_evidence.json",
"frontend-file-summaries.txt",
"frontend-implementation-plan.json",
"frontend/src/backend.d.ts",
"frontend/src/backend.ts",
"frontend/src/components/ProfileLoadFallbackCard.tsx",
"frontend/src/declarations/backend.did.d.ts",
"frontend/src/declarations/backend.did.js",
"frontend/src/hooks/useQueries.ts",
"frontend/src/pages/HomePage.tsx",
"project_state.json",
"scratch/component-selection.json",
"spec.md",
"spec_vs_diff_report.json"
]
}