docs(launch): reconcile tracker — mark shipped rep/source filters + 3 stale-deferred items
- rep + source multi-select filters → SHIPPED inb97f6e94- Waiting List + Maintenance Log tabs → SHIPPED in8be7a6e2(were still listed deferred) - contract/reservation paper-upload misroute fix → SHIPPED ind98aa5cc(was still listed deferred) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -91,20 +91,24 @@ everything else is post-launch polish unless promoted.
|
|||||||
spec's "on every report" — Operational uses a different
|
spec's "on every report" — Operational uses a different
|
||||||
"vs period start" baseline; reconcile the two semantics if a single
|
"vs period start" baseline; reconcile the two semantics if a single
|
||||||
consistent comparison is wanted.
|
consistent comparison is wanted.
|
||||||
- ❌ **Rep multi-select filter** — exists implicitly via the single-rep
|
- ✅ **Rep multi-select filter** — **SHIPPED in b97f6e94** (Sales).
|
||||||
leaderboard collapse, but no explicit multi-select dropdown.
|
Dynamic "Assigned to" multi-select populated from a window-independent
|
||||||
- ❌ **Source multi-select filter** — Sales has lead-category + outcome
|
`getRepFilterOptions` (distinct assigned reps port-wide); hidden when
|
||||||
filters; the spec also calls for a generic `source` filter (website /
|
the port has no assigned interests.
|
||||||
referral / broker / manual) on every report.
|
- ✅ **Source multi-select filter** — **SHIPPED in b97f6e94** (Sales).
|
||||||
|
Static Source multi-select (website / manual / referral / broker /
|
||||||
|
other) allowlisted against `SOURCES`. Both filters thread through the 5
|
||||||
|
filtered Sales queries via a pure, unit-tested `parseSalesFilters`.
|
||||||
|
_Still open: replicate both on Operational + the other report pages._
|
||||||
- ❌ **Empty-state copy per report** — currently shows a skeleton; spec
|
- ❌ **Empty-state copy per report** — currently shows a skeleton; spec
|
||||||
wants a "this report needs data first" hint pointing at the right
|
wants a "this report needs data first" hint pointing at the right
|
||||||
onboarding step.
|
onboarding step.
|
||||||
|
|
||||||
#### Phase 2 — Sales report gaps
|
#### Phase 2 — Sales report gaps
|
||||||
|
|
||||||
- ❌ **Operational-style filter set on Sales** — beyond stage / lead-cat /
|
- ✅ **Operational-style filter set on Sales** — stage / lead-cat /
|
||||||
outcome that shipped, the cross-cutting filters above (period
|
outcome + period comparison + rep multi-select + source multi-select
|
||||||
comparison, rep multi-select, source multi-select) are missing.
|
all shipped (rep/source in b97f6e94). Sales filter set is complete.
|
||||||
|
|
||||||
#### Phase 2 — Operational report gaps
|
#### Phase 2 — Operational report gaps
|
||||||
|
|
||||||
@@ -585,19 +589,16 @@ unproven full builds onto a same-day prod launch.
|
|||||||
6 of 10 entities, per-role PII column whitelist. Architecture decided
|
6 of 10 entities, per-role PII column whitelist. Architecture decided
|
||||||
(per-column expression map + generic Drizzle query composer); spec
|
(per-column expression map + generic Drizzle query composer); spec
|
||||||
deferred. Basic builder ships as-is.
|
deferred. Basic builder ships as-is.
|
||||||
- **Berth Waiting List** — un-hide the existing `WaitingListManager`
|
- **Berth Waiting List** — ✅ **SHIPPED in 8be7a6e2.** `WaitingListManager`
|
||||||
(component + API already built) + build the availability-triggered
|
tab un-hidden + wired. _Still deferred: the availability-triggered
|
||||||
next-in-line notification (today only a `notifyPref` column is stored;
|
next-in-line notification (today only a `notifyPref` column is stored;
|
||||||
no sender exists). Component currently orphaned; berth tab removed.
|
no sender exists)._
|
||||||
- **Berth Maintenance Log** — backend (API + service) exists; needs a UI
|
- **Berth Maintenance Log** — ✅ **SHIPPED in 8be7a6e2.** UI tab mirroring
|
||||||
tab mirroring the waiting-list manager.
|
the waiting-list manager, on the existing API + service.
|
||||||
- **Contract/Reservation paper-upload misroute (BUG)** — the "Upload
|
- **Contract/Reservation paper-upload misroute (BUG)** — ✅ **SHIPPED in
|
||||||
paper-signed copy" button on the contract/reservation tabs POSTs to the
|
d98aa5cc.** Added contract/reservation paper-upload endpoints +
|
||||||
EOI-only endpoint (`/external-eoi`), filing a paper-signed
|
pointed `ExternalEoiUploadDialog` at the right one per docType, so a
|
||||||
contract/reservation as an EOI. Fix: add contract/reservation
|
paper-signed contract/reservation no longer files as an EOI.
|
||||||
paper-upload endpoints + point `ExternalEoiUploadDialog` at the right
|
|
||||||
one per docType. ("Mark as signed without file" already works for all
|
|
||||||
three types.)
|
|
||||||
- **Marketing + Financial reports** — remain unbuilt + now hidden; gated
|
- **Marketing + Financial reports** — remain unbuilt + now hidden; gated
|
||||||
on Init 1b (website UTM/inquiry cutover) and Init 1c (invoices-module
|
on Init 1b (website UTM/inquiry cutover) and Init 1c (invoices-module
|
||||||
decision) respectively.
|
decision) respectively.
|
||||||
|
|||||||
Reference in New Issue
Block a user