Skip to content

Catch al_custom_error_screen errors - #1116

Merged
plocket merged 1 commit into
v5from
catch_al_custom_error
Sep 10, 2026
Merged

plocket merged 1 commit into
v5from
catch_al_custom_error

Conversation

@BryceStevenWilley

@BryceStevenWilley BryceStevenWilley commented Aug 31, 2026

Copy link
Copy Markdown
Collaborator

[Addresses #656]

Reason for this PR

The custom AL screens are not recognized as actual error screens, so Kiln will attempt to continue navigating when it sees them, even when all it can do is stay on the same screen. This wastes MAX_TIMEOUT minutes each time the interviews fail, instead of recognizing the failure immediately.

This fix:

  • isn't really testable: the test is if Kiln can detect a failure within a few screens instead of a few hundred, and that's not currently a check we have / can do.
  • still seems to not work when not going through the story table for some reason? Just putting And I tap to continue multiple times, the error is checked, but Kiln doesn't do anything with it and just continues going, says the test passed. https://github.com/SuffolkLITLab/ALKiln/blame/v5/lib/scope.js#L2325-L2340

I've already been sitting on this PR for like a month, it's affecting all of our interviews (when there are failures), so I think it should get merged, even though I can't figure out testing or really fixing the core issue (error handling).

Any manual testing I have done to ensure my PR is working

Made an example interview and test to manually go through to ensure this is working.

---
include:
  - docassemble.AssemblyLine:al_package.yml
  - docassemble.AssemblyLine:al_visual.yml
---
mandatory: True
code: |
  signature
  missing_var
---
question: Signature
signature: signature
---
 Scenario: Fail with al_custom_error page from random input
          Given the final Scenario status should be "failed"
          Given I start the interview at "test_missing_var_al_custom_error"
          And the max seconds for each step in this scenario is 10
          And I get to the question id "idk" with this data:
          | var | value |
          | signature | "signature" |

@BryceStevenWilley

Copy link
Copy Markdown
Collaborator Author

Related to #1111 in that it would have the same fix, but I don't know how to reproduce that particular screen.

@plocket plocket left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry this has taken so long. Since this is obstructive at the moment, and you've tested it, let's merge it and I can keep working on the outstanding issues.

@plocket

plocket commented Sep 9, 2026

Copy link
Copy Markdown
Collaborator

Related to #1111 in that it would have the same fix, but I don't know how to reproduce that particular screen.

Related to ALKiln setting a three-part date, thus needing an update to ALKiln? Or related to docassemble-AssemblyLine developing a custom default for AL's three-part date, thus not requiring a change to ALKiln? Or something else?

@BryceStevenWilley BryceStevenWilley linked an issue Sep 10, 2026 that may be closed by this pull request
@BryceStevenWilley

Copy link
Copy Markdown
Collaborator Author

Related to ALKiln setting a three-part date, thus needing an update to ALKiln?

The issue I linked to (#1111) was about detecting another error screen, one that says "GithubException: You must be an org admin or have the actions secrets...", and I just didn't know where that screen happens in docassemble.

And thanks for linking #656, missed that we already had an issue open for this.

@plocket
plocket merged commit b21344a into v5 Sep 10, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add exception for AL - detect custom error screen

2 participants