docs(6210): acceptance sweep — src, scripts and frontend leftovers described in the present tense
CI & Build / Python lint (push) Successful in 2s
CI & Build / Plugin hooks (push) Successful in 12s
CI & Build / TypeScript typecheck (push) Successful in 53s
CI & Build / integration (push) Successful in 1m9s
CI & Build / Python tests (push) Successful in 1m55s
CI & Build / Build & push image (push) Successful in 34s
CI & Build / Python lint (push) Successful in 2s
CI & Build / Plugin hooks (push) Successful in 12s
CI & Build / TypeScript typecheck (push) Successful in 53s
CI & Build / integration (push) Successful in 1m9s
CI & Build / Python tests (push) Successful in 1m55s
CI & Build / Build & push image (push) Successful in 34s
The acceptance greps found what the per-area passes missed: - src/scribe: "Phase 7/8" removal notes in projects, settings and user_profile; a paragraph promising an auto-summary side effect that no longer exists; user_profile's claim that "upcoming MCP profile tools" read the profile, which nothing does; an instance count and instance rule titles in plugin_context; "MILESTONE 323 DECIDED" in rulebooks. - scripts/: check_plugin's header and inline comments were a history of the incidents behind each guard, with issue numbers in two failure messages; check_dangling_styles named this app's classes as its examples; check_design_tokens, measure_duplication and mint_plugin_version cited issues and checklists. - frontend/src: forty-odd comments with four-digit issue numbers that the earlier frontend scan filtered out as hex colours, plus "used to" and "Phase N" notes. Kept: illustrative ids (`#4181` as a bare-id example, `PR #198`), migration Create Date headers and one migration's dated data floor, and the plugin skills' worked examples of how to cite a record. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,18 +1,9 @@
|
||||
"""Project CRUD MCP tools — thin wrappers over services/projects.py.
|
||||
|
||||
Mirrors existing fable-mcp project tool contracts. Note: there is no
|
||||
fable_delete_project here (matches existing fable-mcp surface). To stop
|
||||
working on a project, update its status to 'archived'.
|
||||
|
||||
The LLM-era similarity-check / 'confirmed' guard from services/tools/projects.py
|
||||
is intentionally NOT replicated here — Claude is the client, not a weak local
|
||||
model that needs that guardrail. services.projects.create_project creates
|
||||
directly with no similarity warning.
|
||||
|
||||
The auto-summary regeneration that services.projects.update_project triggers
|
||||
async will be removed in Phase 7 (it's an LLM call). The wrapper makes no
|
||||
assumption either way; once the service-layer side effect is gone, this code
|
||||
keeps working.
|
||||
There is no delete tool: to stop working on a project, set its status to
|
||||
'archived'. create_project creates directly, with no similarity check or
|
||||
'confirmed' guard — the client is a capable model that can read the project
|
||||
list itself.
|
||||
"""
|
||||
from __future__ import annotations
|
||||
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
"""User settings + integrations (SearXNG status).
|
||||
|
||||
Chat-model picker endpoints (/models), KV-cache priming, and journal-schedule
|
||||
hooks were removed in Phase 8 alongside the chat/journal subsystems.
|
||||
"""
|
||||
"""User settings + integrations (SearXNG status)."""
|
||||
import logging
|
||||
|
||||
from quart import Blueprint, jsonify, request
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
"""Session-context rendering for the Scribe plugin's SessionStart hook.
|
||||
|
||||
The plugin's hook curls `GET /api/plugin/context` at session start and injects
|
||||
the returned text as `additionalContext`, giving Scribe the same push channel
|
||||
that superpowers and file-memory have. This module renders that text.
|
||||
the returned text as `additionalContext`, giving Scribe a push channel into
|
||||
the session. This module renders that text.
|
||||
|
||||
Design note — altitude: we inject rule *titles* grouped by topic (a compact
|
||||
index), NOT every rule's full statement. The 48 always-on statements run well
|
||||
past the 10k-char `additionalContext` cap, and the push channel's job is to make
|
||||
index), NOT every rule's full statement. A working rulebook's always-on statements run
|
||||
well past the 10k-char `additionalContext` cap, and the push channel's job is to make
|
||||
Claude *aware* the rules exist and *reach* for them — not to dump them. Full
|
||||
text stays one `get_rule(id)` / `search(content_type="rule")` call away. Titles are
|
||||
mostly self-describing ("`dev` is home", "No GitHub — Fabled-Git only"), so the
|
||||
index alone already steers behavior.
|
||||
mostly self-describing ("Run migrations before deploying"), so the index alone
|
||||
already steers behavior.
|
||||
"""
|
||||
from __future__ import annotations
|
||||
|
||||
|
||||
@@ -1004,9 +1004,8 @@ async def restore_rule_version(
|
||||
) -> Optional[Rule]:
|
||||
"""Put a preference back to what it said. None when it is not readable.
|
||||
|
||||
MILESTONE 323 DECIDED THE OPPOSITE FOR RULES, and that decision stands —
|
||||
`routes/rulebooks.py` still has no restore for them. Its reasoning:
|
||||
"a binding instruction should not be revertible in one click", because a
|
||||
RULES DELIBERATELY HAVE NO RESTORE — `routes/rulebooks.py` offers none —
|
||||
because a binding instruction should not be revertible in one click: a
|
||||
silent revert erases the only record of why the rewrite happened.
|
||||
|
||||
A preference inverts both halves of that. The rewrite was not the
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
"""User profile service — structured per-user preferences.
|
||||
|
||||
Post-pivot the LLM-driven observation/consolidation surface is gone (curator
|
||||
deleted in Phase 8). The profile model is preserved as user-managed metadata
|
||||
(name, job, expertise, style, tone, interests, work schedule) — Claude can
|
||||
read it via the upcoming MCP profile tools.
|
||||
The profile is user-managed metadata (name, job, expertise, style, tone,
|
||||
interests, work schedule), read and written through /api/profile and carried
|
||||
in backups.
|
||||
"""
|
||||
import logging
|
||||
|
||||
|
||||
Reference in New Issue
Block a user