task015 implement seo and language review flow

This commit is contained in:
2026-05-22 00:16:08 +03:00
parent 8243f20b0e
commit 6dcbe0e36c
20 changed files with 3828 additions and 14 deletions
File diff suppressed because it is too large Load Diff
+87
View File
@@ -204,6 +204,51 @@ export type ClaimSummary = {
export type ClaimSupportStatus = "SUPPORTED" | "UNSUPPORTED" | "NEEDS_REVIEW";
export type ContentReviewIssueSummary = {
id: string;
location: string;
message: string;
severity: string;
status: ReviewSuggestionStatus;
suggested_fix?: string | null;
suggested_rewrite?: string | null;
suggestion_id: string;
};
export type ContentReviewKind = "SEO" | "LANGUAGE";
export type ContentReviewReportSummary = {
article_id: string;
created_at: string;
draft_id: string;
id: string;
issues?: ContentReviewIssueSummary[];
recommended_slug: string;
recommended_title: string;
review_kind: ContentReviewKind;
rules_snapshot?: Record<string, unknown>;
schema_json?: Record<string, unknown>;
score: number;
};
export type ContentReviewSuggestionSummary = {
applied_text?: string | null;
article_id: string;
created_at: string;
id: string;
location: string;
message: string;
patch?: Record<string, unknown>;
report_id: string;
review_kind: ContentReviewKind;
severity: string;
status: ReviewSuggestionStatus;
suggested_fix?: string | null;
suggested_rewrite?: string | null;
suggestion_key: string;
updated_at: string;
};
export type CurrentUser = {
display_name: string;
email: string;
@@ -304,10 +349,33 @@ export type EvidenceUpdateRequest = {
review_status?: string | null;
};
export type FinalReviewIssueSummary = {
location: string;
message: string;
review_kind: ContentReviewKind;
severity: string;
status: ReviewSuggestionStatus;
suggestion_id: string;
};
export type FinalReviewIssuesResponse = {
article_id: string;
unresolved_count: number;
unresolved_issues?: FinalReviewIssueSummary[];
};
export type HTTPValidationError = {
detail?: ValidationError[];
};
export type LanguageReviewReportResponse = {
report: ContentReviewReportSummary;
};
export type LanguageReviewRunResponse = {
report: ContentReviewReportSummary;
};
export type PlanListResponse = {
plans: PlanSummary[];
};
@@ -444,6 +512,17 @@ export type ReviewActionResponse = {
export type ReviewStatus = "PENDING" | "APPROVED" | "CHANGES_REQUESTED";
export type ReviewSuggestionActionResponse = {
draft?: DraftSummary | null;
suggestion: ContentReviewSuggestionSummary;
};
export type ReviewSuggestionEditRequest = {
applied_text: string;
};
export type ReviewSuggestionStatus = "PENDING" | "ACCEPTED" | "REJECTED" | "EDITED";
export type ReviewSummary = {
article_id: string;
created_at: string;
@@ -496,6 +575,14 @@ export type ScriptConfigVersionSummary = {
version: number;
};
export type SeoReviewReportResponse = {
report: ContentReviewReportSummary;
};
export type SeoReviewRunResponse = {
report: ContentReviewReportSummary;
};
export type TargetSiteConfig = {
active_script_config_version_id?: string | null;
audience: string;