hazo_collab_forms 3.1.7 → 5.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGE_LOG.md +207 -0
- package/README.md +3 -0
- package/dist/components/clarification/clarification_item_body.d.ts +19 -1
- package/dist/components/clarification/clarification_item_body.d.ts.map +1 -1
- package/dist/components/clarification/clarification_item_body.js +114 -6
- package/dist/components/clarification/clarification_item_body.js.map +1 -1
- package/dist/components/clarification/clarification_thread.js +1 -1
- package/dist/components/clarification/clarification_thread.js.map +1 -1
- package/dist/components/clarification/index.d.ts +2 -0
- package/dist/components/clarification/index.d.ts.map +1 -1
- package/dist/components/clarification/index.js +1 -0
- package/dist/components/clarification/index.js.map +1 -1
- package/dist/components/clarification/resolution_status_strip.d.ts +18 -0
- package/dist/components/clarification/resolution_status_strip.d.ts.map +1 -0
- package/dist/components/clarification/resolution_status_strip.js +20 -0
- package/dist/components/clarification/resolution_status_strip.js.map +1 -0
- package/dist/components/hazo_fb_form/context.d.ts +1 -1
- package/dist/components/hazo_fb_form/context.d.ts.map +1 -1
- package/dist/components/hazo_fb_form/hazo_fb_form.d.ts.map +1 -1
- package/dist/components/hazo_fb_form/hazo_fb_form.js +330 -113
- package/dist/components/hazo_fb_form/hazo_fb_form.js.map +1 -1
- package/dist/components/hazo_fb_form/hooks/use_fb_form_state.d.ts +3 -3
- package/dist/components/hazo_fb_form/hooks/use_fb_form_state.d.ts.map +1 -1
- package/dist/components/hazo_fb_form/hooks/use_fb_form_state.js +339 -46
- package/dist/components/hazo_fb_form/hooks/use_fb_form_state.js.map +1 -1
- package/dist/components/hazo_fb_form/hooks/use_llm_run.d.ts +3 -1
- package/dist/components/hazo_fb_form/hooks/use_llm_run.d.ts.map +1 -1
- package/dist/components/hazo_fb_form/hooks/use_llm_run.js +89 -11
- package/dist/components/hazo_fb_form/hooks/use_llm_run.js.map +1 -1
- package/dist/components/hazo_fb_form/shared/agent_stepper.js +1 -1
- package/dist/components/hazo_fb_form/shared/agent_stepper.js.map +1 -1
- package/dist/components/hazo_fb_form/shared/file_status_accordion.d.ts +9 -0
- package/dist/components/hazo_fb_form/shared/file_status_accordion.d.ts.map +1 -0
- package/dist/components/hazo_fb_form/shared/file_status_accordion.js +39 -0
- package/dist/components/hazo_fb_form/shared/file_status_accordion.js.map +1 -0
- package/dist/components/hazo_fb_form/shared/format.d.ts.map +1 -1
- package/dist/components/hazo_fb_form/shared/format.js +8 -3
- package/dist/components/hazo_fb_form/shared/format.js.map +1 -1
- package/dist/components/hazo_fb_form/shared/send_back_item_card.d.ts +7 -1
- package/dist/components/hazo_fb_form/shared/send_back_item_card.d.ts.map +1 -1
- package/dist/components/hazo_fb_form/shared/send_back_item_card.js +6 -3
- package/dist/components/hazo_fb_form/shared/send_back_item_card.js.map +1 -1
- package/dist/components/hazo_fb_form/types.d.ts +3 -1
- package/dist/components/hazo_fb_form/types.d.ts.map +1 -1
- package/dist/components/hazo_fb_form/views/back_office_view.js +1 -1
- package/dist/components/hazo_fb_form/views/back_office_view.js.map +1 -1
- package/dist/components/hazo_fb_form/views/clarifications_view.js +2 -2
- package/dist/components/hazo_fb_form/views/clarifications_view.js.map +1 -1
- package/dist/components/hazo_fb_form/views/front_office_view.d.ts.map +1 -1
- package/dist/components/hazo_fb_form/views/front_office_view.js +62 -41
- package/dist/components/hazo_fb_form/views/front_office_view.js.map +1 -1
- package/dist/components/hazo_fb_form/views/interim_view.js +3 -3
- package/dist/components/hazo_fb_form/views/interim_view.js.map +1 -1
- package/dist/components/hazo_fb_form/views/review_queue_view.d.ts.map +1 -1
- package/dist/components/hazo_fb_form/views/review_queue_view.js +22 -9
- package/dist/components/hazo_fb_form/views/review_queue_view.js.map +1 -1
- package/dist/components/hazo_validation_rule_editor/components/rule_editor.d.ts.map +1 -1
- package/dist/components/hazo_validation_rule_editor/components/rule_editor.js +32 -3
- package/dist/components/hazo_validation_rule_editor/components/rule_editor.js.map +1 -1
- package/dist/components/hazo_validation_rule_editor/components/variable_chain_input.d.ts +20 -0
- package/dist/components/hazo_validation_rule_editor/components/variable_chain_input.d.ts.map +1 -0
- package/dist/components/hazo_validation_rule_editor/components/variable_chain_input.js +34 -0
- package/dist/components/hazo_validation_rule_editor/components/variable_chain_input.js.map +1 -0
- package/dist/components/hazo_validation_rule_editor/context.d.ts +3 -2
- package/dist/components/hazo_validation_rule_editor/context.d.ts.map +1 -1
- package/dist/components/hazo_validation_rule_editor/context.js +15 -3
- package/dist/components/hazo_validation_rule_editor/context.js.map +1 -1
- package/dist/components/hazo_validation_rule_editor/types.d.ts +7 -1
- package/dist/components/hazo_validation_rule_editor/types.d.ts.map +1 -1
- package/dist/components/hazo_validation_rule_editor/validation_rule_editor.d.ts +1 -1
- package/dist/components/hazo_validation_rule_editor/validation_rule_editor.d.ts.map +1 -1
- package/dist/components/hazo_validation_rule_editor/validation_rule_editor.js +2 -2
- package/dist/components/hazo_validation_rule_editor/validation_rule_editor.js.map +1 -1
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +2 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/shared/document_type_editor.d.ts +31 -0
- package/dist/components/shared/document_type_editor.d.ts.map +1 -0
- package/dist/components/shared/document_type_editor.js +60 -0
- package/dist/components/shared/document_type_editor.js.map +1 -0
- package/dist/components/shared/file_bar/file_bar.d.ts +7 -1
- package/dist/components/shared/file_bar/file_bar.d.ts.map +1 -1
- package/dist/components/shared/file_bar/file_bar.js +5 -3
- package/dist/components/shared/file_bar/file_bar.js.map +1 -1
- package/dist/components/shared/file_bar/file_bar_validation_dialog.js +4 -4
- package/dist/components/shared/file_bar/file_bar_validation_dialog.js.map +1 -1
- package/dist/components/shared/file_status_icon.d.ts +23 -0
- package/dist/components/shared/file_status_icon.d.ts.map +1 -0
- package/dist/components/shared/file_status_icon.js +38 -0
- package/dist/components/shared/file_status_icon.js.map +1 -0
- package/dist/components/shared/json_data_panel/json_data_panel.d.ts +1 -1
- package/dist/components/shared/json_data_panel/json_data_panel.d.ts.map +1 -1
- package/dist/components/shared/json_data_panel/json_data_panel.js +27 -2
- package/dist/components/shared/json_data_panel/json_data_panel.js.map +1 -1
- package/dist/components/shared/rule_result_card.d.ts.map +1 -1
- package/dist/components/shared/rule_result_card.js +5 -4
- package/dist/components/shared/rule_result_card.js.map +1 -1
- package/dist/components/thread_form/components/add_question_dialog.d.ts +12 -0
- package/dist/components/thread_form/components/add_question_dialog.d.ts.map +1 -0
- package/dist/components/thread_form/components/add_question_dialog.js +36 -0
- package/dist/components/thread_form/components/add_question_dialog.js.map +1 -0
- package/dist/components/thread_form/components/agent_compose_dialog.d.ts +30 -0
- package/dist/components/thread_form/components/agent_compose_dialog.d.ts.map +1 -0
- package/dist/components/thread_form/components/agent_compose_dialog.js +45 -0
- package/dist/components/thread_form/components/agent_compose_dialog.js.map +1 -0
- package/dist/components/thread_form/components/clarification.d.ts +14 -0
- package/dist/components/thread_form/components/clarification.d.ts.map +1 -0
- package/dist/components/thread_form/components/clarification.js +12 -0
- package/dist/components/thread_form/components/clarification.js.map +1 -0
- package/dist/components/thread_form/components/collected_data_view.d.ts +15 -0
- package/dist/components/thread_form/components/collected_data_view.d.ts.map +1 -0
- package/dist/components/thread_form/components/collected_data_view.js +121 -0
- package/dist/components/thread_form/components/collected_data_view.js.map +1 -0
- package/dist/components/thread_form/components/coverage_card.d.ts +11 -0
- package/dist/components/thread_form/components/coverage_card.d.ts.map +1 -0
- package/dist/components/thread_form/components/coverage_card.js +60 -0
- package/dist/components/thread_form/components/coverage_card.js.map +1 -0
- package/dist/components/thread_form/components/file_bar.d.ts +93 -0
- package/dist/components/thread_form/components/file_bar.d.ts.map +1 -0
- package/dist/components/thread_form/components/file_bar.js +251 -0
- package/dist/components/thread_form/components/file_bar.js.map +1 -0
- package/dist/components/thread_form/components/file_info_dialog.d.ts +15 -0
- package/dist/components/thread_form/components/file_info_dialog.d.ts.map +1 -0
- package/dist/components/thread_form/components/file_info_dialog.js +64 -0
- package/dist/components/thread_form/components/file_info_dialog.js.map +1 -0
- package/dist/components/thread_form/components/issue_group_tree.d.ts +20 -0
- package/dist/components/thread_form/components/issue_group_tree.d.ts.map +1 -0
- package/dist/components/thread_form/components/issue_group_tree.js +164 -0
- package/dist/components/thread_form/components/issue_group_tree.js.map +1 -0
- package/dist/components/thread_form/components/pdf_side_panel.d.ts +20 -0
- package/dist/components/thread_form/components/pdf_side_panel.d.ts.map +1 -0
- package/dist/components/thread_form/components/pdf_side_panel.js +63 -0
- package/dist/components/thread_form/components/pdf_side_panel.js.map +1 -0
- package/dist/components/thread_form/components/rule_decision_row.d.ts +31 -0
- package/dist/components/thread_form/components/rule_decision_row.d.ts.map +1 -0
- package/dist/components/thread_form/components/rule_decision_row.js +20 -0
- package/dist/components/thread_form/components/rule_decision_row.js.map +1 -0
- package/dist/components/thread_form/components/send_back_message.d.ts +32 -0
- package/dist/components/thread_form/components/send_back_message.d.ts.map +1 -0
- package/dist/components/thread_form/components/send_back_message.js +82 -0
- package/dist/components/thread_form/components/send_back_message.js.map +1 -0
- package/dist/components/thread_form/components/shared.d.ts +54 -0
- package/dist/components/thread_form/components/shared.d.ts.map +1 -0
- package/dist/components/thread_form/components/shared.js +136 -0
- package/dist/components/thread_form/components/shared.js.map +1 -0
- package/dist/components/thread_form/components/task_card.d.ts +90 -0
- package/dist/components/thread_form/components/task_card.d.ts.map +1 -0
- package/dist/components/thread_form/components/task_card.js +63 -0
- package/dist/components/thread_form/components/task_card.js.map +1 -0
- package/dist/components/thread_form/components/text_doc_check.d.ts +15 -0
- package/dist/components/thread_form/components/text_doc_check.d.ts.map +1 -0
- package/dist/components/thread_form/components/text_doc_check.js +16 -0
- package/dist/components/thread_form/components/text_doc_check.js.map +1 -0
- package/dist/components/thread_form/components/text_extraction.d.ts +14 -0
- package/dist/components/thread_form/components/text_extraction.d.ts.map +1 -0
- package/dist/components/thread_form/components/text_extraction.js +16 -0
- package/dist/components/thread_form/components/text_extraction.js.map +1 -0
- package/dist/components/thread_form/components/thread_composer.d.ts +15 -0
- package/dist/components/thread_form/components/thread_composer.d.ts.map +1 -0
- package/dist/components/thread_form/components/thread_composer.js +93 -0
- package/dist/components/thread_form/components/thread_composer.js.map +1 -0
- package/dist/components/thread_form/components/thread_timeline.d.ts +65 -0
- package/dist/components/thread_form/components/thread_timeline.d.ts.map +1 -0
- package/dist/components/thread_form/components/thread_timeline.js +225 -0
- package/dist/components/thread_form/components/thread_timeline.js.map +1 -0
- package/dist/components/thread_form/hooks/use_file_pipeline.d.ts +126 -0
- package/dist/components/thread_form/hooks/use_file_pipeline.d.ts.map +1 -0
- package/dist/components/thread_form/hooks/use_file_pipeline.js +760 -0
- package/dist/components/thread_form/hooks/use_file_pipeline.js.map +1 -0
- package/dist/components/thread_form/hooks/use_thread_form.d.ts +36 -0
- package/dist/components/thread_form/hooks/use_thread_form.d.ts.map +1 -0
- package/dist/components/thread_form/hooks/use_thread_form.js +126 -0
- package/dist/components/thread_form/hooks/use_thread_form.js.map +1 -0
- package/dist/components/thread_form/index.d.ts +33 -0
- package/dist/components/thread_form/index.d.ts.map +1 -0
- package/dist/components/thread_form/index.js +30 -0
- package/dist/components/thread_form/index.js.map +1 -0
- package/dist/components/thread_form/sample_data.d.ts +8 -0
- package/dist/components/thread_form/sample_data.d.ts.map +1 -0
- package/dist/components/thread_form/sample_data.js +658 -0
- package/dist/components/thread_form/sample_data.js.map +1 -0
- package/dist/components/thread_form/thread_form.d.ts +7 -0
- package/dist/components/thread_form/thread_form.d.ts.map +1 -0
- package/dist/components/thread_form/thread_form.js +1385 -0
- package/dist/components/thread_form/thread_form.js.map +1 -0
- package/dist/components/thread_form/types.d.ts +402 -0
- package/dist/components/thread_form/types.d.ts.map +1 -0
- package/dist/components/thread_form/types.js +23 -0
- package/dist/components/thread_form/types.js.map +1 -0
- package/dist/components/thread_form/utils/file_decision_state.d.ts +22 -0
- package/dist/components/thread_form/utils/file_decision_state.d.ts.map +1 -0
- package/dist/components/thread_form/utils/file_decision_state.js +37 -0
- package/dist/components/thread_form/utils/file_decision_state.js.map +1 -0
- package/dist/components/thread_form/utils/merge_send_back.d.ts +13 -0
- package/dist/components/thread_form/utils/merge_send_back.d.ts.map +1 -0
- package/dist/components/thread_form/utils/merge_send_back.js +23 -0
- package/dist/components/thread_form/utils/merge_send_back.js.map +1 -0
- package/dist/lib/autofill_handler.d.ts.map +1 -1
- package/dist/lib/autofill_handler.js +5 -44
- package/dist/lib/autofill_handler.js.map +1 -1
- package/dist/lib/classification_handler.d.ts +105 -0
- package/dist/lib/classification_handler.d.ts.map +1 -0
- package/dist/lib/classification_handler.js +342 -0
- package/dist/lib/classification_handler.js.map +1 -0
- package/dist/lib/content_gate_handler.d.ts +37 -0
- package/dist/lib/content_gate_handler.d.ts.map +1 -0
- package/dist/lib/content_gate_handler.js +126 -0
- package/dist/lib/content_gate_handler.js.map +1 -0
- package/dist/lib/index.d.ts +10 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +5 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/periodic_coverage_runner.d.ts +24 -0
- package/dist/lib/periodic_coverage_runner.d.ts.map +1 -0
- package/dist/lib/periodic_coverage_runner.js +121 -0
- package/dist/lib/periodic_coverage_runner.js.map +1 -0
- package/dist/lib/resolution_handler.d.ts +150 -0
- package/dist/lib/resolution_handler.d.ts.map +1 -0
- package/dist/lib/resolution_handler.js +597 -0
- package/dist/lib/resolution_handler.js.map +1 -0
- package/dist/lib/resolve_variable.d.ts +25 -0
- package/dist/lib/resolve_variable.d.ts.map +1 -0
- package/dist/lib/resolve_variable.js +77 -0
- package/dist/lib/resolve_variable.js.map +1 -0
- package/dist/lib/validation_handler.d.ts +27 -3
- package/dist/lib/validation_handler.d.ts.map +1 -1
- package/dist/lib/validation_handler.js +338 -288
- package/dist/lib/validation_handler.js.map +1 -1
- package/dist/types/clarification.d.ts +54 -0
- package/dist/types/clarification.d.ts.map +1 -1
- package/dist/types/fb_form_data.d.ts +273 -123
- package/dist/types/fb_form_data.d.ts.map +1 -1
- package/dist/types/fb_form_data.js +44 -58
- package/dist/types/fb_form_data.js.map +1 -1
- package/dist/types/fb_form_data_v1.d.ts +250 -0
- package/dist/types/fb_form_data_v1.d.ts.map +1 -0
- package/dist/types/fb_form_data_v1.js +117 -0
- package/dist/types/fb_form_data_v1.js.map +1 -0
- package/dist/types/fb_form_instance.d.ts +1 -1
- package/dist/types/fb_form_instance.d.ts.map +1 -1
- package/dist/types/index.d.ts +5 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +2 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/validation.d.ts +134 -12
- package/dist/types/validation.d.ts.map +1 -1
- package/dist/utils/expectation_extractor.d.ts +31 -0
- package/dist/utils/expectation_extractor.d.ts.map +1 -0
- package/dist/utils/expectation_extractor.js +142 -0
- package/dist/utils/expectation_extractor.js.map +1 -0
- package/dist/utils/fb_data_adapter.d.ts +7 -2
- package/dist/utils/fb_data_adapter.d.ts.map +1 -1
- package/dist/utils/fb_data_adapter.js +58 -7
- package/dist/utils/fb_data_adapter.js.map +1 -1
- package/dist/utils/fb_data_adapter_v2.d.ts +17 -0
- package/dist/utils/fb_data_adapter_v2.d.ts.map +1 -0
- package/dist/utils/fb_data_adapter_v2.js +483 -0
- package/dist/utils/fb_data_adapter_v2.js.map +1 -0
- package/dist/utils/fb_data_helpers.d.ts +1 -1
- package/dist/utils/fb_data_helpers.d.ts.map +1 -1
- package/dist/utils/fb_data_mutations.d.ts +1 -1
- package/dist/utils/fb_data_mutations.d.ts.map +1 -1
- package/dist/utils/fb_data_mutations_v2.d.ts +46 -0
- package/dist/utils/fb_data_mutations_v2.d.ts.map +1 -0
- package/dist/utils/fb_data_mutations_v2.js +341 -0
- package/dist/utils/fb_data_mutations_v2.js.map +1 -0
- package/dist/utils/fb_data_queries.d.ts +81 -0
- package/dist/utils/fb_data_queries.d.ts.map +1 -0
- package/dist/utils/fb_data_queries.js +354 -0
- package/dist/utils/fb_data_queries.js.map +1 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +6 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/issue_bucketing.d.ts +36 -0
- package/dist/utils/issue_bucketing.d.ts.map +1 -0
- package/dist/utils/issue_bucketing.js +107 -0
- package/dist/utils/issue_bucketing.js.map +1 -0
- package/dist/utils/validation_result.d.ts +32 -0
- package/dist/utils/validation_result.d.ts.map +1 -0
- package/dist/utils/validation_result.js +55 -0
- package/dist/utils/validation_result.js.map +1 -0
- package/package.json +16 -4
|
@@ -0,0 +1,658 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sample data for ThreadForm visual prototype.
|
|
3
|
+
* Covers all scenarios: text analysis, PDF splitting, file validation,
|
|
4
|
+
* clarification, multiple agents, status changes, doc checks.
|
|
5
|
+
*/
|
|
6
|
+
export const SAMPLE_THREAD_FORM = {
|
|
7
|
+
form_id: 'tf_001',
|
|
8
|
+
title: '2025 Tax Return',
|
|
9
|
+
status: 'in_progress',
|
|
10
|
+
created_at: '2025-01-10T09:00:00Z',
|
|
11
|
+
updated_at: '2025-04-13T11:44:00Z',
|
|
12
|
+
client: { name: 'Pubs Abayasiri', id: 'client_001' },
|
|
13
|
+
agents: [
|
|
14
|
+
{ name: 'Katie Walsh', id: 'agent_001' },
|
|
15
|
+
{ name: 'Angela White', id: 'agent_002' },
|
|
16
|
+
],
|
|
17
|
+
collected_data_selections: {
|
|
18
|
+
'ct_hsbc': true,
|
|
19
|
+
'ct_interest_2025': true,
|
|
20
|
+
'ct_schwab': true,
|
|
21
|
+
'ct_laundry': false,
|
|
22
|
+
'ct_travel': true,
|
|
23
|
+
'ct_cleaning': false,
|
|
24
|
+
'ct_phone': true,
|
|
25
|
+
'ct_wfh': true,
|
|
26
|
+
'ct_bank_details': true,
|
|
27
|
+
},
|
|
28
|
+
tasks: [
|
|
29
|
+
// ─── Task 1: Simple completed task ──────────────────────────
|
|
30
|
+
{
|
|
31
|
+
task_id: 'task_001',
|
|
32
|
+
title: 'Complete Client Information Form - once per year',
|
|
33
|
+
description: "Just a quick reminder (if you haven't done so already), we'll need you to complete one of the following information forms so that we can update our systems and software prior to making a start on your returns: New Clients: New Client Information Form",
|
|
34
|
+
status: 'completed',
|
|
35
|
+
completed_by: 'client_001',
|
|
36
|
+
completed_at: '2025-02-28T14:00:00Z',
|
|
37
|
+
sort_order: 1,
|
|
38
|
+
created_at: '2025-01-10T09:00:00Z',
|
|
39
|
+
created_by: 'agent_001',
|
|
40
|
+
thread: [
|
|
41
|
+
{
|
|
42
|
+
message_id: 'msg_001',
|
|
43
|
+
role: 'system',
|
|
44
|
+
type: 'status_change',
|
|
45
|
+
visibility: 'all',
|
|
46
|
+
status_change: { from: 'pending', to: 'in_progress' },
|
|
47
|
+
user_name: 'Katie Walsh',
|
|
48
|
+
time: '2025-01-10T09:00:00Z',
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
message_id: 'msg_002',
|
|
52
|
+
role: 'client',
|
|
53
|
+
type: 'comment',
|
|
54
|
+
visibility: 'all',
|
|
55
|
+
content_text: 'Received. Thankyou.',
|
|
56
|
+
user_name: 'Pubs Abayasiri',
|
|
57
|
+
user_id: 'client_001',
|
|
58
|
+
time: '2025-02-28T10:30:00Z',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
message_id: 'msg_003',
|
|
62
|
+
role: 'agent',
|
|
63
|
+
type: 'comment',
|
|
64
|
+
visibility: 'all',
|
|
65
|
+
content_text: 'Received. Thankyou.',
|
|
66
|
+
user_name: 'Angela White',
|
|
67
|
+
user_id: 'agent_002',
|
|
68
|
+
time: '2025-02-28T14:00:00Z',
|
|
69
|
+
},
|
|
70
|
+
],
|
|
71
|
+
},
|
|
72
|
+
// ─── Task 2: File uploads with AI analysis + PDF splitting ──
|
|
73
|
+
{
|
|
74
|
+
task_id: 'task_002',
|
|
75
|
+
title: 'Upload income information for your tax return',
|
|
76
|
+
description: 'Details of all overseas and Australian income including interest received, dividends, distributions, employment income (if applicable)',
|
|
77
|
+
status: 'in_progress',
|
|
78
|
+
sort_order: 2,
|
|
79
|
+
created_at: '2025-01-10T09:00:00Z',
|
|
80
|
+
created_by: 'agent_001',
|
|
81
|
+
thread: [
|
|
82
|
+
{
|
|
83
|
+
message_id: 'msg_010',
|
|
84
|
+
role: 'system',
|
|
85
|
+
type: 'status_change',
|
|
86
|
+
visibility: 'all',
|
|
87
|
+
status_change: { from: 'pending', to: 'in_progress' },
|
|
88
|
+
user_name: 'Katie Walsh',
|
|
89
|
+
time: '2025-01-10T13:31:00Z',
|
|
90
|
+
},
|
|
91
|
+
// Client uploads files
|
|
92
|
+
{
|
|
93
|
+
message_id: 'msg_011',
|
|
94
|
+
role: 'client',
|
|
95
|
+
type: 'content',
|
|
96
|
+
visibility: 'all',
|
|
97
|
+
content_text: 'bank ineterest',
|
|
98
|
+
content_items: [
|
|
99
|
+
{
|
|
100
|
+
content_id: 'ct_hsbc',
|
|
101
|
+
type: 'file',
|
|
102
|
+
file: { file_id: 'f_001', file_name: 'hsbc_statement_everyday_savings.pdf', file_size: '100KB', mime_type: 'application/pdf' },
|
|
103
|
+
category: 'bank_interest',
|
|
104
|
+
category_label: 'Bank & Interest Income',
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
content_id: 'ct_interest_old',
|
|
108
|
+
type: 'file',
|
|
109
|
+
file: { file_id: 'f_002', file_name: 'Interest&TaxReport_2023-2024.pdf', file_size: '83KB', mime_type: 'application/pdf' },
|
|
110
|
+
category: 'bank_interest',
|
|
111
|
+
category_label: 'Bank & Interest Income',
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
content_id: 'ct_interest_2025',
|
|
115
|
+
type: 'file',
|
|
116
|
+
file: { file_id: 'f_003', file_name: 'Interest&TaxReport_2024-2025.pdf', file_size: '83KB', mime_type: 'application/pdf' },
|
|
117
|
+
category: 'bank_interest',
|
|
118
|
+
category_label: 'Bank & Interest Income',
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
content_id: 'ct_netbank',
|
|
122
|
+
type: 'file',
|
|
123
|
+
file: { file_id: 'f_006', file_name: 'NetBank - Interest & tax summary.pdf', file_size: '247KB', mime_type: 'application/pdf' },
|
|
124
|
+
category: 'bank_interest',
|
|
125
|
+
category_label: 'Bank & Interest Income',
|
|
126
|
+
},
|
|
127
|
+
],
|
|
128
|
+
user_name: 'Pubs Abayasiri',
|
|
129
|
+
user_id: 'client_001',
|
|
130
|
+
time: '2025-03-09T19:24:00Z',
|
|
131
|
+
},
|
|
132
|
+
// Front-office doc check (client-visible)
|
|
133
|
+
{
|
|
134
|
+
message_id: 'msg_012',
|
|
135
|
+
role: 'system',
|
|
136
|
+
type: 'doc_check',
|
|
137
|
+
visibility: 'all',
|
|
138
|
+
doc_check: {
|
|
139
|
+
content_ref: 'ct_interest_old',
|
|
140
|
+
status: 'issues',
|
|
141
|
+
summary: '1 issue found with Interest&TaxReport_2023-2024.pdf',
|
|
142
|
+
issues: [
|
|
143
|
+
{ description: "The date range on this document (2023-2024) doesn't match the 2025 financial year." },
|
|
144
|
+
],
|
|
145
|
+
},
|
|
146
|
+
time: '2025-03-09T19:25:00Z',
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
message_id: 'msg_012b',
|
|
150
|
+
role: 'system',
|
|
151
|
+
type: 'doc_check',
|
|
152
|
+
visibility: 'all',
|
|
153
|
+
doc_check: {
|
|
154
|
+
content_ref: 'ct_hsbc',
|
|
155
|
+
status: 'passed',
|
|
156
|
+
summary: 'All checks passed for hsbc_statement_everyday_savings.pdf',
|
|
157
|
+
},
|
|
158
|
+
time: '2025-03-09T19:25:00Z',
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
message_id: 'msg_012c',
|
|
162
|
+
role: 'system',
|
|
163
|
+
type: 'doc_check',
|
|
164
|
+
visibility: 'all',
|
|
165
|
+
doc_check: {
|
|
166
|
+
content_ref: 'ct_interest_2025',
|
|
167
|
+
status: 'passed',
|
|
168
|
+
summary: 'All checks passed for Interest&TaxReport_2024-2025.pdf',
|
|
169
|
+
},
|
|
170
|
+
time: '2025-03-09T19:25:00Z',
|
|
171
|
+
},
|
|
172
|
+
// Back-office AI analysis (agent only)
|
|
173
|
+
{
|
|
174
|
+
message_id: 'msg_013',
|
|
175
|
+
role: 'system',
|
|
176
|
+
type: 'ai_analysis',
|
|
177
|
+
visibility: 'agent_only',
|
|
178
|
+
ai_analysis: {
|
|
179
|
+
items: [
|
|
180
|
+
{
|
|
181
|
+
content_ref: 'ct_hsbc',
|
|
182
|
+
classification: { document_type: 'Bank Statement', tags: ['bank_interest', 'hsbc'], confidence: 0.95 },
|
|
183
|
+
validation: {
|
|
184
|
+
status: 'passed',
|
|
185
|
+
checks: [
|
|
186
|
+
{ check_id: 'chk_01', name: 'Date Range', status: 'passed', description: 'Document covers FY2025', severity: 'info' },
|
|
187
|
+
{ check_id: 'chk_02', name: 'Name Match', status: 'passed', description: 'Name matches client record', severity: 'info' },
|
|
188
|
+
{ check_id: 'chk_03', name: 'Account Details', status: 'passed', description: 'BSB and account number present', severity: 'info' },
|
|
189
|
+
],
|
|
190
|
+
},
|
|
191
|
+
review_status: 'accepted',
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
content_ref: 'ct_interest_old',
|
|
195
|
+
classification: { document_type: 'Interest & Tax Report', tags: ['bank_interest'], confidence: 0.92 },
|
|
196
|
+
validation: {
|
|
197
|
+
status: 'issues',
|
|
198
|
+
checks: [
|
|
199
|
+
{ check_id: 'chk_04', name: 'Date Range', status: 'failed', description: 'Document covers 2023-2024, expected FY2025', severity: 'error' },
|
|
200
|
+
{ check_id: 'chk_05', name: 'Name Match', status: 'passed', description: 'Name matches client record', severity: 'info' },
|
|
201
|
+
],
|
|
202
|
+
},
|
|
203
|
+
review_status: 'sent_to_client',
|
|
204
|
+
sent_message_id: 'msg_012',
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
content_ref: 'ct_interest_2025',
|
|
208
|
+
classification: { document_type: 'Interest & Tax Report', tags: ['bank_interest'], confidence: 0.94 },
|
|
209
|
+
validation: {
|
|
210
|
+
status: 'passed',
|
|
211
|
+
checks: [
|
|
212
|
+
{ check_id: 'chk_06', name: 'Date Range', status: 'passed', description: 'Document covers FY2024-2025', severity: 'info' },
|
|
213
|
+
{ check_id: 'chk_07', name: 'Name Match', status: 'passed', description: 'Name matches client record', severity: 'info' },
|
|
214
|
+
],
|
|
215
|
+
},
|
|
216
|
+
review_status: 'accepted',
|
|
217
|
+
},
|
|
218
|
+
],
|
|
219
|
+
},
|
|
220
|
+
time: '2025-03-09T19:26:00Z',
|
|
221
|
+
},
|
|
222
|
+
// More client uploads - shares
|
|
223
|
+
{
|
|
224
|
+
message_id: 'msg_014',
|
|
225
|
+
role: 'client',
|
|
226
|
+
type: 'content',
|
|
227
|
+
visibility: 'all',
|
|
228
|
+
content_text: 'shares - AU',
|
|
229
|
+
content_items: [
|
|
230
|
+
{
|
|
231
|
+
content_id: 'ct_hnl',
|
|
232
|
+
type: 'file',
|
|
233
|
+
file: { file_id: 'f_010', file_name: 'Harvey_Norman_Holdings_Limited_2024_AGM_Proxy_Form.pdf', file_size: '361KB', mime_type: 'application/pdf' },
|
|
234
|
+
category: 'shares',
|
|
235
|
+
category_label: 'Shares & Dividends',
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
content_id: 'ct_mqg',
|
|
239
|
+
type: 'file',
|
|
240
|
+
file: { file_id: 'f_011', file_name: 'MQG_Dividend_Advice_2024_07_02.pdf', file_size: '59KB', mime_type: 'application/pdf' },
|
|
241
|
+
category: 'shares',
|
|
242
|
+
category_label: 'Shares & Dividends',
|
|
243
|
+
},
|
|
244
|
+
],
|
|
245
|
+
user_name: 'Pubs Abayasiri',
|
|
246
|
+
user_id: 'client_001',
|
|
247
|
+
time: '2025-03-09T19:27:00Z',
|
|
248
|
+
},
|
|
249
|
+
// Client uploads combined PDF (triggers splitting)
|
|
250
|
+
{
|
|
251
|
+
message_id: 'msg_015',
|
|
252
|
+
role: 'client',
|
|
253
|
+
type: 'content',
|
|
254
|
+
visibility: 'all',
|
|
255
|
+
content_text: 'shares - us',
|
|
256
|
+
content_items: [
|
|
257
|
+
{
|
|
258
|
+
content_id: 'ct_schwab',
|
|
259
|
+
type: 'file',
|
|
260
|
+
file: { file_id: 'f_020', file_name: 'schwab_transactons_2024-2025.pdf', file_size: '557KB', mime_type: 'application/pdf' },
|
|
261
|
+
category: 'shares',
|
|
262
|
+
category_label: 'Shares & Dividends',
|
|
263
|
+
},
|
|
264
|
+
],
|
|
265
|
+
user_name: 'Pubs Abayasiri',
|
|
266
|
+
user_id: 'client_001',
|
|
267
|
+
time: '2025-03-09T19:28:00Z',
|
|
268
|
+
},
|
|
269
|
+
// AI analysis with PDF splitting (agent only)
|
|
270
|
+
{
|
|
271
|
+
message_id: 'msg_016',
|
|
272
|
+
role: 'system',
|
|
273
|
+
type: 'ai_analysis',
|
|
274
|
+
visibility: 'agent_only',
|
|
275
|
+
ai_analysis: {
|
|
276
|
+
items: [
|
|
277
|
+
{
|
|
278
|
+
content_ref: 'ct_schwab',
|
|
279
|
+
classification: { document_type: 'Brokerage Statements (Combined)', tags: ['shares', 'us_income'], confidence: 0.88 },
|
|
280
|
+
validation: {
|
|
281
|
+
status: 'passed',
|
|
282
|
+
checks: [
|
|
283
|
+
{ check_id: 'chk_20', name: 'Date Range', status: 'passed', description: 'Covers 2024-2025', severity: 'info' },
|
|
284
|
+
],
|
|
285
|
+
},
|
|
286
|
+
split_items: [
|
|
287
|
+
{
|
|
288
|
+
content_id: 'ct_schwab_split_1',
|
|
289
|
+
type: 'file',
|
|
290
|
+
parent_content_id: 'ct_schwab',
|
|
291
|
+
file: { file_id: 'f_020', file_name: 'schwab_transactons_2024-2025.pdf' },
|
|
292
|
+
split_info: { page_range: 'Pages 1-4', label: 'Account Summary & Positions' },
|
|
293
|
+
category: 'shares',
|
|
294
|
+
category_label: 'Shares & Dividends',
|
|
295
|
+
},
|
|
296
|
+
{
|
|
297
|
+
content_id: 'ct_schwab_split_2',
|
|
298
|
+
type: 'file',
|
|
299
|
+
parent_content_id: 'ct_schwab',
|
|
300
|
+
file: { file_id: 'f_020', file_name: 'schwab_transactons_2024-2025.pdf' },
|
|
301
|
+
split_info: { page_range: 'Pages 5-8', label: 'Dividend Income' },
|
|
302
|
+
category: 'shares',
|
|
303
|
+
category_label: 'Shares & Dividends',
|
|
304
|
+
},
|
|
305
|
+
{
|
|
306
|
+
content_id: 'ct_schwab_split_3',
|
|
307
|
+
type: 'file',
|
|
308
|
+
parent_content_id: 'ct_schwab',
|
|
309
|
+
file: { file_id: 'f_020', file_name: 'schwab_transactons_2024-2025.pdf' },
|
|
310
|
+
split_info: { page_range: 'Pages 9-12', label: 'Capital Gains Transactions' },
|
|
311
|
+
category: 'shares',
|
|
312
|
+
category_label: 'Shares & Dividends',
|
|
313
|
+
},
|
|
314
|
+
],
|
|
315
|
+
review_status: 'pending',
|
|
316
|
+
},
|
|
317
|
+
],
|
|
318
|
+
},
|
|
319
|
+
time: '2025-03-09T19:30:00Z',
|
|
320
|
+
},
|
|
321
|
+
// Client marks complete
|
|
322
|
+
{
|
|
323
|
+
message_id: 'msg_017',
|
|
324
|
+
role: 'system',
|
|
325
|
+
type: 'status_change',
|
|
326
|
+
visibility: 'all',
|
|
327
|
+
status_change: { from: 'in_progress', to: 'completed' },
|
|
328
|
+
user_name: 'Pubs Abayasiri',
|
|
329
|
+
time: '2025-03-09T20:15:00Z',
|
|
330
|
+
},
|
|
331
|
+
],
|
|
332
|
+
},
|
|
333
|
+
// ─── Task 3: Text input with AI extraction ──────────────────
|
|
334
|
+
{
|
|
335
|
+
task_id: 'task_003',
|
|
336
|
+
title: 'Upload details of deductions for your tax return',
|
|
337
|
+
description: 'Provide details of work deductions, hours worked from home, tax agent fees (excluding Expat Taxes), Superannuation deductions, Charitable donations and investment expenses',
|
|
338
|
+
status: 'in_progress',
|
|
339
|
+
sort_order: 3,
|
|
340
|
+
created_at: '2025-01-10T09:00:00Z',
|
|
341
|
+
created_by: 'agent_001',
|
|
342
|
+
thread: [
|
|
343
|
+
{
|
|
344
|
+
message_id: 'msg_030',
|
|
345
|
+
role: 'system',
|
|
346
|
+
type: 'status_change',
|
|
347
|
+
visibility: 'all',
|
|
348
|
+
status_change: { from: 'pending', to: 'in_progress' },
|
|
349
|
+
user_name: 'Katie Walsh',
|
|
350
|
+
time: '2025-01-10T13:31:00Z',
|
|
351
|
+
},
|
|
352
|
+
// Client submits text
|
|
353
|
+
{
|
|
354
|
+
message_id: 'msg_031',
|
|
355
|
+
role: 'client',
|
|
356
|
+
type: 'comment',
|
|
357
|
+
visibility: 'all',
|
|
358
|
+
content_text: 'Work-related expenses\nLaundry cost without receipt 300\nTravel cost 2000km for work purpose\nOffice cleaning - $ 50 per month but no receipt\nStationary - cost that include with receipt\nAnything what you think of that you can clam without a receipt\n\nPhone and internet and percentage of work related\n$190 per month - 80% work\n\nNumber of hours working from home\n45 to 50 hours\n\nMy bank details are:\nBSB: 123-223\nAccount Number: 44412-222\nAccount Name: John Smith',
|
|
359
|
+
user_name: 'Pubs Abayasiri',
|
|
360
|
+
user_id: 'client_001',
|
|
361
|
+
time: '2025-03-09T19:00:00Z',
|
|
362
|
+
},
|
|
363
|
+
// Front-office text check (client-visible) — issue found in text snippet
|
|
364
|
+
{
|
|
365
|
+
message_id: 'msg_031_check',
|
|
366
|
+
role: 'system',
|
|
367
|
+
type: 'doc_check',
|
|
368
|
+
visibility: 'all',
|
|
369
|
+
doc_check: {
|
|
370
|
+
content_ref: 'msg_031',
|
|
371
|
+
source_type: 'text',
|
|
372
|
+
status: 'issues',
|
|
373
|
+
summary: 'Issue found in your deduction details',
|
|
374
|
+
issues: [
|
|
375
|
+
{
|
|
376
|
+
description: 'Laundry deduction of $300 without a receipt exceeds the $150 substantiation threshold. Please provide a receipt or reduce the claim amount.',
|
|
377
|
+
text_snippet: 'Laundry cost without receipt 300',
|
|
378
|
+
},
|
|
379
|
+
{
|
|
380
|
+
description: 'Office cleaning claimed at $50/month without receipts. A diary or logbook may be required to substantiate this recurring expense.',
|
|
381
|
+
text_snippet: 'Office cleaning - $ 50 per month but no receipt',
|
|
382
|
+
},
|
|
383
|
+
],
|
|
384
|
+
},
|
|
385
|
+
time: '2025-03-09T19:01:00Z',
|
|
386
|
+
},
|
|
387
|
+
// Back-office text extraction (agent only)
|
|
388
|
+
{
|
|
389
|
+
message_id: 'msg_032',
|
|
390
|
+
role: 'system',
|
|
391
|
+
type: 'ai_analysis',
|
|
392
|
+
visibility: 'agent_only',
|
|
393
|
+
ai_analysis: {
|
|
394
|
+
items: [
|
|
395
|
+
{
|
|
396
|
+
content_ref: 'msg_031',
|
|
397
|
+
classification: { document_type: 'Work Deductions + Bank Details', tags: ['deductions', 'bank_details', 'wfh'], confidence: 0.91 },
|
|
398
|
+
validation: {
|
|
399
|
+
status: 'issues',
|
|
400
|
+
checks: [
|
|
401
|
+
{ check_id: 'chk_30', name: 'Receipt Requirement', status: 'warning', description: 'Multiple items claimed without receipts', severity: 'warning' },
|
|
402
|
+
{ check_id: 'chk_31', name: 'BSB Format', status: 'passed', description: 'BSB 123-223 is valid format', severity: 'info' },
|
|
403
|
+
],
|
|
404
|
+
},
|
|
405
|
+
extracted_data: [
|
|
406
|
+
{
|
|
407
|
+
category: 'Work Deductions',
|
|
408
|
+
fields: [
|
|
409
|
+
{ key: 'laundry', label: 'Laundry', value: '$300', issue: 'No receipt - may require substantiation over $150', severity: 'warning' },
|
|
410
|
+
{ key: 'travel', label: 'Travel', value: '2,000 km', },
|
|
411
|
+
{ key: 'cleaning', label: 'Office Cleaning', value: '$50/month ($600/year)', issue: 'No receipt provided', severity: 'warning' },
|
|
412
|
+
{ key: 'stationery', label: 'Stationery', value: 'With receipt' },
|
|
413
|
+
],
|
|
414
|
+
},
|
|
415
|
+
{
|
|
416
|
+
category: 'Phone & Internet',
|
|
417
|
+
fields: [
|
|
418
|
+
{ key: 'monthly_cost', label: 'Monthly Cost', value: '$190' },
|
|
419
|
+
{ key: 'work_pct', label: 'Work %', value: '80%' },
|
|
420
|
+
{ key: 'annual_claim', label: 'Annual Claim', value: '$1,824' },
|
|
421
|
+
],
|
|
422
|
+
},
|
|
423
|
+
{
|
|
424
|
+
category: 'WFH Hours',
|
|
425
|
+
fields: [
|
|
426
|
+
{ key: 'hours', label: 'Hours per Week', value: '45-50' },
|
|
427
|
+
],
|
|
428
|
+
},
|
|
429
|
+
{
|
|
430
|
+
category: 'Bank Details',
|
|
431
|
+
fields: [
|
|
432
|
+
{ key: 'bsb', label: 'BSB', value: '123-223' },
|
|
433
|
+
{ key: 'account', label: 'Account Number', value: '44412-222' },
|
|
434
|
+
{ key: 'name', label: 'Account Name', value: 'John Smith' },
|
|
435
|
+
],
|
|
436
|
+
},
|
|
437
|
+
],
|
|
438
|
+
review_status: 'pending',
|
|
439
|
+
},
|
|
440
|
+
],
|
|
441
|
+
},
|
|
442
|
+
time: '2025-03-09T19:02:00Z',
|
|
443
|
+
},
|
|
444
|
+
// Client also uploads some receipt files
|
|
445
|
+
{
|
|
446
|
+
message_id: 'msg_033',
|
|
447
|
+
role: 'client',
|
|
448
|
+
type: 'content',
|
|
449
|
+
visibility: 'all',
|
|
450
|
+
content_items: [
|
|
451
|
+
{
|
|
452
|
+
content_id: 'ct_receipts',
|
|
453
|
+
type: 'file',
|
|
454
|
+
file: { file_id: 'f_030', file_name: 'receipts_stationery_2025.pdf', file_size: '120KB', mime_type: 'application/pdf' },
|
|
455
|
+
category: 'deductions',
|
|
456
|
+
category_label: 'Work Deductions',
|
|
457
|
+
},
|
|
458
|
+
],
|
|
459
|
+
user_name: 'Pubs Abayasiri',
|
|
460
|
+
user_id: 'client_001',
|
|
461
|
+
time: '2025-03-09T19:05:00Z',
|
|
462
|
+
},
|
|
463
|
+
],
|
|
464
|
+
},
|
|
465
|
+
// ─── Task 4: Clarification with numbered questions ──────────
|
|
466
|
+
{
|
|
467
|
+
task_id: 'task_004',
|
|
468
|
+
title: 'Additional information needed for your tax return',
|
|
469
|
+
description: 'Clarification and/or documentation needed based on our review of your submitted documents.',
|
|
470
|
+
status: 'needs_attention',
|
|
471
|
+
sort_order: 4,
|
|
472
|
+
created_at: '2025-04-09T22:00:00Z',
|
|
473
|
+
created_by: 'agent_001',
|
|
474
|
+
due_date: '2025-04-17T00:00:00Z',
|
|
475
|
+
thread: [
|
|
476
|
+
{
|
|
477
|
+
message_id: 'msg_040',
|
|
478
|
+
role: 'system',
|
|
479
|
+
type: 'status_change',
|
|
480
|
+
visibility: 'all',
|
|
481
|
+
status_change: { from: 'pending', to: 'needs_attention' },
|
|
482
|
+
user_name: 'Katie Walsh',
|
|
483
|
+
time: '2025-04-09T22:06:00Z',
|
|
484
|
+
},
|
|
485
|
+
// Agent sends structured clarification
|
|
486
|
+
{
|
|
487
|
+
message_id: 'msg_041',
|
|
488
|
+
role: 'agent',
|
|
489
|
+
type: 'clarification',
|
|
490
|
+
visibility: 'all',
|
|
491
|
+
clarification: {
|
|
492
|
+
questions: [
|
|
493
|
+
{
|
|
494
|
+
id: 'q_001',
|
|
495
|
+
text: 'Interest from Westpac Life #384473 amounting to $563.10 is additional income not included in your prefill. This account is listed as a 3rd party account, do you use or have access to these funds and should we be including this income in your return?',
|
|
496
|
+
ai_ref: { content_ref: 'ct_interest_2025', check_id: 'chk_extra_01' },
|
|
497
|
+
response: "No, those are my parent's account - I help manage their finance for them as they struggle to self-manage. I do not use any of their finances for myself.",
|
|
498
|
+
response_time: '2025-04-13T10:25:00Z',
|
|
499
|
+
response_by: 'Pubs Abayasiri',
|
|
500
|
+
},
|
|
501
|
+
{
|
|
502
|
+
id: 'q_002',
|
|
503
|
+
text: "Spouse income: Last year we reported that your wife's income was nil. Is it the same this year? We note that you have now been residents for the full year.",
|
|
504
|
+
response: "She has income now. She's on ~$150k/year but worked partial year and also has shared interest. Do you need her tax return?",
|
|
505
|
+
response_time: '2025-04-13T10:25:00Z',
|
|
506
|
+
response_by: 'Pubs Abayasiri',
|
|
507
|
+
},
|
|
508
|
+
],
|
|
509
|
+
},
|
|
510
|
+
user_name: 'Katie Walsh',
|
|
511
|
+
user_id: 'agent_001',
|
|
512
|
+
time: '2025-04-09T22:06:00Z',
|
|
513
|
+
},
|
|
514
|
+
// Client marks complete
|
|
515
|
+
{
|
|
516
|
+
message_id: 'msg_042',
|
|
517
|
+
role: 'system',
|
|
518
|
+
type: 'status_change',
|
|
519
|
+
visibility: 'all',
|
|
520
|
+
status_change: { from: 'needs_attention', to: 'completed' },
|
|
521
|
+
user_name: 'Pubs Abayasiri',
|
|
522
|
+
time: '2025-04-13T10:26:00Z',
|
|
523
|
+
},
|
|
524
|
+
// Agent reopens
|
|
525
|
+
{
|
|
526
|
+
message_id: 'msg_043',
|
|
527
|
+
role: 'system',
|
|
528
|
+
type: 'status_change',
|
|
529
|
+
visibility: 'all',
|
|
530
|
+
status_change: { from: 'completed', to: 'needs_attention' },
|
|
531
|
+
user_name: 'Katie Walsh',
|
|
532
|
+
time: '2025-04-13T11:41:00Z',
|
|
533
|
+
},
|
|
534
|
+
// Agent follow-up
|
|
535
|
+
{
|
|
536
|
+
message_id: 'msg_044',
|
|
537
|
+
role: 'agent',
|
|
538
|
+
type: 'comment',
|
|
539
|
+
visibility: 'all',
|
|
540
|
+
content_text: "Hi Pubs, we need to include your wife, Wan Chi's, taxable income in your return so the taxable income amount or a copy of her tax return will be appreciated.",
|
|
541
|
+
user_name: 'Katie Walsh',
|
|
542
|
+
user_id: 'agent_001',
|
|
543
|
+
time: '2025-04-13T11:44:00Z',
|
|
544
|
+
},
|
|
545
|
+
],
|
|
546
|
+
},
|
|
547
|
+
// ─── Task 5: Pending task (no activity yet) ─────────────────
|
|
548
|
+
{
|
|
549
|
+
task_id: 'task_005',
|
|
550
|
+
title: 'Overseas assets',
|
|
551
|
+
description: 'Did you have overseas assets valued at AUD $50,000 at any time during the year? Please comment Yes or No. This includes money in the bank, shares, crypto currency and real estate',
|
|
552
|
+
status: 'pending',
|
|
553
|
+
sort_order: 5,
|
|
554
|
+
created_at: '2025-01-10T09:00:00Z',
|
|
555
|
+
created_by: 'agent_001',
|
|
556
|
+
thread: [],
|
|
557
|
+
},
|
|
558
|
+
// ─── Task 6: Rental property with multiple file uploads ─────
|
|
559
|
+
{
|
|
560
|
+
task_id: 'task_006',
|
|
561
|
+
title: 'Upload rental property information',
|
|
562
|
+
description: "Details of any investment property income and expenses including: Rental property manager's annual income & expense statement for each property. Complete annual statements for any mortgage held over the property and details of the purpose of a...",
|
|
563
|
+
status: 'completed',
|
|
564
|
+
completed_by: 'client_001',
|
|
565
|
+
completed_at: '2025-03-12T15:00:00Z',
|
|
566
|
+
sort_order: 6,
|
|
567
|
+
created_at: '2025-01-10T09:00:00Z',
|
|
568
|
+
created_by: 'agent_001',
|
|
569
|
+
thread: [
|
|
570
|
+
{
|
|
571
|
+
message_id: 'msg_060',
|
|
572
|
+
role: 'client',
|
|
573
|
+
type: 'content',
|
|
574
|
+
visibility: 'all',
|
|
575
|
+
content_text: 'depreciation schedule',
|
|
576
|
+
content_items: [
|
|
577
|
+
{
|
|
578
|
+
content_id: 'ct_rental_deprec',
|
|
579
|
+
type: 'file',
|
|
580
|
+
file: { file_id: 'f_060', file_name: 'depreciation_schedule_2025.pdf', file_size: '180KB', mime_type: 'application/pdf' },
|
|
581
|
+
category: 'rental',
|
|
582
|
+
category_label: 'Rental Property',
|
|
583
|
+
},
|
|
584
|
+
{
|
|
585
|
+
content_id: 'ct_rental_statement',
|
|
586
|
+
type: 'file',
|
|
587
|
+
file: { file_id: 'f_061', file_name: 'rental_annual_statement.pdf', file_size: '95KB', mime_type: 'application/pdf' },
|
|
588
|
+
category: 'rental',
|
|
589
|
+
category_label: 'Rental Property',
|
|
590
|
+
},
|
|
591
|
+
],
|
|
592
|
+
user_name: 'Pubs Abayasiri',
|
|
593
|
+
user_id: 'client_001',
|
|
594
|
+
time: '2025-03-12T14:00:00Z',
|
|
595
|
+
},
|
|
596
|
+
{
|
|
597
|
+
message_id: 'msg_061',
|
|
598
|
+
role: 'system',
|
|
599
|
+
type: 'doc_check',
|
|
600
|
+
visibility: 'all',
|
|
601
|
+
doc_check: {
|
|
602
|
+
content_ref: 'ct_rental_deprec',
|
|
603
|
+
status: 'passed',
|
|
604
|
+
summary: 'All checks passed for depreciation_schedule_2025.pdf',
|
|
605
|
+
},
|
|
606
|
+
time: '2025-03-12T14:01:00Z',
|
|
607
|
+
},
|
|
608
|
+
{
|
|
609
|
+
message_id: 'msg_062',
|
|
610
|
+
role: 'system',
|
|
611
|
+
type: 'doc_check',
|
|
612
|
+
visibility: 'all',
|
|
613
|
+
doc_check: {
|
|
614
|
+
content_ref: 'ct_rental_statement',
|
|
615
|
+
status: 'passed',
|
|
616
|
+
summary: 'All checks passed for rental_annual_statement.pdf',
|
|
617
|
+
},
|
|
618
|
+
time: '2025-03-12T14:01:00Z',
|
|
619
|
+
},
|
|
620
|
+
{
|
|
621
|
+
message_id: 'msg_063',
|
|
622
|
+
role: 'system',
|
|
623
|
+
type: 'ai_analysis',
|
|
624
|
+
visibility: 'agent_only',
|
|
625
|
+
ai_analysis: {
|
|
626
|
+
items: [
|
|
627
|
+
{
|
|
628
|
+
content_ref: 'ct_rental_deprec',
|
|
629
|
+
classification: { document_type: 'Depreciation Schedule', tags: ['rental', 'depreciation'], confidence: 0.97 },
|
|
630
|
+
validation: {
|
|
631
|
+
status: 'passed',
|
|
632
|
+
checks: [
|
|
633
|
+
{ check_id: 'chk_60', name: 'Date Range', status: 'passed', description: 'Covers FY2025', severity: 'info' },
|
|
634
|
+
{ check_id: 'chk_61', name: 'Property Address', status: 'passed', description: 'Address consistent', severity: 'info' },
|
|
635
|
+
],
|
|
636
|
+
},
|
|
637
|
+
review_status: 'accepted',
|
|
638
|
+
},
|
|
639
|
+
{
|
|
640
|
+
content_ref: 'ct_rental_statement',
|
|
641
|
+
classification: { document_type: 'Rental Statement', tags: ['rental', 'income'], confidence: 0.93 },
|
|
642
|
+
validation: {
|
|
643
|
+
status: 'passed',
|
|
644
|
+
checks: [
|
|
645
|
+
{ check_id: 'chk_62', name: 'Date Range', status: 'passed', description: 'Covers FY2025', severity: 'info' },
|
|
646
|
+
],
|
|
647
|
+
},
|
|
648
|
+
review_status: 'accepted',
|
|
649
|
+
},
|
|
650
|
+
],
|
|
651
|
+
},
|
|
652
|
+
time: '2025-03-12T14:02:00Z',
|
|
653
|
+
},
|
|
654
|
+
],
|
|
655
|
+
},
|
|
656
|
+
],
|
|
657
|
+
};
|
|
658
|
+
//# sourceMappingURL=sample_data.js.map
|