I was asked to change some business rules in a CAP APP that I didn't developed.
This app has node.js and CAP. It was working fine, but when I deployed again (I got the source god from the company git and imported in BAS) it keeps getting error 500 when fiori apps try to GET in a CDS:


The app logs show this:

Attached is the complete log:logs.txt
The app structure:


I, for some reason, couldn't get "cds watch" working to trace logs locally in BAS:

Server.js:
/*eslint no-console: 0, no-unused-vars: 0, no-undef:0, no-process-exit:0*/
/*eslint-env node, es6 */
"use strict";
var express = require("express");
const bodyParser = require("body-parser");
var passport = require("passport");
var JWTStrategy = require("@sap/xssec").JWTStrategy;
var xsenv = require("@sap/xsenv");
var log = require('cf-nodejs-logging-support');
var cookieParser = require('cookie-parser');
const cds = require("@sap/cds");
var logging = require("@sap/logging");
const xsHDBConn = require("@sap/hdbext");
const server = require("http").createServer();
const proxy = require('@sap/cds-odata-v2-adapter-proxy');
var json2xls = require('json2xls');
var cors = require('cors');
var appContext = logging.createAppContext();
var app = express();
const port = process.env.PORT || 3000;
global.__base = __dirname + "/";
//app.use(cookieParser());
app.use(express.static("public"));
//log.setLoggingLevel("error");
//Compression
//app.use(require("compression")({
// threshold: "1b"
//}));
app.use(cors());
app.use(bodyParser.json({
limit: '100mb'
}));
app.use(bodyParser.urlencoded({
limit: '100mb',
extended: true,
parameterLimit: 100000
}));
app.use(express.json({
inflate: true,
limit: '50mb',
reviver: null,
strict: true,
type: 'application/json',
verify: undefined
}));
const helmet = require("helmet");
app.use(helmet());
//app.disable('x-powered-by');
app.use(helmet.contentSecurityPolicy({
directives: {
defaultSrc: ["'self'"],
styleSrc: ["'self'", "sapui5.hana.ondemand.com"],
scriptSrc: ["'self'", "sapui5.hana.ondemand.com"]
}
}));
// Sets "Referrer-Policy: no-referrer".
app.use(helmet.referrerPolicy({
policy: "no-referrer"
}));
app.use(function (req, res, next) {
res.setHeader('Content-Type', 'application/json;');
res.setHeader('Access-Control-Allow-Origin', '*');
res.setHeader('Access-Control-Expose-Headers', '*');
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
res.setHeader('Access-Control-Allow-Headers', 'content-type');
res.setHeader('Access-Control-Allow-Credentials', false);
app.use(cors());
next();
});
//app.use(logging.middleware({
// appContext: appContext,
// logNetwork: false
//}));
//var services = xsenv.getServices({
// uaa: {
// tag: "xsuaa"0
// }
//}).uaa;
//passport.use(new JWTStrategy(services));
//app.use(logging.middleware({
// appContext: appContext,
// logNetwork: false
//}));
app.use(logging.middleware({
appContext: appContext,
logNetwork: false
}));
var hanaOptions = xsenv.getServices({
hana: {
instance_name: "HDI_GFG_INT"
}
});
hanaOptions.hana.pooling = true;
app.use(
xsHDBConn.middleware(hanaOptions.hana)
);
var options = {
driver: "hana"
};
Object.assign(options, hanaOptions.hana, {
driver: options.driver
});
cds.connect(options);
var odataURL = "monitor/";
// Main app
cds.serve("gen/csn.json", {
crashOnError: false
})
.at(odataURL)
.with(require("./lib/handlers"))
.in(app)
.catch((err) => {
console.error("Erro------" + err);
process.exit(1);
});
// Redirect any to service root
app.get("/", (req, res) => {
res.redirect(odataURL);
});
app.get("/healthcheck", cors(), function (req, res) {
var resp = {};
res.setHeader("Content-Type", "application/json; charset=utf-8");
var dataFormat = require(global.__base + "utils/util").FormatDateTimePais(Date.now(), "BR", "YYYY-MM-DD HH:mm:SS");
// Gravar os dados na tabela de integração - Monitor
resp.dataProcessamento = dataFormat;
resp.statusProcessamento = "S";
res.status(200);
res.send(resp);
});
app.use(json2xls.middleware);
// app.listen(port, () => {
// console.log('Server started :)');
// });
//Setup Additonal Node.js Routes
//require("./router")(app, server);
//Start the Server
//server.on("request", app);
//server.listen(port, function () {
// log.logMessage('info', 'HTTP Server: ${server.address().port}');
// console.log('HTTP Server: ${server.address().port})');
// console.log('Server started :)');
//});
var services = xsenv.getServices({
uaa: {
tag: "xsuaa"
}
}).uaa;
passport.use(new JWTStrategy(services));
app.use(passport.initialize());
app.use(
passport.authenticate("JWT", {
session: false
})
);
app.listen(port, () => {
console.log('Server started :)');
});
//Setup Additonal Node.js Routes
require("./router")(app, server);
My build works fine:

Can someone help me? All the node.js code works fine with requests, only the GET in the CDS' don't work.
PS.: I had to update a lot of NPM packages because this app wasn't altered in some time (years I think).