docs(6208): the remaining frontend comments drop milestone, step and rule citations
CI & Build / Python lint (push) Successful in 9s
CI & Build / Plugin hooks (push) Successful in 22s
CI & Build / TypeScript typecheck (push) Successful in 1m0s
CI & Build / integration (push) Successful in 1m55s
CI & Build / Python tests (push) Successful in 2m20s
CI & Build / Build & push image (push) Successful in 1m7s

Components, stores, api clients, router, types and shared CSS now state what
each piece is and why, without the milestone that introduced it. diff.ts
names its consumers instead of the copy history; stores/notes and tasks state
their current scope instead of the cleanup that set it; theme.css states the
token practice instead of the sweep that established it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-21 21:14:03 -04:00
co-authored by Claude Opus 5.5
parent 699a4cd986
commit bdd803537b
45 changed files with 80 additions and 95 deletions
+1 -1
View File
@@ -6,7 +6,7 @@ import { useToastStore } from "@/stores/toast";
import { apiErrorMessage } from "@/api/client";
/**
* The global area catalog (milestone 307). Shared by every project, so it is
* The global area catalog. Shared by every project, so it is
* fetched ONCE per session rather than per project — the whole point of the
* table is that it is the same list everywhere.
*/
+1 -1
View File
@@ -6,7 +6,7 @@ import { useToastStore } from "@/stores/toast";
import { apiErrorMessage } from "@/api/client";
/**
* The moment catalog and this install's mappings (milestone 458 step 6).
* The moment catalog and this install's mappings.
*
* Shared by the rule editor's picker and the Settings section, so the two
* cannot offer different moments. The catalog is the product's and changes
+2 -4
View File
@@ -4,10 +4,8 @@ import { apiGet, apiPost, apiPut, apiDelete } from "@/api/client";
import { useToastStore } from "@/stores/toast";
import type { Note } from "@/types/note";
// Single-note + mutation surface. The list/filter/sort/pagination surface that
// backed the removed /notes list view was dropped in the 2026-06-02 drift-audit
// cleanup (no consumers — KnowledgeView and the editors use single-entity and
// mutation methods only).
// Single-note + mutation surface. There is no list/filter/sort here:
// KnowledgeView and the editors use single-entity and mutation methods only.
export const useNotesStore = defineStore("notes", () => {
const currentNote = ref<Note | null>(null);
const loading = ref(false);
+1 -1
View File
@@ -4,7 +4,7 @@ import * as api from "@/api/platforms";
import type { Platform } from "@/api/platforms";
/**
* The global platform catalog (milestone 463). Shared by every project, so
* The global platform catalog. Shared by every project, so
* it is fetched once per session — as the canonical-area catalog is.
*/
export const usePlatformsStore = defineStore("platforms", () => {
+1 -1
View File
@@ -142,7 +142,7 @@ export const useRulebooksStore = defineStore("rulebooks", () => {
return rule;
}
/** After a move (milestone 414): take the rule out of whichever topic list
/** After a move: take the rule out of whichever topic list
* held it, and into its new topic's list if that one is loaded. A rule moved
* onto a project belongs to no topic list at all. */
function placeMovedRule(rule: Rule) {
+2 -3
View File
@@ -14,9 +14,8 @@ interface IssueFields {
arose_from_id?: number | null;
}
// Single-task + mutation surface. The list/filter/sort/pagination surface that
// backed the removed /tasks list view was dropped in the 2026-06-02 drift-audit
// cleanup (no consumers — ProjectView's kanban keeps its own local task list).
// Single-task + mutation surface. There is no list/filter/sort here:
// ProjectView's kanban keeps its own local task list.
export const useTasksStore = defineStore("tasks", () => {
const currentTask = ref<Task | null>(null);
const loading = ref(false);