You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(agiloft): settle encoding refusals instead of returning a retryable 500
Pre-landing review findings.
The create body was encoded inside the request builder, so a field value
Agiloft cannot encode threw out through the executor and became a 500. The
tool runner retries 500s, and an unencodable field is a permanent refusal,
not a transient fault. Encoding now happens before the request is issued and
answers 200 with success:false like every other create failure.
Record data reaches the body builders from workflow input, so a field named
after a reserved parameter - $table, $KB, $login, $password - appended a
second occurrence of it and let that data choose the table the record lands
in or the credentials the call runs under. Reserved names are now refused.
Natural language search returned an Agiloft refusal as a 500 while its six
sibling operations return 200 with success:false, so a refused search was
retried. It now follows the same convention, and its test pins the status
rather than only the body.
Also bounds both create error messages to 300 characters, matching the alrest
reader, so an unmatched HTML error page cannot be relayed whole into the tool
response and the workflow log; drops a pagination value that does not read as
a whole number rather than forwarding it for Agiloft to ignore; removes the
alrest collection URL builder left dead by the move to EWCreate; and corrects
three doc comments the move left describing the wrong function or surface.
error: `Agiloft accepted the create but returned no record ID, so the record may exist. Check the table before retrying - retrying creates a second record. Response: ${describeAgiloftError(text)}`,
130
+
error: `Agiloft accepted the create but returned no record ID, so the record may exist. Check the table before retrying - retrying creates a second record. Response: ${describeAgiloftError(truncate(text,300))}`,
0 commit comments