docs: consolidate repository guides and preserve audit history
This commit is contained in:
@@ -4,7 +4,7 @@ namespace JobTrackerApi.Models;
|
||||
// Unlike AiWorkspaceNote (one row per (owner, job, type), overwritten on regenerate — a cache), this
|
||||
// keeps EVERY generation so the user can restore, compare, reuse, or delete past outputs. Suggestion
|
||||
// only: an interaction never mutates the master profile, a CV variant, or the application itself.
|
||||
// docs/architecture/ai-career-assistant.md.
|
||||
// docs/ai/architecture.md.
|
||||
public sealed class AiInteraction
|
||||
{
|
||||
public int Id { get; set; }
|
||||
|
||||
@@ -9,7 +9,7 @@ namespace JobTrackerApi.Models;
|
||||
// System items carry a stable SystemKey and (usually) an AutoSignal: the same readiness signal the
|
||||
// /readiness endpoint already computes. When the signal is satisfied the item auto-completes, so the
|
||||
// checklist and readiness can never disagree — readiness became the calculation, this is the surface.
|
||||
// docs/architecture/application-workspace.md.
|
||||
// docs/architecture/overview.md.
|
||||
public sealed class ApplicationChecklistItem
|
||||
{
|
||||
public int Id { get; set; }
|
||||
|
||||
@@ -4,7 +4,7 @@ using System.Text.Json;
|
||||
namespace JobTrackerApi.Models;
|
||||
|
||||
// Phase 3: relational children of CareerProfile — the editable master career profile.
|
||||
// See docs/architecture/career-profile-model.md.
|
||||
// See docs/architecture/overview.md.
|
||||
//
|
||||
// Design notes shared by all child entities:
|
||||
// - OwnerUserId is denormalized so the tenant global query filter applies directly (same pattern
|
||||
|
||||
@@ -12,7 +12,7 @@ public sealed class CareerProfile
|
||||
// Phase 3: ProfileJson is now a DERIVED projection of the relational children + LongTailJson,
|
||||
// serialized into the StructuredCvProfile shape and kept in sync on every save so the legacy
|
||||
// read paths (CV rendering, tailoring, match-score) keep working unchanged. It is no longer an
|
||||
// independently editable source. See docs/architecture/career-profile-model.md §4.
|
||||
// independently editable source. See docs/architecture/overview.md.
|
||||
public string ProfileJson { get; set; } = string.Empty;
|
||||
|
||||
// The editable long tail that is not worth a relational table: contact, summary, interests,
|
||||
|
||||
@@ -3,7 +3,7 @@ namespace JobTrackerApi.Models;
|
||||
// A theme is DATA, not code. The renderer (ThemedCvRenderer) has one render path; every visual
|
||||
// difference between themes is expressed by the fields below. Adding a theme = adding one CvTheme to
|
||||
// CvThemeCatalog — no renderer changes. This is the core Phase 4 architectural rule
|
||||
// ("Do NOT hardcode HTML templates"). docs/architecture/cv-theme-engine.md.
|
||||
// ("Do NOT hardcode HTML templates"). docs/architecture/frontend.md.
|
||||
public sealed class CvTheme
|
||||
{
|
||||
public string Id { get; init; } = string.Empty;
|
||||
|
||||
@@ -6,7 +6,7 @@ namespace JobTrackerApi.Models;
|
||||
// sections show, in what order, with what per-item overrides, rendered through a chosen theme with
|
||||
// layout/colour/font settings. The career data is never duplicated here — the variant stores only
|
||||
// selections + overrides keyed by the master profile's stable ItemKeys, plus builder preferences.
|
||||
// docs/architecture/cv-builder.md.
|
||||
// docs/architecture/overview.md.
|
||||
public sealed class CvVariant
|
||||
{
|
||||
public int Id { get; set; }
|
||||
|
||||
Reference in New Issue
Block a user