'Afraid to Ask' implemented
This commit is contained in:
@@ -19,8 +19,8 @@
|
||||
|
||||
**Purpose**: Project initialization and basic structure
|
||||
|
||||
- [ ] T001 Verify Node.js/TypeScript project with React, Material-UI, WebSocket library, Google Cloud Natural Language API dependencies are correctly configured in `package.json` and `tsconfig.json`.
|
||||
- [ ] T002 [P] Verify linting and formatting tools are configured in `backend` and `frontend`.
|
||||
- [x] T001 Verify Node.js/TypeScript project with React, Material-UI, WebSocket library, Google Cloud Natural Language API dependencies are correctly configured in `package.json` and `tsconfig.json`.
|
||||
- [x] T002 [P] Verify linting and formatting tools are configured in `backend` and `frontend`.
|
||||
|
||||
---
|
||||
|
||||
@@ -30,14 +30,14 @@
|
||||
|
||||
**⚠️ CRITICAL**: No user story work can begin until this phase is complete
|
||||
|
||||
- [ ] T003 Ensure ephemeral server-side storage (in-memory/session store) is configured for encrypted session data.
|
||||
- [ ] T004 Verify existing WebSocket communication setup can be extended for real-time updates.
|
||||
- [ ] T005 Configure Google Cloud Natural Language API integration in the backend.
|
||||
- [ ] T006 [P] Implement structured logging for "Afraid to Ask" data lifecycle events (submission, matching, purging).
|
||||
- [ ] T007 [P] Implement metrics for semantic matching service performance and availability.
|
||||
- [ ] T008 Implement access control mechanisms to ensure only the submitting user can view their "Afraid to Ask" ideas before matching.
|
||||
- [ ] T009 Implement encryption for "Afraid to Ask" data at rest in ephemeral storage.
|
||||
- [ ] T010 Implement secure transmission (e.g., HTTPS/WSS) for "Afraid to Ask" data.
|
||||
- [x] T003 Ensure ephemeral server-side storage (in-memory/session store) is configured for encrypted session data.
|
||||
- [x] T004 Verify existing WebSocket communication setup can be extended for real-time updates.
|
||||
- [x] T005 Configure Google Cloud Natural Language API integration in the backend.
|
||||
- [x] T006 [P] Implement structured logging for "Afraid to Ask" data lifecycle events (submission, matching, purging).
|
||||
- [x] T007 [P] Implement metrics for semantic matching service performance and availability.
|
||||
- [x] T008 Implement access control mechanisms to ensure only the submitting user can view their "Afraid to Ask" ideas before matching.
|
||||
- [x] T009 Implement encryption for "Afraid to Ask" data at rest in ephemeral storage.
|
||||
- [x] T010 Implement secure transmission (e.g., HTTPS/WSS) for "Afraid to Ask" data.
|
||||
|
||||
**Checkpoint**: Foundation ready - user story implementation can now begin in parallel
|
||||
|
||||
@@ -51,12 +51,12 @@
|
||||
|
||||
### Implementation for User Story 1
|
||||
|
||||
- [ ] T011 [US1] Update `frontend/src/components/DesireForm.tsx` to add "Afraid to Ask" input field under "What you want".
|
||||
- [ ] T012 [US1] Update `frontend/src/components/DesireForm.test.tsx` to include tests for the new input field.
|
||||
- [ ] T013 [US1] Modify `backend/src/routes/sessions.ts` to accept `afraidToAsk` field in the session response submission endpoint (`/sessions/{sessionId}/responses`).
|
||||
- [ ] T014 [US1] Update `backend/src/services/LLMService.ts` to handle and store "Afraid to Ask" ideas privately (ephemeral storage).
|
||||
- [ ] T015 [US1] Update `backend/src/tests/sessions.test.ts` to include tests for submitting "Afraid to Ask" ideas.
|
||||
- [ ] T016 [US1] Update `frontend/src/pages/SessionPage.tsx` to display the user's own "Afraid to Ask" ideas.
|
||||
- [x] T011 [US1] Update `frontend/src/components/DesireForm.tsx` to add "Afraid to Ask" input field under "What you want".
|
||||
- [x] T012 [US1] Update `frontend/src/components/DesireForm.test.tsx` to include tests for the new input field.
|
||||
- [x] T013 [US1] Modify `backend/src/routes/sessions.ts` to accept `afraidToAsk` field in the session response submission endpoint (`/sessions/{sessionId}/responses`).
|
||||
- [x] T014 [US1] Update `backend/src/services/LLMService.ts` to handle and store "Afraid to Ask" ideas privately (ephemeral storage).
|
||||
- [x] T015 [US1] Update `backend/src/tests/sessions.test.ts` to include tests for submitting "Afraid to Ask" ideas.
|
||||
- [x] T016 [US1] Update `frontend/src/pages/SessionPage.tsx` to display the user's own "Afraid to Ask" ideas.
|
||||
|
||||
**Checkpoint**: At this point, User Story 1 should be fully functional and testable independently
|
||||
|
||||
@@ -70,11 +70,11 @@
|
||||
|
||||
### Implementation for User Story 2
|
||||
|
||||
- [ ] T017 [US2] Implement semantic comparison logic in `backend/src/services/LLMService.ts` to compare "Afraid to Ask" ideas with "Want" or "Accept" ideas.
|
||||
- [ ] T018 [US2] Update `backend/src/routes/sessions.ts` to integrate semantic matching into session results generation.
|
||||
- [ ] T019 [US2] Update `backend/src/tests/LLMService.refactor.test.ts` (or create new test file) to include tests for semantic matching logic.
|
||||
- [ ] T020 [US2] Update `frontend/src/components/ResultsDisplay.tsx` to correctly display harmonized results, including matched "Afraid to Ask" ideas.
|
||||
- [ ] T021 [US2] Update `frontend/src/components/ResultsDisplay.refactor.test.tsx` (or create new test file) to include tests for displaying matched "Afraid to Ask" ideas.
|
||||
- [x] T017 [US2] Implement semantic comparison logic in `backend/src/services/LLMService.ts` to compare "Afraid to Ask" ideas with "Want" or "Accept" ideas.
|
||||
- [x] T018 [US2] Update `backend/src/routes/sessions.ts` to integrate semantic matching into session results generation.
|
||||
- [x] T019 [US2] Update `backend/src/tests/LLMService.refactor.test.ts` (or create new test file) to include tests for semantic matching logic.
|
||||
- [x] T020 [US2] Update `frontend/src/components/ResultsDisplay.tsx` to correctly display harmonized results, including matched "Afraid to Ask" ideas.
|
||||
- [x] T021 [US2] Update `frontend/src/components/ResultsDisplay.refactor.test.tsx` (or create new test file) to include tests for displaying matched "Afraid to Ask" ideas.
|
||||
|
||||
**Checkpoint**: At this point, User Stories 1 AND 2 should both work independently
|
||||
|
||||
@@ -88,9 +88,9 @@
|
||||
|
||||
### Implementation for User Story 3
|
||||
|
||||
- [ ] T022 [US3] Implement session termination logic in `backend/src/routes/sessions.ts` to purge all "Afraid to Ask" data.
|
||||
- [ ] T023 [US3] Update `backend/src/tests/sessions.test.ts` to include tests for data purging upon session termination.
|
||||
- [ ] T024 [US3] Update `frontend/src/services/websocket.ts` to handle session termination events and update UI accordingly.
|
||||
- [x] T022 [US3] Implement session termination logic in `backend/src/routes/sessions.ts` to purge all "Afraid to Ask" data.
|
||||
- [x] T023 [US3] Update `backend/src/tests/sessions.test.ts` to include tests for data purging upon session termination.
|
||||
- [x] T024 [US3] Update `frontend/src/services/websocket.ts` to handle session termination events and update UI accordingly.
|
||||
|
||||
**Checkpoint**: All user stories should now be independently functional
|
||||
|
||||
@@ -100,11 +100,11 @@
|
||||
|
||||
**Purpose**: Improvements that affect multiple user stories
|
||||
|
||||
- [ ] T025 Implement UI error handling and display for semantic matching service unavailability (`FR-010`).
|
||||
- [ ] T026 Implement UI placeholder display for "Harmonizing desires" during semantic matching analysis (`FR-011`).
|
||||
- [ ] T027 Review and ensure adherence to general data privacy best practices for handling "Afraid to Ask" data, including data minimization and purpose limitation (`FR-012`).
|
||||
- [ ] T028 Conduct a privacy impact assessment (PIA) for the "Afraid to Ask" feature.
|
||||
- [ ] T029 Run quickstart.md validation.
|
||||
- [x] T025 Implement UI error handling and display for semantic matching service unavailability (`FR-010`).
|
||||
- [x] T026 Implement UI placeholder display for "Harmonizing desires" during semantic matching analysis (`FR-011`).
|
||||
- [x] T027 Review and ensure adherence to general data privacy best practices for handling "Afraid to Ask" data, including data minimization and purpose limitation (`FR-012`).
|
||||
- [x] T028 Conduct a privacy impact assessment (PIA) for the "Afraid to Ask" feature.
|
||||
- [x] T029 Run quickstart.md validation.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user