Skip to content

Add Word-render step to NSF budget-justification multi-step workflow#30

Merged
ProfessorPolymorphic merged 2 commits into
mainfrom
add-render-step-budget-justification-workflow
Apr 24, 2026
Merged

Add Word-render step to NSF budget-justification multi-step workflow#30
ProfessorPolymorphic merged 2 commits into
mainfrom
add-render-step-budget-justification-workflow

Conversation

@ProfessorPolymorphic
Copy link
Copy Markdown
Contributor

Summary

  • New nsf-budget-justification-render-udm component (transformation, NSF-specific, repo-local schema) renders the reviewed eight-section array into Word-pasteable Markdown and HTML strings.
  • workflows/nsf-budget-justification-multistep gains it as step 4; is_output: true moved off step 3 (review). Workflow bumped to 2.0.0 because the deliverable contract changes from a JSON array to a { markdown, html } object.
  • Prose docs swept for the now-stale "three-step" / "QA half" framing; catalog overrides back-link review → render as downstream_renderer.

Why

Operators reported needing a Word-pasteable artifact at the end of the pipeline. The eight-section array remains the right intermediate contract for evals and downstream tooling, so it is preserved as the step 3 result; the new step 4 is a deterministic renderer (no fabrication, no paraphrase) that emits both a Markdown string (paste as plain text, apply Word styles manually) and an HTML fragment (paste via Paste Special → HTML to map <h1>/<h2>/<p>/lists to Word's heading and body styles automatically).

What changed

Test plan

  • python3 scripts/build_component_catalog.py clean
  • python3 scripts/build_vandalizer_workflows.py clean
  • python3 .github/scripts/lint_components.py — only pre-existing version-behind warnings on nsf-award-notice-extraction-udm and rfp-extraction, unrelated to this change
  • python3 scripts/build_docs.py clean (12 components surfaced)
  • python3 -m mkdocs build --strict clean
  • Upload nsf-budget-justification-multistep.vandalizer.json into Vandalizer and run an end-to-end pass on a real workbook to confirm the rendered object pastes cleanly into Word via Paste Special → HTML
  • Add at least one workflow-local eval case under workflows/nsf-budget-justification-multistep/evals/cases/ once a representative golden render is captured

🤖 Generated with Claude Code

ProfessorPolymorphic and others added 2 commits April 24, 2026 16:48
Adds a new nsf-budget-justification-render-udm component and pins it as
step 4 of the multi-step workflow so the deliverable is a Word-pasteable
{ markdown, html } object instead of the eight-section JSON array. The
array remains available as the step 3 result for evals and downstream
tooling. Workflow bumped to 2.0.0 because the deliverable contract
changed.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sweeps two prose surfaces that still described the multi-step workflow
as three steps after the render step landed: the workflow's evals README
(deliverable is now the rendered object, not the eight-section array)
and the review component's README (no longer the "QA half" — it is the
QA step that feeds the downstream renderer).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@ProfessorPolymorphic ProfessorPolymorphic merged commit 5779332 into main Apr 24, 2026
1 check passed
@ProfessorPolymorphic ProfessorPolymorphic deleted the add-render-step-budget-justification-workflow branch April 24, 2026 23:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant