Heroku
tcp/443 tcp/80
GraphQL introspection is enabled.
This could leak to data leak if not properly configured.
Severity: medium
Fingerprint: c2db3a1c40d490db1a0bbaa399217848c4739fec7ec2bd802bbe7e03398e41eb
GraphQL introspection enabled at /graphql Types: 147 (by kind: ENUM: 2, INPUT_OBJECT: 4, INTERFACE: 1, OBJECT: 135, SCALAR: 5) Operations: - Query: Query | fields: academicMonthlyReports, bookByIsbn, books, booksByAuthor, booksByTitle - Mutation: Mutation | fields: acceptBoombassadorRole, addGroup, addGroupReadingBookLog, addReadingBand, addReadingBandRank Directives: deprecated, include, oneOf, skip, specifiedBy (total: 5)
Severity: medium
Fingerprint: c2db3a1c40d490db1a0bbaa39d2d5a588fb47bbc5198d7d02d9a80ef7dbb5f97
GraphQL introspection enabled at /graphql Types: 146 (by kind: ENUM: 2, INPUT_OBJECT: 4, INTERFACE: 1, OBJECT: 134, SCALAR: 5) Operations: - Query: Query | fields: academicMonthlyReports, bookByIsbn, books, booksByAuthor, booksByTitle - Mutation: Mutation | fields: addGroup, addGroupReadingBookLog, addReadingBand, addReadingBandRank, addReadingBandToStudent Directives: deprecated, include, oneOf, skip, specifiedBy (total: 5)
Severity: medium
Fingerprint: c2db3a1c40d490db1a0bbaa31d9133f96b43259b5b1c1a211fd90856da4b2e32
GraphQL introspection enabled at /graphql Types: 141 (by kind: ENUM: 2, INPUT_OBJECT: 4, INTERFACE: 1, OBJECT: 129, SCALAR: 5) Operations: - Query: Query | fields: academicMonthlyReports, bookByIsbn, books, booksByAuthor, booksByTitle - Mutation: Mutation | fields: addGroup, addGroupReadingBookLog, addReadingBand, addReadingBandRank, addReadingBandToStudent Directives: deprecated, include, oneOf, skip, specifiedBy (total: 5)
GraphQL introspection is enabled.
This could leak to data leak if not properly configured.
Severity: medium
Fingerprint: c2db3a1c40d490db1a0bbaa399217848c4739fec7ec2bd802bbe7e03398e41eb
GraphQL introspection enabled at /graphql Types: 147 (by kind: ENUM: 2, INPUT_OBJECT: 4, INTERFACE: 1, OBJECT: 135, SCALAR: 5) Operations: - Query: Query | fields: academicMonthlyReports, bookByIsbn, books, booksByAuthor, booksByTitle - Mutation: Mutation | fields: acceptBoombassadorRole, addGroup, addGroupReadingBookLog, addReadingBand, addReadingBandRank Directives: deprecated, include, oneOf, skip, specifiedBy (total: 5)
Severity: medium
Fingerprint: c2db3a1c40d490db1a0bbaa39d2d5a588fb47bbc5198d7d02d9a80ef7dbb5f97
GraphQL introspection enabled at /graphql Types: 146 (by kind: ENUM: 2, INPUT_OBJECT: 4, INTERFACE: 1, OBJECT: 134, SCALAR: 5) Operations: - Query: Query | fields: academicMonthlyReports, bookByIsbn, books, booksByAuthor, booksByTitle - Mutation: Mutation | fields: addGroup, addGroupReadingBookLog, addReadingBand, addReadingBandRank, addReadingBandToStudent Directives: deprecated, include, oneOf, skip, specifiedBy (total: 5)
Severity: medium
Fingerprint: c2db3a1c40d490db1a0bbaa31d9133f96b43259b5b1c1a211fd90856da4b2e32
GraphQL introspection enabled at /graphql Types: 141 (by kind: ENUM: 2, INPUT_OBJECT: 4, INTERFACE: 1, OBJECT: 129, SCALAR: 5) Operations: - Query: Query | fields: academicMonthlyReports, bookByIsbn, books, booksByAuthor, booksByTitle - Mutation: Mutation | fields: addGroup, addGroupReadingBookLog, addReadingBand, addReadingBandRank, addReadingBandToStudent Directives: deprecated, include, oneOf, skip, specifiedBy (total: 5)
Open service 52.223.53.203:443 · staging-api.go-read.app
2026-01-09 23:47
HTTP/1.1 404 Not Found
Content-Length: 28349
Content-Type: text/html; charset=UTF-8
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=6QTaqusLPQOrKUOggzoEGUtScuMM81dEQQWWBgbREwc%3D\u0026sid=812dcc77-0bd0-43b1-a5f1-b25750382959\u0026ts=1768002442"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=6QTaqusLPQOrKUOggzoEGUtScuMM81dEQQWWBgbREwc%3D&sid=812dcc77-0bd0-43b1-a5f1-b25750382959&ts=1768002442"
Server: Heroku
Vary: Origin
Via: 1.1 heroku-router
X-Request-Id: 204f170a-b74e-577c-c60f-5a5513a25811
X-Runtime: 0.038983
Date: Fri, 09 Jan 2026 23:47:22 GMT
Connection: close
Page title: Action Controller: Exception caught
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="turbo-visit-control" content="reload">
<title>Action Controller: Exception caught</title>
<style>
body {
background-color: #FAFAFA;
color: #333;
color-scheme: light dark;
supported-color-schemes: light dark;
margin: 0px;
}
body, p, ol, ul, td {
font-family: helvetica, verdana, arial, sans-serif;
font-size: 13px;
line-height: 18px;
}
pre {
font-size: 11px;
white-space: pre-wrap;
}
pre.box {
border: 1px solid #EEE;
padding: 10px;
margin: 0px;
width: 958px;
}
header {
color: #F0F0F0;
background: #C00;
padding: 0.5em 1.5em;
}
h1 {
overflow-wrap: break-word;
margin: 0.2em 0;
line-height: 1.1em;
font-size: 2em;
}
h2 {
color: #C00;
line-height: 25px;
}
code.traces {
font-size: 11px;
}
.response-heading, .request-heading {
margin-top: 30px;
}
.exception-message {
padding: 8px 0;
}
.exception-message .message {
margin-bottom: 8px;
line-height: 25px;
font-size: 1.5em;
font-weight: bold;
color: #C00;
}
.details {
border: 1px solid #D0D0D0;
border-radius: 4px;
margin: 1em 0px;
display: block;
max-width: 978px;
}
.summary {
padding: 8px 15px;
border-bottom: 1px solid #D0D0D0;
display: block;
}
a.summary {
color: #F0F0F0;
text-decoration: none;
background: #C52F24;
border-bottom: none;
}
.details pre {
margin: 5px;
border: none;
}
#container {
box-sizing: border-box;
width: 100%;
padding: 0 1.5em;
}
.source * {
margin: 0px;
padding: 0px;
}
.source {
border: 1px solid #D9D9D9;
background: #ECECEC;
max-width: 978px;
}
.source pre {
padding: 10px 0px;
border: none;
}
.source .data {
font-size: 80%;
overflow: auto;
background-color: #FFF;
}
.info {
padding: 0.5em;
}
.source .data .line_numbers {
background-color: #ECECEC;
color: #555;
padding: 1em .5em;
border-right: 1px solid #DDD;
text-align: right;
}
.line {
padding-left: 10px;
white-space: pre;
}
.line:hover {
background-color: #F6F6F6;
}
.line.active {
background-color: #FCC;
}
.error_highlight {
display: inline-block;
background-color: #FF9;
text-decoration: #F00 wavy underline;
}
.error_highlight_tip {
color: #666;
padding: 2px 2px;
font-size: 10px;
}
.button_to {
display: inline-block;
margin-top: 0.75em;
margin-bottom: 0.75em;
}
.hidden {
display: none;
}
.correction {
list-style-type: none;
}
input[type="submit"] {
color: white;
background-color: #C00;
border: none;
border-radius: 12px;
box-shadow: 0 3px #F99;
font-size: 13px;
font-weight: bold;
margin: 0;
padding: 10px 18px;
cursor: pointer;
-webkit-appearance: none;
}
input[type="submit"]:focus,
input[type="submit"]:hover {
opacity: 0.8;
}
input[type="submit"]:active {
box-shadow: 0 2px #F99;
transform: translateY(1px)
}
a { color: #980905; }
a:visited { color: #666; }
a.trace-frames {
color: #666;
overflow-wrap: break-word;
}
a:hover, a.trace-frames.selected { color: #C00; }
a.summary:hover { color: #FFF; }
@media (prefers-color-scheme: dark) {
body {
background-color: #222;
color: #ECECEC;
}
.details, .summary {
border-color: #666;
}
.source {
border-color: #555;
background-color: #333;
}
.source .data {
Open service 3.33.249.164:80 · staging-api.go-read.app
2026-01-09 10:28
HTTP/1.1 404 Not Found
Content-Length: 28351
Content-Type: text/html; charset=UTF-8
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=yCCOT7QoGO%2FXLoXr3RCuUfySv67E%2FIoHbWpZsCm8TPg%3D\u0026sid=812dcc77-0bd0-43b1-a5f1-b25750382959\u0026ts=1767954562"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=yCCOT7QoGO%2FXLoXr3RCuUfySv67E%2FIoHbWpZsCm8TPg%3D&sid=812dcc77-0bd0-43b1-a5f1-b25750382959&ts=1767954562"
Server: Heroku
Vary: Origin
Via: 1.1 heroku-router
X-Request-Id: 0065cecf-fa88-b176-a551-58df80a80215
X-Runtime: 0.032562
Date: Fri, 09 Jan 2026 10:29:22 GMT
Connection: close
Page title: Action Controller: Exception caught
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="turbo-visit-control" content="reload">
<title>Action Controller: Exception caught</title>
<style>
body {
background-color: #FAFAFA;
color: #333;
color-scheme: light dark;
supported-color-schemes: light dark;
margin: 0px;
}
body, p, ol, ul, td {
font-family: helvetica, verdana, arial, sans-serif;
font-size: 13px;
line-height: 18px;
}
pre {
font-size: 11px;
white-space: pre-wrap;
}
pre.box {
border: 1px solid #EEE;
padding: 10px;
margin: 0px;
width: 958px;
}
header {
color: #F0F0F0;
background: #C00;
padding: 0.5em 1.5em;
}
h1 {
overflow-wrap: break-word;
margin: 0.2em 0;
line-height: 1.1em;
font-size: 2em;
}
h2 {
color: #C00;
line-height: 25px;
}
code.traces {
font-size: 11px;
}
.response-heading, .request-heading {
margin-top: 30px;
}
.exception-message {
padding: 8px 0;
}
.exception-message .message {
margin-bottom: 8px;
line-height: 25px;
font-size: 1.5em;
font-weight: bold;
color: #C00;
}
.details {
border: 1px solid #D0D0D0;
border-radius: 4px;
margin: 1em 0px;
display: block;
max-width: 978px;
}
.summary {
padding: 8px 15px;
border-bottom: 1px solid #D0D0D0;
display: block;
}
a.summary {
color: #F0F0F0;
text-decoration: none;
background: #C52F24;
border-bottom: none;
}
.details pre {
margin: 5px;
border: none;
}
#container {
box-sizing: border-box;
width: 100%;
padding: 0 1.5em;
}
.source * {
margin: 0px;
padding: 0px;
}
.source {
border: 1px solid #D9D9D9;
background: #ECECEC;
max-width: 978px;
}
.source pre {
padding: 10px 0px;
border: none;
}
.source .data {
font-size: 80%;
overflow: auto;
background-color: #FFF;
}
.info {
padding: 0.5em;
}
.source .data .line_numbers {
background-color: #ECECEC;
color: #555;
padding: 1em .5em;
border-right: 1px solid #DDD;
text-align: right;
}
.line {
padding-left: 10px;
white-space: pre;
}
.line:hover {
background-color: #F6F6F6;
}
.line.active {
background-color: #FCC;
}
.error_highlight {
display: inline-block;
background-color: #FF9;
text-decoration: #F00 wavy underline;
}
.error_highlight_tip {
color: #666;
padding: 2px 2px;
font-size: 10px;
}
.button_to {
display: inline-block;
margin-top: 0.75em;
margin-bottom: 0.75em;
}
.hidden {
display: none;
}
.correction {
list-style-type: none;
}
input[type="submit"] {
color: white;
background-color: #C00;
border: none;
border-radius: 12px;
box-shadow: 0 3px #F99;
font-size: 13px;
font-weight: bold;
margin: 0;
padding: 10px 18px;
cursor: pointer;
-webkit-appearance: none;
}
input[type="submit"]:focus,
input[type="submit"]:hover {
opacity: 0.8;
}
input[type="submit"]:active {
box-shadow: 0 2px #F99;
transform: translateY(1px)
}
a { color: #980905; }
a:visited { color: #666; }
a.trace-frames {
color: #666;
overflow-wrap: break-word;
}
a:hover, a.trace-frames.selected { color: #C00; }
a.summary:hover { color: #FFF; }
@media (prefers-color-scheme: dark) {
body {
background-color: #222;
color: #ECECEC;
}
.details, .summary {
border-color: #666;
}
.source {
border-color: #555;
background-color: #333;
}
.source .data {
Open service 52.223.53.203:443 · staging-api.go-read.app
2026-01-02 21:39
HTTP/1.1 404 Not Found
Content-Length: 28352
Content-Type: text/html; charset=UTF-8
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=2Dhiory0vCBRSImnt2YdpoD0qmMsSQ4lpi9tMgYclbw%3D\u0026sid=812dcc77-0bd0-43b1-a5f1-b25750382959\u0026ts=1767389981"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=2Dhiory0vCBRSImnt2YdpoD0qmMsSQ4lpi9tMgYclbw%3D&sid=812dcc77-0bd0-43b1-a5f1-b25750382959&ts=1767389981"
Server: Heroku
Vary: Origin
Via: 1.1 heroku-router
X-Request-Id: e328201e-6250-9a16-25c1-0ded83b7eccc
X-Runtime: 0.052404
Date: Fri, 02 Jan 2026 21:39:41 GMT
Connection: close
Page title: Action Controller: Exception caught
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="turbo-visit-control" content="reload">
<title>Action Controller: Exception caught</title>
<style>
body {
background-color: #FAFAFA;
color: #333;
color-scheme: light dark;
supported-color-schemes: light dark;
margin: 0px;
}
body, p, ol, ul, td {
font-family: helvetica, verdana, arial, sans-serif;
font-size: 13px;
line-height: 18px;
}
pre {
font-size: 11px;
white-space: pre-wrap;
}
pre.box {
border: 1px solid #EEE;
padding: 10px;
margin: 0px;
width: 958px;
}
header {
color: #F0F0F0;
background: #C00;
padding: 0.5em 1.5em;
}
h1 {
overflow-wrap: break-word;
margin: 0.2em 0;
line-height: 1.1em;
font-size: 2em;
}
h2 {
color: #C00;
line-height: 25px;
}
code.traces {
font-size: 11px;
}
.response-heading, .request-heading {
margin-top: 30px;
}
.exception-message {
padding: 8px 0;
}
.exception-message .message {
margin-bottom: 8px;
line-height: 25px;
font-size: 1.5em;
font-weight: bold;
color: #C00;
}
.details {
border: 1px solid #D0D0D0;
border-radius: 4px;
margin: 1em 0px;
display: block;
max-width: 978px;
}
.summary {
padding: 8px 15px;
border-bottom: 1px solid #D0D0D0;
display: block;
}
a.summary {
color: #F0F0F0;
text-decoration: none;
background: #C52F24;
border-bottom: none;
}
.details pre {
margin: 5px;
border: none;
}
#container {
box-sizing: border-box;
width: 100%;
padding: 0 1.5em;
}
.source * {
margin: 0px;
padding: 0px;
}
.source {
border: 1px solid #D9D9D9;
background: #ECECEC;
max-width: 978px;
}
.source pre {
padding: 10px 0px;
border: none;
}
.source .data {
font-size: 80%;
overflow: auto;
background-color: #FFF;
}
.info {
padding: 0.5em;
}
.source .data .line_numbers {
background-color: #ECECEC;
color: #555;
padding: 1em .5em;
border-right: 1px solid #DDD;
text-align: right;
}
.line {
padding-left: 10px;
white-space: pre;
}
.line:hover {
background-color: #F6F6F6;
}
.line.active {
background-color: #FCC;
}
.error_highlight {
display: inline-block;
background-color: #FF9;
text-decoration: #F00 wavy underline;
}
.error_highlight_tip {
color: #666;
padding: 2px 2px;
font-size: 10px;
}
.button_to {
display: inline-block;
margin-top: 0.75em;
margin-bottom: 0.75em;
}
.hidden {
display: none;
}
.correction {
list-style-type: none;
}
input[type="submit"] {
color: white;
background-color: #C00;
border: none;
border-radius: 12px;
box-shadow: 0 3px #F99;
font-size: 13px;
font-weight: bold;
margin: 0;
padding: 10px 18px;
cursor: pointer;
-webkit-appearance: none;
}
input[type="submit"]:focus,
input[type="submit"]:hover {
opacity: 0.8;
}
input[type="submit"]:active {
box-shadow: 0 2px #F99;
transform: translateY(1px)
}
a { color: #980905; }
a:visited { color: #666; }
a.trace-frames {
color: #666;
overflow-wrap: break-word;
}
a:hover, a.trace-frames.selected { color: #C00; }
a.summary:hover { color: #FFF; }
@media (prefers-color-scheme: dark) {
body {
background-color: #222;
color: #ECECEC;
}
.details, .summary {
border-color: #666;
}
.source {
border-color: #555;
background-color: #333;
}
.source .data {
Open service 3.33.249.164:80 · staging-api.go-read.app
2026-01-02 13:54
HTTP/1.1 404 Not Found
Content-Length: 28351
Content-Type: text/html; charset=UTF-8
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=r1FxqbETrqS5Bf2QByPvxTVku1%2F2t10QF3jFGwSiH%2BY%3D\u0026sid=812dcc77-0bd0-43b1-a5f1-b25750382959\u0026ts=1767362086"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=r1FxqbETrqS5Bf2QByPvxTVku1%2F2t10QF3jFGwSiH%2BY%3D&sid=812dcc77-0bd0-43b1-a5f1-b25750382959&ts=1767362086"
Server: Heroku
Vary: Origin
Via: 1.1 heroku-router
X-Request-Id: 5f983ea6-ec5a-b4d3-f1db-7e3cdb3ea207
X-Runtime: 0.032742
Date: Fri, 02 Jan 2026 13:54:47 GMT
Connection: close
Page title: Action Controller: Exception caught
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="turbo-visit-control" content="reload">
<title>Action Controller: Exception caught</title>
<style>
body {
background-color: #FAFAFA;
color: #333;
color-scheme: light dark;
supported-color-schemes: light dark;
margin: 0px;
}
body, p, ol, ul, td {
font-family: helvetica, verdana, arial, sans-serif;
font-size: 13px;
line-height: 18px;
}
pre {
font-size: 11px;
white-space: pre-wrap;
}
pre.box {
border: 1px solid #EEE;
padding: 10px;
margin: 0px;
width: 958px;
}
header {
color: #F0F0F0;
background: #C00;
padding: 0.5em 1.5em;
}
h1 {
overflow-wrap: break-word;
margin: 0.2em 0;
line-height: 1.1em;
font-size: 2em;
}
h2 {
color: #C00;
line-height: 25px;
}
code.traces {
font-size: 11px;
}
.response-heading, .request-heading {
margin-top: 30px;
}
.exception-message {
padding: 8px 0;
}
.exception-message .message {
margin-bottom: 8px;
line-height: 25px;
font-size: 1.5em;
font-weight: bold;
color: #C00;
}
.details {
border: 1px solid #D0D0D0;
border-radius: 4px;
margin: 1em 0px;
display: block;
max-width: 978px;
}
.summary {
padding: 8px 15px;
border-bottom: 1px solid #D0D0D0;
display: block;
}
a.summary {
color: #F0F0F0;
text-decoration: none;
background: #C52F24;
border-bottom: none;
}
.details pre {
margin: 5px;
border: none;
}
#container {
box-sizing: border-box;
width: 100%;
padding: 0 1.5em;
}
.source * {
margin: 0px;
padding: 0px;
}
.source {
border: 1px solid #D9D9D9;
background: #ECECEC;
max-width: 978px;
}
.source pre {
padding: 10px 0px;
border: none;
}
.source .data {
font-size: 80%;
overflow: auto;
background-color: #FFF;
}
.info {
padding: 0.5em;
}
.source .data .line_numbers {
background-color: #ECECEC;
color: #555;
padding: 1em .5em;
border-right: 1px solid #DDD;
text-align: right;
}
.line {
padding-left: 10px;
white-space: pre;
}
.line:hover {
background-color: #F6F6F6;
}
.line.active {
background-color: #FCC;
}
.error_highlight {
display: inline-block;
background-color: #FF9;
text-decoration: #F00 wavy underline;
}
.error_highlight_tip {
color: #666;
padding: 2px 2px;
font-size: 10px;
}
.button_to {
display: inline-block;
margin-top: 0.75em;
margin-bottom: 0.75em;
}
.hidden {
display: none;
}
.correction {
list-style-type: none;
}
input[type="submit"] {
color: white;
background-color: #C00;
border: none;
border-radius: 12px;
box-shadow: 0 3px #F99;
font-size: 13px;
font-weight: bold;
margin: 0;
padding: 10px 18px;
cursor: pointer;
-webkit-appearance: none;
}
input[type="submit"]:focus,
input[type="submit"]:hover {
opacity: 0.8;
}
input[type="submit"]:active {
box-shadow: 0 2px #F99;
transform: translateY(1px)
}
a { color: #980905; }
a:visited { color: #666; }
a.trace-frames {
color: #666;
overflow-wrap: break-word;
}
a:hover, a.trace-frames.selected { color: #C00; }
a.summary:hover { color: #FFF; }
@media (prefers-color-scheme: dark) {
body {
background-color: #222;
color: #ECECEC;
}
.details, .summary {
border-color: #666;
}
.source {
border-color: #555;
background-color: #333;
}
.source .data {
Open service 52.223.53.203:443 · staging-api.go-read.app
2025-12-23 01:37
HTTP/1.1 404 Not Found
Content-Length: 28350
Content-Type: text/html; charset=UTF-8
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=MZN8kSf%2BS%2FOurgLhAREMoYY37cNZUlHAElRlsPKXp1I%3D\u0026sid=812dcc77-0bd0-43b1-a5f1-b25750382959\u0026ts=1766453867"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=MZN8kSf%2BS%2FOurgLhAREMoYY37cNZUlHAElRlsPKXp1I%3D&sid=812dcc77-0bd0-43b1-a5f1-b25750382959&ts=1766453867"
Server: Heroku
Vary: Origin
Via: 1.1 heroku-router
X-Request-Id: 5fd09e89-a247-dd6d-345e-06649f116524
X-Runtime: 0.082564
Date: Tue, 23 Dec 2025 01:37:47 GMT
Connection: close
Page title: Action Controller: Exception caught
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="turbo-visit-control" content="reload">
<title>Action Controller: Exception caught</title>
<style>
body {
background-color: #FAFAFA;
color: #333;
color-scheme: light dark;
supported-color-schemes: light dark;
margin: 0px;
}
body, p, ol, ul, td {
font-family: helvetica, verdana, arial, sans-serif;
font-size: 13px;
line-height: 18px;
}
pre {
font-size: 11px;
white-space: pre-wrap;
}
pre.box {
border: 1px solid #EEE;
padding: 10px;
margin: 0px;
width: 958px;
}
header {
color: #F0F0F0;
background: #C00;
padding: 0.5em 1.5em;
}
h1 {
overflow-wrap: break-word;
margin: 0.2em 0;
line-height: 1.1em;
font-size: 2em;
}
h2 {
color: #C00;
line-height: 25px;
}
code.traces {
font-size: 11px;
}
.response-heading, .request-heading {
margin-top: 30px;
}
.exception-message {
padding: 8px 0;
}
.exception-message .message {
margin-bottom: 8px;
line-height: 25px;
font-size: 1.5em;
font-weight: bold;
color: #C00;
}
.details {
border: 1px solid #D0D0D0;
border-radius: 4px;
margin: 1em 0px;
display: block;
max-width: 978px;
}
.summary {
padding: 8px 15px;
border-bottom: 1px solid #D0D0D0;
display: block;
}
a.summary {
color: #F0F0F0;
text-decoration: none;
background: #C52F24;
border-bottom: none;
}
.details pre {
margin: 5px;
border: none;
}
#container {
box-sizing: border-box;
width: 100%;
padding: 0 1.5em;
}
.source * {
margin: 0px;
padding: 0px;
}
.source {
border: 1px solid #D9D9D9;
background: #ECECEC;
max-width: 978px;
}
.source pre {
padding: 10px 0px;
border: none;
}
.source .data {
font-size: 80%;
overflow: auto;
background-color: #FFF;
}
.info {
padding: 0.5em;
}
.source .data .line_numbers {
background-color: #ECECEC;
color: #555;
padding: 1em .5em;
border-right: 1px solid #DDD;
text-align: right;
}
.line {
padding-left: 10px;
white-space: pre;
}
.line:hover {
background-color: #F6F6F6;
}
.line.active {
background-color: #FCC;
}
.error_highlight {
display: inline-block;
background-color: #FF9;
text-decoration: #F00 wavy underline;
}
.error_highlight_tip {
color: #666;
padding: 2px 2px;
font-size: 10px;
}
.button_to {
display: inline-block;
margin-top: 0.75em;
margin-bottom: 0.75em;
}
.hidden {
display: none;
}
.correction {
list-style-type: none;
}
input[type="submit"] {
color: white;
background-color: #C00;
border: none;
border-radius: 12px;
box-shadow: 0 3px #F99;
font-size: 13px;
font-weight: bold;
margin: 0;
padding: 10px 18px;
cursor: pointer;
-webkit-appearance: none;
}
input[type="submit"]:focus,
input[type="submit"]:hover {
opacity: 0.8;
}
input[type="submit"]:active {
box-shadow: 0 2px #F99;
transform: translateY(1px)
}
a { color: #980905; }
a:visited { color: #666; }
a.trace-frames {
color: #666;
overflow-wrap: break-word;
}
a:hover, a.trace-frames.selected { color: #C00; }
a.summary:hover { color: #FFF; }
@media (prefers-color-scheme: dark) {
body {
background-color: #222;
color: #ECECEC;
}
.details, .summary {
border-color: #666;
}
.source {
border-color: #555;
background-color: #333;
}
.source .data {
Open service 3.33.249.164:80 · staging-api.go-read.app
2025-12-23 00:54
HTTP/1.1 404 Not Found
Content-Length: 28350
Content-Type: text/html; charset=UTF-8
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=MgJAVaZ1XCfAxhh2pfTj3w%2FhgiJgq0kN48n7N28fV5I%3D\u0026sid=812dcc77-0bd0-43b1-a5f1-b25750382959\u0026ts=1766451252"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=MgJAVaZ1XCfAxhh2pfTj3w%2FhgiJgq0kN48n7N28fV5I%3D&sid=812dcc77-0bd0-43b1-a5f1-b25750382959&ts=1766451252"
Server: Heroku
Vary: Origin
Via: 1.1 heroku-router
X-Request-Id: 6a5fb14e-eccc-cb81-f293-7736df760f3b
X-Runtime: 0.031027
Date: Tue, 23 Dec 2025 00:54:12 GMT
Connection: close
Page title: Action Controller: Exception caught
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="turbo-visit-control" content="reload">
<title>Action Controller: Exception caught</title>
<style>
body {
background-color: #FAFAFA;
color: #333;
color-scheme: light dark;
supported-color-schemes: light dark;
margin: 0px;
}
body, p, ol, ul, td {
font-family: helvetica, verdana, arial, sans-serif;
font-size: 13px;
line-height: 18px;
}
pre {
font-size: 11px;
white-space: pre-wrap;
}
pre.box {
border: 1px solid #EEE;
padding: 10px;
margin: 0px;
width: 958px;
}
header {
color: #F0F0F0;
background: #C00;
padding: 0.5em 1.5em;
}
h1 {
overflow-wrap: break-word;
margin: 0.2em 0;
line-height: 1.1em;
font-size: 2em;
}
h2 {
color: #C00;
line-height: 25px;
}
code.traces {
font-size: 11px;
}
.response-heading, .request-heading {
margin-top: 30px;
}
.exception-message {
padding: 8px 0;
}
.exception-message .message {
margin-bottom: 8px;
line-height: 25px;
font-size: 1.5em;
font-weight: bold;
color: #C00;
}
.details {
border: 1px solid #D0D0D0;
border-radius: 4px;
margin: 1em 0px;
display: block;
max-width: 978px;
}
.summary {
padding: 8px 15px;
border-bottom: 1px solid #D0D0D0;
display: block;
}
a.summary {
color: #F0F0F0;
text-decoration: none;
background: #C52F24;
border-bottom: none;
}
.details pre {
margin: 5px;
border: none;
}
#container {
box-sizing: border-box;
width: 100%;
padding: 0 1.5em;
}
.source * {
margin: 0px;
padding: 0px;
}
.source {
border: 1px solid #D9D9D9;
background: #ECECEC;
max-width: 978px;
}
.source pre {
padding: 10px 0px;
border: none;
}
.source .data {
font-size: 80%;
overflow: auto;
background-color: #FFF;
}
.info {
padding: 0.5em;
}
.source .data .line_numbers {
background-color: #ECECEC;
color: #555;
padding: 1em .5em;
border-right: 1px solid #DDD;
text-align: right;
}
.line {
padding-left: 10px;
white-space: pre;
}
.line:hover {
background-color: #F6F6F6;
}
.line.active {
background-color: #FCC;
}
.error_highlight {
display: inline-block;
background-color: #FF9;
text-decoration: #F00 wavy underline;
}
.error_highlight_tip {
color: #666;
padding: 2px 2px;
font-size: 10px;
}
.button_to {
display: inline-block;
margin-top: 0.75em;
margin-bottom: 0.75em;
}
.hidden {
display: none;
}
.correction {
list-style-type: none;
}
input[type="submit"] {
color: white;
background-color: #C00;
border: none;
border-radius: 12px;
box-shadow: 0 3px #F99;
font-size: 13px;
font-weight: bold;
margin: 0;
padding: 10px 18px;
cursor: pointer;
-webkit-appearance: none;
}
input[type="submit"]:focus,
input[type="submit"]:hover {
opacity: 0.8;
}
input[type="submit"]:active {
box-shadow: 0 2px #F99;
transform: translateY(1px)
}
a { color: #980905; }
a:visited { color: #666; }
a.trace-frames {
color: #666;
overflow-wrap: break-word;
}
a:hover, a.trace-frames.selected { color: #C00; }
a.summary:hover { color: #FFF; }
@media (prefers-color-scheme: dark) {
body {
background-color: #222;
color: #ECECEC;
}
.details, .summary {
border-color: #666;
}
.source {
border-color: #555;
background-color: #333;
}
.source .data {
Open service 3.33.249.164:80 · staging-api.go-read.app
2025-12-20 17:01
HTTP/1.1 404 Not Found
Content-Length: 28350
Content-Type: text/html; charset=UTF-8
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=yjiuIbpYenqsuTge1qk4jJcIA4BKtmPKZCrtQOw2G%2Bk%3D\u0026sid=812dcc77-0bd0-43b1-a5f1-b25750382959\u0026ts=1766250094"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=yjiuIbpYenqsuTge1qk4jJcIA4BKtmPKZCrtQOw2G%2Bk%3D&sid=812dcc77-0bd0-43b1-a5f1-b25750382959&ts=1766250094"
Server: Heroku
Vary: Origin
Via: 1.1 heroku-router
X-Request-Id: a3de94d6-917b-622e-ad07-0c1adf663de7
X-Runtime: 0.030105
Date: Sat, 20 Dec 2025 17:01:34 GMT
Connection: close
Page title: Action Controller: Exception caught
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="turbo-visit-control" content="reload">
<title>Action Controller: Exception caught</title>
<style>
body {
background-color: #FAFAFA;
color: #333;
color-scheme: light dark;
supported-color-schemes: light dark;
margin: 0px;
}
body, p, ol, ul, td {
font-family: helvetica, verdana, arial, sans-serif;
font-size: 13px;
line-height: 18px;
}
pre {
font-size: 11px;
white-space: pre-wrap;
}
pre.box {
border: 1px solid #EEE;
padding: 10px;
margin: 0px;
width: 958px;
}
header {
color: #F0F0F0;
background: #C00;
padding: 0.5em 1.5em;
}
h1 {
overflow-wrap: break-word;
margin: 0.2em 0;
line-height: 1.1em;
font-size: 2em;
}
h2 {
color: #C00;
line-height: 25px;
}
code.traces {
font-size: 11px;
}
.response-heading, .request-heading {
margin-top: 30px;
}
.exception-message {
padding: 8px 0;
}
.exception-message .message {
margin-bottom: 8px;
line-height: 25px;
font-size: 1.5em;
font-weight: bold;
color: #C00;
}
.details {
border: 1px solid #D0D0D0;
border-radius: 4px;
margin: 1em 0px;
display: block;
max-width: 978px;
}
.summary {
padding: 8px 15px;
border-bottom: 1px solid #D0D0D0;
display: block;
}
a.summary {
color: #F0F0F0;
text-decoration: none;
background: #C52F24;
border-bottom: none;
}
.details pre {
margin: 5px;
border: none;
}
#container {
box-sizing: border-box;
width: 100%;
padding: 0 1.5em;
}
.source * {
margin: 0px;
padding: 0px;
}
.source {
border: 1px solid #D9D9D9;
background: #ECECEC;
max-width: 978px;
}
.source pre {
padding: 10px 0px;
border: none;
}
.source .data {
font-size: 80%;
overflow: auto;
background-color: #FFF;
}
.info {
padding: 0.5em;
}
.source .data .line_numbers {
background-color: #ECECEC;
color: #555;
padding: 1em .5em;
border-right: 1px solid #DDD;
text-align: right;
}
.line {
padding-left: 10px;
white-space: pre;
}
.line:hover {
background-color: #F6F6F6;
}
.line.active {
background-color: #FCC;
}
.error_highlight {
display: inline-block;
background-color: #FF9;
text-decoration: #F00 wavy underline;
}
.error_highlight_tip {
color: #666;
padding: 2px 2px;
font-size: 10px;
}
.button_to {
display: inline-block;
margin-top: 0.75em;
margin-bottom: 0.75em;
}
.hidden {
display: none;
}
.correction {
list-style-type: none;
}
input[type="submit"] {
color: white;
background-color: #C00;
border: none;
border-radius: 12px;
box-shadow: 0 3px #F99;
font-size: 13px;
font-weight: bold;
margin: 0;
padding: 10px 18px;
cursor: pointer;
-webkit-appearance: none;
}
input[type="submit"]:focus,
input[type="submit"]:hover {
opacity: 0.8;
}
input[type="submit"]:active {
box-shadow: 0 2px #F99;
transform: translateY(1px)
}
a { color: #980905; }
a:visited { color: #666; }
a.trace-frames {
color: #666;
overflow-wrap: break-word;
}
a:hover, a.trace-frames.selected { color: #C00; }
a.summary:hover { color: #FFF; }
@media (prefers-color-scheme: dark) {
body {
background-color: #222;
color: #ECECEC;
}
.details, .summary {
border-color: #666;
}
.source {
border-color: #555;
background-color: #333;
}
.source .data {
Open service 52.223.53.203:443 · staging-api.go-read.app
2025-12-20 10:53
HTTP/1.1 404 Not Found
Content-Length: 28390
Content-Type: text/html; charset=UTF-8
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=h0lvFwEBQ87xAL%2FmtslIGSU6N5R83Vo4uId3ZtIDDME%3D\u0026sid=812dcc77-0bd0-43b1-a5f1-b25750382959\u0026ts=1766227986"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=h0lvFwEBQ87xAL%2FmtslIGSU6N5R83Vo4uId3ZtIDDME%3D&sid=812dcc77-0bd0-43b1-a5f1-b25750382959&ts=1766227986"
Server: Heroku
Vary: Origin
Via: 1.1 heroku-router
X-Request-Id: db2e5af9-c278-8949-cf23-c8bb40621d90
X-Runtime: 0.029934
Date: Sat, 20 Dec 2025 10:53:06 GMT
Connection: close
Page title: Action Controller: Exception caught
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="turbo-visit-control" content="reload">
<title>Action Controller: Exception caught</title>
<style>
body {
background-color: #FAFAFA;
color: #333;
color-scheme: light dark;
supported-color-schemes: light dark;
margin: 0px;
}
body, p, ol, ul, td {
font-family: helvetica, verdana, arial, sans-serif;
font-size: 13px;
line-height: 18px;
}
pre {
font-size: 11px;
white-space: pre-wrap;
}
pre.box {
border: 1px solid #EEE;
padding: 10px;
margin: 0px;
width: 958px;
}
header {
color: #F0F0F0;
background: #C00;
padding: 0.5em 1.5em;
}
h1 {
overflow-wrap: break-word;
margin: 0.2em 0;
line-height: 1.1em;
font-size: 2em;
}
h2 {
color: #C00;
line-height: 25px;
}
code.traces {
font-size: 11px;
}
.response-heading, .request-heading {
margin-top: 30px;
}
.exception-message {
padding: 8px 0;
}
.exception-message .message {
margin-bottom: 8px;
line-height: 25px;
font-size: 1.5em;
font-weight: bold;
color: #C00;
}
.details {
border: 1px solid #D0D0D0;
border-radius: 4px;
margin: 1em 0px;
display: block;
max-width: 978px;
}
.summary {
padding: 8px 15px;
border-bottom: 1px solid #D0D0D0;
display: block;
}
a.summary {
color: #F0F0F0;
text-decoration: none;
background: #C52F24;
border-bottom: none;
}
.details pre {
margin: 5px;
border: none;
}
#container {
box-sizing: border-box;
width: 100%;
padding: 0 1.5em;
}
.source * {
margin: 0px;
padding: 0px;
}
.source {
border: 1px solid #D9D9D9;
background: #ECECEC;
max-width: 978px;
}
.source pre {
padding: 10px 0px;
border: none;
}
.source .data {
font-size: 80%;
overflow: auto;
background-color: #FFF;
}
.info {
padding: 0.5em;
}
.source .data .line_numbers {
background-color: #ECECEC;
color: #555;
padding: 1em .5em;
border-right: 1px solid #DDD;
text-align: right;
}
.line {
padding-left: 10px;
white-space: pre;
}
.line:hover {
background-color: #F6F6F6;
}
.line.active {
background-color: #FCC;
}
.error_highlight {
display: inline-block;
background-color: #FF9;
text-decoration: #F00 wavy underline;
}
.error_highlight_tip {
color: #666;
padding: 2px 2px;
font-size: 10px;
}
.button_to {
display: inline-block;
margin-top: 0.75em;
margin-bottom: 0.75em;
}
.hidden {
display: none;
}
.correction {
list-style-type: none;
}
input[type="submit"] {
color: white;
background-color: #C00;
border: none;
border-radius: 12px;
box-shadow: 0 3px #F99;
font-size: 13px;
font-weight: bold;
margin: 0;
padding: 10px 18px;
cursor: pointer;
-webkit-appearance: none;
}
input[type="submit"]:focus,
input[type="submit"]:hover {
opacity: 0.8;
}
input[type="submit"]:active {
box-shadow: 0 2px #F99;
transform: translateY(1px)
}
a { color: #980905; }
a:visited { color: #666; }
a.trace-frames {
color: #666;
overflow-wrap: break-word;
}
a:hover, a.trace-frames.selected { color: #C00; }
a.summary:hover { color: #FFF; }
@media (prefers-color-scheme: dark) {
body {
background-color: #222;
color: #ECECEC;
}
.details, .summary {
border-color: #666;
}
.source {
border-color: #555;
background-color: #333;
}
.source .data {
Open service 52.223.53.203:443 · staging-api.go-read.app
2025-12-19 10:36
HTTP/1.1 404 Not Found
Content-Length: 28348
Content-Type: text/html; charset=UTF-8
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=Ux6zTyh68%2FHfIp9EWSmOVD4m02f45gnvo2Wm%2BvMx0P0%3D\u0026sid=812dcc77-0bd0-43b1-a5f1-b25750382959\u0026ts=1766140618"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=Ux6zTyh68%2FHfIp9EWSmOVD4m02f45gnvo2Wm%2BvMx0P0%3D&sid=812dcc77-0bd0-43b1-a5f1-b25750382959&ts=1766140618"
Server: Heroku
Vary: Origin
Via: 1.1 heroku-router
X-Request-Id: 45d9fc90-319b-6793-4a0c-85e64c51d243
X-Runtime: 0.028383
Date: Fri, 19 Dec 2025 10:36:58 GMT
Connection: close
Page title: Action Controller: Exception caught
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="turbo-visit-control" content="reload">
<title>Action Controller: Exception caught</title>
<style>
body {
background-color: #FAFAFA;
color: #333;
color-scheme: light dark;
supported-color-schemes: light dark;
margin: 0px;
}
body, p, ol, ul, td {
font-family: helvetica, verdana, arial, sans-serif;
font-size: 13px;
line-height: 18px;
}
pre {
font-size: 11px;
white-space: pre-wrap;
}
pre.box {
border: 1px solid #EEE;
padding: 10px;
margin: 0px;
width: 958px;
}
header {
color: #F0F0F0;
background: #C00;
padding: 0.5em 1.5em;
}
h1 {
overflow-wrap: break-word;
margin: 0.2em 0;
line-height: 1.1em;
font-size: 2em;
}
h2 {
color: #C00;
line-height: 25px;
}
code.traces {
font-size: 11px;
}
.response-heading, .request-heading {
margin-top: 30px;
}
.exception-message {
padding: 8px 0;
}
.exception-message .message {
margin-bottom: 8px;
line-height: 25px;
font-size: 1.5em;
font-weight: bold;
color: #C00;
}
.details {
border: 1px solid #D0D0D0;
border-radius: 4px;
margin: 1em 0px;
display: block;
max-width: 978px;
}
.summary {
padding: 8px 15px;
border-bottom: 1px solid #D0D0D0;
display: block;
}
a.summary {
color: #F0F0F0;
text-decoration: none;
background: #C52F24;
border-bottom: none;
}
.details pre {
margin: 5px;
border: none;
}
#container {
box-sizing: border-box;
width: 100%;
padding: 0 1.5em;
}
.source * {
margin: 0px;
padding: 0px;
}
.source {
border: 1px solid #D9D9D9;
background: #ECECEC;
max-width: 978px;
}
.source pre {
padding: 10px 0px;
border: none;
}
.source .data {
font-size: 80%;
overflow: auto;
background-color: #FFF;
}
.info {
padding: 0.5em;
}
.source .data .line_numbers {
background-color: #ECECEC;
color: #555;
padding: 1em .5em;
border-right: 1px solid #DDD;
text-align: right;
}
.line {
padding-left: 10px;
white-space: pre;
}
.line:hover {
background-color: #F6F6F6;
}
.line.active {
background-color: #FCC;
}
.error_highlight {
display: inline-block;
background-color: #FF9;
text-decoration: #F00 wavy underline;
}
.error_highlight_tip {
color: #666;
padding: 2px 2px;
font-size: 10px;
}
.button_to {
display: inline-block;
margin-top: 0.75em;
margin-bottom: 0.75em;
}
.hidden {
display: none;
}
.correction {
list-style-type: none;
}
input[type="submit"] {
color: white;
background-color: #C00;
border: none;
border-radius: 12px;
box-shadow: 0 3px #F99;
font-size: 13px;
font-weight: bold;
margin: 0;
padding: 10px 18px;
cursor: pointer;
-webkit-appearance: none;
}
input[type="submit"]:focus,
input[type="submit"]:hover {
opacity: 0.8;
}
input[type="submit"]:active {
box-shadow: 0 2px #F99;
transform: translateY(1px)
}
a { color: #980905; }
a:visited { color: #666; }
a.trace-frames {
color: #666;
overflow-wrap: break-word;
}
a:hover, a.trace-frames.selected { color: #C00; }
a.summary:hover { color: #FFF; }
@media (prefers-color-scheme: dark) {
body {
background-color: #222;
color: #ECECEC;
}
.details, .summary {
border-color: #666;
}
.source {
border-color: #555;
background-color: #333;
}
.source .data {
Open service 3.33.249.164:80 · staging-api.go-read.app
2025-12-19 07:49
HTTP/1.1 404 Not Found
Content-Length: 28350
Content-Type: text/html; charset=UTF-8
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=0lWxy3lcDKk%2FM%2BlqSL24r6xq5TZnUrc3FROhmxfwzHY%3D\u0026sid=812dcc77-0bd0-43b1-a5f1-b25750382959\u0026ts=1766130553"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=0lWxy3lcDKk%2FM%2BlqSL24r6xq5TZnUrc3FROhmxfwzHY%3D&sid=812dcc77-0bd0-43b1-a5f1-b25750382959&ts=1766130553"
Server: Heroku
Vary: Origin
Via: 1.1 heroku-router
X-Request-Id: bc8c36d5-a835-8bc8-2b37-5a30f6f33d90
X-Runtime: 0.030118
Date: Fri, 19 Dec 2025 07:49:13 GMT
Connection: close
Page title: Action Controller: Exception caught
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="turbo-visit-control" content="reload">
<title>Action Controller: Exception caught</title>
<style>
body {
background-color: #FAFAFA;
color: #333;
color-scheme: light dark;
supported-color-schemes: light dark;
margin: 0px;
}
body, p, ol, ul, td {
font-family: helvetica, verdana, arial, sans-serif;
font-size: 13px;
line-height: 18px;
}
pre {
font-size: 11px;
white-space: pre-wrap;
}
pre.box {
border: 1px solid #EEE;
padding: 10px;
margin: 0px;
width: 958px;
}
header {
color: #F0F0F0;
background: #C00;
padding: 0.5em 1.5em;
}
h1 {
overflow-wrap: break-word;
margin: 0.2em 0;
line-height: 1.1em;
font-size: 2em;
}
h2 {
color: #C00;
line-height: 25px;
}
code.traces {
font-size: 11px;
}
.response-heading, .request-heading {
margin-top: 30px;
}
.exception-message {
padding: 8px 0;
}
.exception-message .message {
margin-bottom: 8px;
line-height: 25px;
font-size: 1.5em;
font-weight: bold;
color: #C00;
}
.details {
border: 1px solid #D0D0D0;
border-radius: 4px;
margin: 1em 0px;
display: block;
max-width: 978px;
}
.summary {
padding: 8px 15px;
border-bottom: 1px solid #D0D0D0;
display: block;
}
a.summary {
color: #F0F0F0;
text-decoration: none;
background: #C52F24;
border-bottom: none;
}
.details pre {
margin: 5px;
border: none;
}
#container {
box-sizing: border-box;
width: 100%;
padding: 0 1.5em;
}
.source * {
margin: 0px;
padding: 0px;
}
.source {
border: 1px solid #D9D9D9;
background: #ECECEC;
max-width: 978px;
}
.source pre {
padding: 10px 0px;
border: none;
}
.source .data {
font-size: 80%;
overflow: auto;
background-color: #FFF;
}
.info {
padding: 0.5em;
}
.source .data .line_numbers {
background-color: #ECECEC;
color: #555;
padding: 1em .5em;
border-right: 1px solid #DDD;
text-align: right;
}
.line {
padding-left: 10px;
white-space: pre;
}
.line:hover {
background-color: #F6F6F6;
}
.line.active {
background-color: #FCC;
}
.error_highlight {
display: inline-block;
background-color: #FF9;
text-decoration: #F00 wavy underline;
}
.error_highlight_tip {
color: #666;
padding: 2px 2px;
font-size: 10px;
}
.button_to {
display: inline-block;
margin-top: 0.75em;
margin-bottom: 0.75em;
}
.hidden {
display: none;
}
.correction {
list-style-type: none;
}
input[type="submit"] {
color: white;
background-color: #C00;
border: none;
border-radius: 12px;
box-shadow: 0 3px #F99;
font-size: 13px;
font-weight: bold;
margin: 0;
padding: 10px 18px;
cursor: pointer;
-webkit-appearance: none;
}
input[type="submit"]:focus,
input[type="submit"]:hover {
opacity: 0.8;
}
input[type="submit"]:active {
box-shadow: 0 2px #F99;
transform: translateY(1px)
}
a { color: #980905; }
a:visited { color: #666; }
a.trace-frames {
color: #666;
overflow-wrap: break-word;
}
a:hover, a.trace-frames.selected { color: #C00; }
a.summary:hover { color: #FFF; }
@media (prefers-color-scheme: dark) {
body {
background-color: #222;
color: #ECECEC;
}
.details, .summary {
border-color: #666;
}
.source {
border-color: #555;
background-color: #333;
}
.source .data {