{% extends "base.html" %} {% block title %}Workspace — {{ doc.title or doc_id }} — ICDEV™{% endblock %} {% block content %} {# dwr-ws-02 — the two-pane workspace. LEFT is the document. RIGHT is one card per proposal, fetched from GET /api/change-set?doc_id= — dwr-ws-01's endpoint, which had no consumer until this page. There is ONE assembler, so the rail cannot describe a change set the API does not. Modelled on tools/dashboard/templates/delta_review/page.html: the .dr-side-by-side two-column shape, and its :182-209 distinction between DOCUMENT-level and span-anchored findings. placeholder_guard and citation_guard report at document level, so a page showing only anchored findings renders a blocked draft as having nothing wrong with it. Vanilla JS, no framework, no bundler. The CSRF shim in base.html signs every same-origin mutating fetch, so nothing here touches a token. escHtml and safeMarkdown come from static/js/esc.js, which is deferred — hence the DOMContentLoaded wrapper. Nothing is fetched from a CDN. #}
{% if doc.title %}{{ doc.title }}{% else %}untitled — no catalogue row{% endif %}
{{ doc_id }}
placeholder_guard and citation_guard report
at document level. A rail showing only anchored changes would render a blocked draft as clean.
{{ f.issue or f.type or 'placeholder' }}
{% if f.item_number %} — {{ f.item_number }}{% endif %}
{% if f.detail %} — {{ f.detail }}{% elif f.message %} — {{ f.message }}{% endif %}
{% if f.placeholders %} — {{ f.placeholders|join(', ') }}{% endif %}
dic_sections.content — the content of record.
Character offsets on screen are the offsets an anchor addresses, so a highlighted span is exactly what
Accept would replace.
rag_chunks, not the content of record. Nothing here is addressable:
Accept writes dic_sections.content, so every proposal on this document is a preview and
none of them can be applied. The repair is a re-scan that derives sections
(section_deriver), not a change on this page.
dic_sections row for its
{% if body.version_id %}active version{% else %}(absent) version{% endif %}, and no
rag_chunks row for its id. The proposals on the right, if any, describe text this
deployment no longer holds.
{{ body.reason or 'unknown' }}).