32 lines
4.2 KiB
Markdown
32 lines
4.2 KiB
Markdown
# Related save-pattern review
|
|
|
|
This is a scoped source/caller review. It does not certify every editable record or turn a missing
|
|
revision property alone into a newly reproduced defect.
|
|
|
|
| Surface | Finding and disposition |
|
|
| --- | --- |
|
|
| Career manual editor / history restore | Exact RD21 stale replacement reproduced; all canonical writes now require the editor's source revision and participate in atomic canonical/projection persistence. |
|
|
| Career parse / reviewed imports | Same replacement service and split projection boundary. Included in the correction, with reviewed-source revision and rollback tests for application metadata. Upload/rebuild/improve processing produces pending-review runs rather than independently applying canonical data. |
|
|
| Generic job edit | Exact RD21 stale snapshot reproduced. The shared dialog reaches Table and workspace edit/notes entry points. The generic endpoint now compares source revision and atomically guards final commit. |
|
|
| Cover letter / application drafts / structured tailored CV | Additional SQLite tests reproduce actual acknowledged-text loss. Included in the correction; guards cover both current fields and append-only history/related draft rows. Legacy tailored text replacement fails closed too. |
|
|
| Job lifecycle, rules, reminders, enrichment and attachment-derived flags | Narrow server commands/background transformations, rather than generic client snapshots. They share the JobApplication EF token/version advancement so overlapping database writes cannot silently commit stale tracked values. This does not claim every possible field-command ordering is a full-editor merge contract. |
|
|
| Dashboard preferences | Already uses the submitted layout revision and an owner/revision-conditioned ExecuteUpdate. Existing dashboard conflict/persistence contracts remain applicable; this is a separate owner from Career/jobs. |
|
|
| CV Builder variants | Already requires expected version with an EF concurrency token and append-only settings history. Existing stale save/restore and null-as-inherit override/frozen contracts remain. Canonical changes do not rewrite variant settings/history. |
|
|
| Email drafts | Existing owner/revision-conditioned updates and send-attempt reservation remain separate. They are not silently redirected through the new job snapshot contract. |
|
|
| Submitted documents/packages | Existing immutable snapshot/binary archive remains separate from current Career/job/cover-letter edits. No new mutation of captured packages or archived binaries is introduced. Native archive and document regressions are required independently. |
|
|
| Identity and Settings | Identity uses its existing Identity concurrency stamp. The obsolete identity endpoint's CV-projection bypass is explicitly closed. Individual language/privacy/rules/notification settings retain their existing contracts; no new RD21 runtime failure in these separate records was established here. Their broader multi-session/human/provider criteria are not accepted by this repair. |
|
|
| Company/contact and other independent editable records | Source patterns were inspected for shared infrastructure. They do not use the defective Career aggregate service or generic job snapshot mapping. No new cross-record stale-loss reproduction is claimed; complete multi-session acceptance of every separate editor remains outside this bounded repair. |
|
|
|
|
The browser extension/bookmarklet remains a create/capture consumer rather than a generic job
|
|
replacement client. Local extension contracts pass separately; this is not an installed-device test.
|
|
|
|
Generic job PUT continues to preserve ordinary notes versus the embedded application answer, tenant
|
|
company associations, existing salary normalization and lifecycle semantics. Rejection must leave
|
|
opportunity and timeline state unchanged. These are tested through actual SQLite rows, not inferred
|
|
from HTTP success alone.
|
|
|
|
Remaining distinct concerns include job creation-intent idempotency, actual MariaDB behavior,
|
|
historical recovery, provider journeys, storage/backup/rollback, human accessibility/device/output
|
|
acceptance, and the original low duplicate-reminder-GET/raw-Created terminology observations. No
|
|
Phase 10 deletion, new integration, model activation or production action is authorized by this review.
|