feat: add us-cpa review workflow
This commit is contained in:
@@ -9,6 +9,7 @@ from typing import Any
|
||||
from us_cpa.cases import CaseConflictError, CaseManager
|
||||
from us_cpa.prepare import EfileExporter, PrepareEngine, render_case_forms
|
||||
from us_cpa.questions import QuestionEngine, render_analysis, render_memo
|
||||
from us_cpa.review import ReviewEngine, render_review_memo, render_review_summary
|
||||
from us_cpa.sources import TaxYearCorpus, bootstrap_irs_catalog
|
||||
|
||||
COMMANDS = (
|
||||
@@ -73,6 +74,7 @@ def build_parser() -> argparse.ArgumentParser:
|
||||
|
||||
review = subparsers.add_parser("review", help="Review a return case.")
|
||||
_add_common_arguments(review)
|
||||
review.add_argument("--style", choices=("conversation", "memo"), default="conversation")
|
||||
|
||||
fetch_year = subparsers.add_parser(
|
||||
"fetch-year", help="Fetch tax-year forms and instructions."
|
||||
@@ -203,13 +205,21 @@ def main(argv: list[str] | None = None) -> int:
|
||||
|
||||
if args.command == "review":
|
||||
case_dir = _require_case_dir(args)
|
||||
review_payload = ReviewEngine().review_case(case_dir)
|
||||
payload = {
|
||||
"command": args.command,
|
||||
"command": "review",
|
||||
"format": args.format,
|
||||
"taxYear": args.tax_year,
|
||||
"caseDir": str(case_dir),
|
||||
"status": "not_implemented",
|
||||
"style": args.style,
|
||||
**review_payload,
|
||||
}
|
||||
payload["rendered"] = (
|
||||
render_review_memo(review_payload)
|
||||
if args.style == "memo"
|
||||
else render_review_summary(review_payload)
|
||||
)
|
||||
if args.format == "markdown":
|
||||
print(payload["rendered"])
|
||||
return 0
|
||||
return _emit(payload, args.format)
|
||||
|
||||
if args.command == "fetch-year":
|
||||
|
||||
Reference in New Issue
Block a user