`sdlc` 0.5.1 rewrites every feature manifest on read - `sdlc state` alone did this - so the migration cannot be avoided, only recorded. It is idempotent: repeated reads produce no further churn (verified by checksum). What schema 4 drops, so it is findable later: - feature-level `id` (now derived from `slug`) and `updated_at`. - per-task history: `created_at` is re-stamped with the migration instant and `completed_at` is nulled, so task timing before 2026-08-16 is not recoverable from these files. - m9-community-profile-sync additionally loses 18 phase-history and artifact timestamps (`entered`/`exited`/`approved_at`, 2026-03-04). The pre-migration record is this commit's parent: git show HEAD~1:.sdlc/features/m9-community-profile-sync/manifest.yaml Committed separately from any state transition so the loss is one reviewable diff rather than noise inside a feature change. `.sdlc/` is CLI-owned; nothing here was hand-edited.
116 lines
4.2 KiB
YAML
116 lines
4.2 KiB
YAML
slug: p1-feedback-loop-ux
|
|
title: Feedback Loop UX
|
|
description: Mute/hide/like controls with immediate next-refresh reflection; negative feedback visible in ranking within one refresh cycle
|
|
phase: released
|
|
created_at: 2026-03-03T06:30:00.907261Z
|
|
updated_at: 2026-03-04T06:33:27.668133Z
|
|
artifacts:
|
|
- artifact_type: spec
|
|
status: approved
|
|
path: .sdlc/features/p1-feedback-loop-ux/spec.md
|
|
created_at: 2026-03-04T06:29:01.687051Z
|
|
approved_at: 2026-03-04T06:30:38.778387Z
|
|
rejected_at: null
|
|
rejection_reason: null
|
|
approved_by: null
|
|
- artifact_type: design
|
|
status: approved
|
|
path: .sdlc/features/p1-feedback-loop-ux/design.md
|
|
created_at: 2026-03-04T06:29:29.322506Z
|
|
approved_at: 2026-03-04T06:30:47.769124Z
|
|
rejected_at: null
|
|
rejection_reason: null
|
|
approved_by: null
|
|
- artifact_type: tasks
|
|
status: approved
|
|
path: .sdlc/features/p1-feedback-loop-ux/tasks.md
|
|
created_at: 2026-03-04T06:29:46.819779Z
|
|
approved_at: 2026-03-04T06:30:55.766838Z
|
|
rejected_at: null
|
|
rejection_reason: null
|
|
approved_by: null
|
|
- artifact_type: qa_plan
|
|
status: approved
|
|
path: .sdlc/features/p1-feedback-loop-ux/qa-plan.md
|
|
created_at: 2026-03-04T06:30:11.355602Z
|
|
approved_at: 2026-03-04T06:31:03.847855Z
|
|
rejected_at: null
|
|
rejection_reason: null
|
|
approved_by: null
|
|
- artifact_type: review
|
|
status: approved
|
|
path: .sdlc/features/p1-feedback-loop-ux/review.md
|
|
created_at: 2026-03-04T06:31:45.392036Z
|
|
approved_at: 2026-03-04T06:31:48.797146Z
|
|
rejected_at: null
|
|
rejection_reason: null
|
|
approved_by: null
|
|
- artifact_type: audit
|
|
status: approved
|
|
path: .sdlc/features/p1-feedback-loop-ux/audit.md
|
|
created_at: 2026-03-04T06:32:21.322737Z
|
|
approved_at: 2026-03-04T06:32:24.430515Z
|
|
rejected_at: null
|
|
rejection_reason: null
|
|
approved_by: null
|
|
- artifact_type: qa_results
|
|
status: approved
|
|
path: .sdlc/features/p1-feedback-loop-ux/qa-results.md
|
|
created_at: 2026-03-04T06:33:17.060203Z
|
|
approved_at: 2026-03-04T06:33:20.669122Z
|
|
rejected_at: null
|
|
rejection_reason: null
|
|
approved_by: null
|
|
tasks: []
|
|
comments:
|
|
- id: C1
|
|
author: null
|
|
body: 'Implementation of feedback.rs is complete with all types, methods, and unit tests. However, shared files (db/mod.rs, db/from_parts.rs, entities/user_state.rs) are being concurrently modified by another agent process, causing edits to be reverted. The feedback.rs file itself is stable. Remaining integration work requires: (1) adding skip_counter field to TidalDb struct in mod.rs and from_parts.rs, (2) adding remove_like/remove_save to user_state.rs, (3) adding mod feedback and re-exports to mod.rs and lib.rs. These are simple one-line additions that can be applied once the concurrent agent finishes.'
|
|
flag: fyi
|
|
target:
|
|
kind: feature
|
|
created_at: 2026-03-04T06:18:05.233679Z
|
|
- id: C2
|
|
author: null
|
|
body: 'RESOLVED: The concurrent agent interference from C1 has been resolved. All wiring is now complete: skip_counter field added to TidalDb struct (mod.rs + from_parts.rs), pub mod feedback declared in db/mod.rs, FeedbackAction/FeedbackState re-exported in lib.rs, remove_like/remove_save added to UserStateIndex. Full test suite passes: 1345 lib tests + 21 feedback unit tests + 10 integration tests (p1_feedback_loop.rs). Blocker C1 is no longer applicable.'
|
|
flag: decision
|
|
target:
|
|
kind: feature
|
|
created_at: 2026-03-04T06:27:58.003110Z
|
|
next_comment_seq: 2
|
|
blockers: []
|
|
phase_history:
|
|
- phase: draft
|
|
entered: 2026-03-03T06:30:00.907261Z
|
|
exited: 2026-03-04T06:30:38.795990Z
|
|
- phase: specified
|
|
entered: 2026-03-04T06:30:38.795990Z
|
|
exited: 2026-03-04T06:30:47.769884Z
|
|
- phase: planned
|
|
entered: 2026-03-04T06:30:47.769884Z
|
|
exited: 2026-03-04T06:30:55.767491Z
|
|
- phase: ready
|
|
entered: 2026-03-04T06:30:55.767491Z
|
|
exited: 2026-03-04T06:31:03.850068Z
|
|
- phase: implementation
|
|
entered: 2026-03-04T06:31:03.850068Z
|
|
exited: 2026-03-04T06:31:48.798003Z
|
|
- phase: review
|
|
entered: 2026-03-04T06:31:48.798003Z
|
|
exited: 2026-03-04T06:32:21.323365Z
|
|
- phase: audit
|
|
entered: 2026-03-04T06:32:21.323365Z
|
|
exited: 2026-03-04T06:32:24.431450Z
|
|
- phase: qa
|
|
entered: 2026-03-04T06:32:24.431450Z
|
|
exited: 2026-03-04T06:33:20.670160Z
|
|
- phase: merge
|
|
entered: 2026-03-04T06:33:20.670160Z
|
|
exited: 2026-03-04T06:33:27.668133Z
|
|
- phase: released
|
|
entered: 2026-03-04T06:33:27.668133Z
|
|
exited: null
|
|
dependencies: []
|
|
archived: false
|
|
schema_version: 4
|