Repository navigation
Store disclaimer acceptance on its own field and simplify submit path - #269
Merged
Merged
Conversation
Follow-up cleanup to the court disclaimer work (#268): - Record acceptance in a dedicated FilingDraft.disclaimer_acceptance field, written in the same update that claims the draft for submission, instead of inside supplemental_fields (which is copied into case_data). Corrections start without it. - Parse the submit body once: the legacy session_api view becomes forward_final_filing(request, data) and drops its duplicate confirmation check and the now-unused CONFIRMATION_REQUIRED code. - Remove dead draft/acceptance None guards in the submit view. - Undo proxy backslash escapes when court requirements are parsed, so the text shown, signed and stored is the same; the template filter only sanitizes, reuses the md_to_html allowlists, and is memoized. - Cache court requirements for Review (10 min); submit always rechecks the court live and refreshes the cache. - review.js: one filingConfirmed() check for the attestation checkbox. - Tests: one shared court_requirements stub in conftest and an accepted_submission() helper instead of per-file copies. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up cleanup to #268 (court disclaimers), from a
/simplifyreview.Changes
FilingDraft.disclaimer_acceptancefield (migration 0027). It's written in the same update that claims the draft for submission, so it only lands if the claim wins. It no longer lives insupplemental_fields, which is copied intocase_data. Correction drafts start without it, so the filer accepts again.session_api.submit_final_filingbecomesforward_final_filing(request, data), which only the wrapper calls, and its duplicate confirmation check is removed, along with the unusedCONFIRMATION_REQUIREDerror code. The deaddraft is not Noneguards in the wrapper are gone.\"/\nescapes are undone when requirements are parsed, so the text shown, signed and stored is the same.disclaimer_htmlnow only sanitizes, reuses themd_to_htmlallowlists, and is memoized.filingConfirmed()check for the attestation checkbox.court_requirementsstub inconftest.pyand anaccepted_submission()helper replace the per-file copies. New tests cover the escape cleanup and cache behavior.Notes for review
Testing
pytest: 1143 passed.ruff,tyandmakemigrations --checkare clean. JS unit tests: 64 passed, and ESLint is clean.disclaimer_acceptancewas recorded with both requirement codes.🤖 Generated with Claude Code