-
BREAKING: Rename and reorganize many models (public API surface changed). Notable renames:
- PickTenantAuditLogTenantAuditLogKeys -> APIAuditLog (client/models/api_audit_log.py)
- PickFCommentAPICommentFieldsKeys -> APICommentBase (client/models/api_comment_base.py)
- PickAPICommentUpdatableCommentFields -> UpdatableCommentParams (client/models/updatable_comment_params.py)
- PickFCommentApprovedOrCommentHTML -> SetCommentTextResult (client/models/set_comment_text_result.py)
- PickFCommentIsDeletedOrCommentHTMLOrCommenterNameOrUserId -> DeletedCommentResultComment (client/models/deleted_comment_result_comment.py)
- PickOmitFCommentDatePublicCommentPubSubFieldsKeys -> PubSubCommentBase (client/models/pub_sub_comment_base.py)
- PickFCommentPublicCommentFieldsKeys -> PublicCommentBase (client/models/public_comment_base.py)
- imported_api_status_failed -> RepeatCommentCheckIgnoredReason (enum)
- imported_api_status_success -> RepeatCommentHandlingAction (enum)
- VoteDeleteResponseStatus (anyOf wrapper) removed; VoteDeleteResponse.status now uses APIStatus directly
-
New models added:
- APIComment (client/models/api_comment.py)
- APIAuditLog (client/models/api_audit_log.py)
- APICommentBase (client/models/api_comment_base.py)
- CommentLogData (client/models/comment_log_data.py)
- CommentLogEntry (client/models/comment_log_entry.py)
- CommentLogType (client/models/comment_log_type.py)
- DeletedCommentResultComment (client/models/deleted_comment_result_comment.py)
- PubSubCommentBase (client/models/pub_sub_comment_base.py)
- PublicCommentBase (client/models/public_comment_base.py)
- RepeatCommentCheckIgnoredReason (client/models/repeat_comment_check_ignored_reason.py)
- RepeatCommentHandlingAction (client/models/repeat_comment_handling_action.py)
- SetCommentTextResult (client/models/set_comment_text_result.py)
- UpdatableCommentParams (client/models/updatable_comment_params.py)
-
Breaking: DefaultApi.update_comment() signature changed:
- Parameter name/type changed from (body: PickAPICommentUpdatableCommentFields) to (updatable_comment_params: UpdatableCommentParams).
- Internal serialization and body variable use updated accordingly (client/api/default_api.py and docs/DefaultApi.md).
-
API status enums/schemas unified: replaced ad-hoc ImportedAPIStatusSUCCESS / ImportedAPIStatusFAILED with a common APIStatus reference across many response models and docs (multiple model files and docs updated to reference APIStatus).
-
Model field additions and changes (examples):
- APIComment and APICommentBase: large expansion and reordering of fields (added aiDeterminedSpam, badges, hashTags, meta -> FCommentMeta, many previously omitted fields made present or nullable/optional, ordering/aliases adjusted).
- PubSubComment / PubSubCommentBase: reworked field ordering, added viewCount, isDeleted, isSpam, anonUserId, domain, url, pageTitle, expireAt, reviewed, hasCode, approved, locale and moved date (var_date) alias handling.
- PublicComment / PublicCommentBase: reworked fields (var_date made optional/alias, added is_deleted/is_deleted_user/is_spam/anon_user_id/feedback_ids/approved, moved rating/display_label ordering/nullability, etc.).
- FComment: logs type changed from List[List[Any]] to List[CommentLogEntry]; serialization handling updated to call CommentLogEntry.to_dict() for logs.
- CommentLogData: new detailed structure for logging data (clearContent, engine, trustFactor, repeatAction, reason, many vote/flag counts, etc.).
- CommentLogEntry: new model (d, t, da) referencing CommentLogType and CommentLogData.
- DeletedCommentResultComment structure changed to (isDeleted, commentHTML, commenterName, userId) and made userId nullable where appropriate.
- UpdatableCommentParams: many fields made optional, types adjusted (e.g., date number type), meta points to FCommentMeta.
-
Docs and README updates:
- Added documentation files for many new/renamed models (APIAuditLog.md, APIComment.md, APICommentBase.md, CommentLogData.md, CommentLogEntry.md, CommentLogType.md, DeletedCommentResultComment.md, PubSubCommentBase.md, PublicCommentBase.md, RepeatCommentCheckIgnoredReason.md, RepeatCommentHandlingAction.md, SetCommentTextResult.md, UpdatableCommentParams.md).
- Removed obsolete docs (ImportedAPIStatusSUCCESS.md, ImportedAPIStatusFAILED.md and various Pick* docs that were replaced/renamed).
- Updated README model list entries to reflect added/renamed models.
- Updated DefaultApi.md usage examples to use UpdatableCommentParams for update_comment.
-
Tests updated/added/renamed to reflect model renames and new fields:
- Renamed and added many unit tests under client/test/ to match model renames (e.g. test_pick_tenant_audit_log_tenant_audit_log_keys.py -> test_api_audit_log.py; many Pick* tests renamed to corresponding API* tests).
- New tests for CommentLogData, CommentLogEntry, CommentLogType, APIComment, APICommentBase, DeletedCommentResultComment, PubSubCommentBase, PublicCommentBase, RepeatCommentCheckIgnoredReason, RepeatCommentHandlingAction, SetCommentTextResult, UpdatableCommentParams.
- Tests updated to use APIStatus values 'success' where needed and include new optional properties (no_new_root_comments added to config examples in many tests).
- Removed tests for deleted/renamed types (e.g. vote_delete_response_status tests removed).
-
openapi.json updated to reflect schema renames and detailed schema changes:
- Replaced/removed ImportedAPIStatus.* schemas and referenced APIStatus.
- Introduced/updated schemas for PubSubCommentBase, PubSubComment, PublicCommentBase, APICommentBase, APIComment, CommentLogData, CommentLogEntry, CommentLogType, RepeatCommentHandlingAction, RepeatCommentCheckIgnoredReason, SetCommentTextResult, UpdatableCommentParams, DeletedCommentResultComment, APIAuditLog.
- Added many nullability updates and more explicit schema property definitions (nullable flags, array nullability, additionalProperties false where applicable).
- Added new fields to many schema definitions (commentsUpdated, notes, flagCount, viewCount, date numeric type for APIComment, etc.).
-
Removed files / cleaned up generated artifacts:
- Deleted model files for old Pick*/ImportedAPIStatus*/VoteDeleteResponseStatus and corresponding docs/tests where replaced by new models/enums.
-
Backwards-incompatible changes summary (call out to consumers):
- Many model class names and module paths changed (Pick* -> API*/Base/Result names). Code importing those old classes must be updated.
- DefaultApi.update_comment signature and parameter name changed; callers must pass UpdatableCommentParams instead of the old Pick* body.
- VoteDeleteResponse.status no longer uses the anyOf wrapper class; it now directly uses APIStatus (string/enum), adjust code accordingly.
- Serialization/field names and nullability changed for several models (APIComment, PublicComment, PubSubComment, FComment.logs), so JSON payload shapes and model attribute names/aliases may behave differently.
-
Non-breaking improvements / additions:
- Added richer logging/audit-related models (CommentLogData, CommentLogEntry, CommentLogType, APIAuditLog).
- Added/expanded documentation for many models and responses.
- Improved model to_dict/from_dict implementations to properly handle nested lists and nullable fields across many models.
-
Note: This release contains multiple breaking changes; update any code that imports or instantiates the affected models, enums, or that calls the modified API methods to the new names and structures.