Dustin Surwill (dsurwill@shield-legal.com)
2025-06-17 09:25:19

For SGGH:

  1. For each campaign we are testing a. Use a lead that has both intake and secondary
  2. If not already triggered, trigger intake automation
  3. After intake is processed, trigger secondary
  4. After secondary processed create the following structure: a. [intake case type name 1 folder] i. [intake doc 1] ii. [intake doc 2] iii. ... iv. [secondary doc 1] v. [secondary doc 2] vi. payload.json b. ...
  5. payload.json will be the only json file and created by the following process a. tools/payload.py intake.json mapping.json b. rename payload.json to intakepayload.json c. tools/payload.py secondary.json intakepayload.json
👍:skin_tone_3: Zekarias Haile
👍:skin_tone_5: Dwight Thomas
Dustin Surwill (dsurwill@shield-legal.com)
2025-06-17 11:34:54

*Thread Reply:* Reverse steps 5.a and 5.c

Dustin Surwill (dsurwill@shield-legal.com)
2025-06-17 09:28:34

For SGGH:

  1. For each campaign we are testing a. Use a lead that has both intake and secondary
  2. If not already triggered, trigger intake automation
  3. After intake is processed, trigger secondary
  4. After secondary processed create the following structure: a. [intake case type name 1 folder] i. [intake doc 1] ii. [intake doc 2] iii. ... iv. [secondary doc 1] v. [secondary doc 2] vi. payload.json b. ...
  5. payload.json will be the only json file and created by the following process a. tools/payload.py intake.json mapping.json b. rename payload.json to intakepayload.json c. tools/payload.py secondary.json intakepayload.json
Dustin Surwill (dsurwill@shield-legal.com)
2025-06-17 09:39:06

Also we need to add logic in the SEC (SGGH/main.py) to add OSOL to the case type if OSOL is the intake case type

Dustin Surwill (dsurwill@shield-legal.com)
2025-06-17 09:39:11

Also we need to add logic in the SEC to add OSOL to the case type if OSOL is the intake case type

Dustin Surwill (dsurwill@shield-legal.com)
2025-06-17 09:39:28

Also we need to add logic in the SEC (SGGH/main.py) to add OSOL to the case type if OSOL is the intake case type

Dustin Surwill (dsurwill@shield-legal.com)
2025-06-17 09:43:38

After that is complete, verify the mapping for 1752 by filtering the attached file by the UDF Screen column.

Dwight Thomas (dwight@shield-legal.com)
2025-06-17 11:27:33

So Dustin, I have been digging into the logs and I am not quite understanding why I am getting this error:

[Errno 2] No such file or directory: '2037/mapping.json'
Exception on / [POST] Traceback (most recent call last): File "/layers/google.python.pip/pip/lib/python3.12/site-packages/flask/app.py", line 1511, in wsgi_app response = self.full_dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/layers/google.python.pip/pip/lib/python3.12/site-packages/flask/app.py", line 919, in full_dispatch_request rv = self.handle_user_exception(e) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/layers/google.python.pip/pip/lib/python3.12/site-packages/flask/app.py", line 917, in full_dispatch_request rv = self.dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^ File "/layers/google.python.pip/pip/lib/python3.12/site-packages/flask/app.py", line 902, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(****view_args) # type: ignore[no-any-return] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/layers/google.python.pip/pip/lib/python3.12/site-packages/functions_framework/execution_id.py", line 106, in wrapper return view_function(**args, ****kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/layers/google.python.pip/pip/lib/python3.12/site-packages/functions_framework/__init__.py", line 142, in view_func return function(request._get_current_object()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/layers/google.python.pip/pip/lib/python3.12/site-packages/functions_framework/__init__.py", line 121, in wrapper return func(**args, ****kwargs) ^^^^^^^^^^^^^^^^^^^^^ File "/workspace/main.py", line 16, in main obj: IntegrationMappingObject = function_mapping(request) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/workspace/gcp_utils.py", line 152, in function_mapping with open(mapping_file or f'{log_row["case_type_id"]}/mapping.json') as mapping_file: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [Errno 2] No such file or directory: '2037/mapping.json'
Dustin Surwill (dsurwill@shield-legal.com)
2025-06-17 11:36:33

*Thread Reply:* Not sure, just tried a redeploy from github

Dwight Thomas (dwight@shield-legal.com)
2025-06-17 11:37:21

It's interesting I just found the json for this call.

Dwight Thomas (dwight@shield-legal.com)
2025-06-17 11:37:48

So I am looking to see if the secondary information is being passed through. data

Dustin Surwill (dsurwill@shield-legal.com)
2025-06-18 08:31:35

I made another small commit to SGGH, test a SEC

👍:skin_tone_5: Dwight Thomas
Dwight Thomas (dwight@shield-legal.com)
2025-06-18 13:42:49

We got an integration error record, but this time we got the following response:

<Response [200]>

Dwight Thomas (dwight@shield-legal.com)
2025-06-18 13:47:19

So I think the API call is working; maybe something within our GCP process is throwing an error.

Dustin Surwill (dsurwill@shield-legal.com)
2025-06-18 13:54:20

we expected that error. remember it is currently pointed at echo function

:awesome_dance: Dwight Thomas
Dustin Surwill (dsurwill@shield-legal.com)
2025-06-18 13:54:35

therefore no ids will be returned

Dwight Thomas (dwight@shield-legal.com)
2025-06-18 13:55:15

BANG BANG!!! So that test was successful...

Dustin Surwill (dsurwill@shield-legal.com)
2025-06-18 13:55:53

yes. now follow the instructions to generate the zip of the correct files https://themedialaboratory.slack.com/archives/C08SKCFBJ49/p1750170319087969

Dustin Surwill (https://themedialaboratory.slack.com/team/U07LPFF756H)
Dwight Thomas (dwight@shield-legal.com)
2025-06-18 13:56:10

Got it up now.