feat(800-2): 수식 변수 정의 영역 서버 — 정의 칸(안 탄 갈래 뺌 · 겹침 합침 · 열쇠 글 0) · 새 기호 연결 고침 · 후보 길

- 수식 응답 새 칸 정의 — 만약 탄 갈래 표지 걸림 그대로 · 같은 기호 한 줄 · 연결 사람 말 · 값 · 단위 · DB 열쇠 없음
- 고침 할일 연결(입력 · 표 · 요소 · 로직 · 상수) · 모르는 기호 까닭 · 후보 길 M01 · M02 equation/links
- 낡은 시험 test_796_1 「모르는 이름」 → 「모르는 기호」(까닭 문구 바뀜)

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-11-07 16:46:39 +09:00
co-authored by Claude Sonnet 5.5
parent 972002417a
commit a262b43e83
10 changed files with 448 additions and 1 deletions
@@ -163,6 +163,11 @@ def read(doc: Any, inputs: dict | None = None) -> dict[str, Any]:
return out | ({"reason": lost[0]["까닭"]} if lost else {})
def links(doc: Any, ask: dict) -> dict[str, Any]:
"""새 기호 연결 후보(800-3) — M01 과 같은 후보 길(읽기만)."""
return _eqn().links(ask)
def preview(doc: Any, edits: list, inputs: dict | None = None) -> dict[str, Any]:
"""고침 통째 미리 셈(저장 없음) — {되나, 까닭, 줄, 수식, 전(고침 없는 사본 SK 금액), 후}."""
from M02_MasterTemplete import M02_Sangeun_Equation_Full as full
+20
View File
@@ -251,6 +251,26 @@ def sangeun_equation(
return _call(_root(session, layer, owner), _sd(eqm.read), body.문서, body.inputs)
class LinksBody(BaseModel):
문서: dict[str, Any] | None = None
갈래: str
검색: str = ""
분류: str = "인력"
블록: int | None = None
@router.post("/layers/{layer}/sangeun/equation/links")
def sangeun_equation_links(
layer: Layer,
body: LinksBody,
owner: str | None = None,
session: Session = Depends(verify_session),
) -> dict:
"""새 기호 연결 후보(800-3) — 표 · 요소 · 로직 이름 찾기(읽기만)."""
ask = {k: getattr(body, k) for k in ("갈래", "검색", "분류")}
return _call(_root(session, layer, owner), _sd(eqm.links), body.문서 or {}, ask)
@router.post("/layers/{layer}/sangeun/equation/preview")
def sangeun_equation_preview(
layer: Layer,