fix
Browse files- .agent/memory/session.json +2 -2
- Dockerfile +11 -6
- dist/lib/env-config.js +1 -1
- dist/server.js +8 -0
- lib/env-config.ts +1 -1
- server.ts +10 -0
.agent/memory/session.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
{
|
| 2 |
"version": "1.0.0",
|
| 3 |
-
"session_id": "
|
| 4 |
-
"started_at": "2026-04-
|
| 5 |
"workspace": "D:\\Code\\codeverse",
|
| 6 |
"active_task_id": null,
|
| 7 |
"active_agent": null,
|
|
|
|
| 1 |
{
|
| 2 |
"version": "1.0.0",
|
| 3 |
+
"session_id": "552e4c3c",
|
| 4 |
+
"started_at": "2026-04-06T21:12:36.682739+05:30",
|
| 5 |
"workspace": "D:\\Code\\codeverse",
|
| 6 |
"active_task_id": null,
|
| 7 |
"active_agent": null,
|
Dockerfile
CHANGED
|
@@ -26,7 +26,8 @@ RUN useradd -m -s /bin/bash nodejs && \
|
|
| 26 |
USER nodejs
|
| 27 |
WORKDIR /home/nodejs
|
| 28 |
|
| 29 |
-
RUN
|
|
|
|
| 30 |
. ~/.nix-profile/etc/profile.d/nix.sh && \
|
| 31 |
nix profile add nixpkgs#cachix nixpkgs#nix nixpkgs#cacert
|
| 32 |
|
|
@@ -43,13 +44,17 @@ COPY . .
|
|
| 43 |
RUN npm run build
|
| 44 |
|
| 45 |
# 4. Runtime Hardening
|
| 46 |
-
EXPOSE 7860
|
| 47 |
ENV PORT=7860
|
| 48 |
ENV NODE_ENV=production
|
| 49 |
|
| 50 |
-
#
|
| 51 |
-
RUN mkdir -p /home/nodejs/app/workspaces &&
|
|
|
|
|
|
|
| 52 |
|
| 53 |
-
#
|
| 54 |
USER nodejs
|
| 55 |
-
|
|
|
|
|
|
|
|
|
|
|
|
| 26 |
USER nodejs
|
| 27 |
WORKDIR /home/nodejs
|
| 28 |
|
| 29 |
+
RUN ulimit -s $(ulimit -Hs) 2>/dev/null || true && \
|
| 30 |
+
curl -L https://nixos.org/nix/install | sh -s -- --no-daemon && \
|
| 31 |
. ~/.nix-profile/etc/profile.d/nix.sh && \
|
| 32 |
nix profile add nixpkgs#cachix nixpkgs#nix nixpkgs#cacert
|
| 33 |
|
|
|
|
| 44 |
RUN npm run build
|
| 45 |
|
| 46 |
# 4. Runtime Hardening
|
|
|
|
| 47 |
ENV PORT=7860
|
| 48 |
ENV NODE_ENV=production
|
| 49 |
|
| 50 |
+
# Final Provisioning & Permissions
|
| 51 |
+
RUN mkdir -p /home/nodejs/app/workspaces && \
|
| 52 |
+
mkdir -p /home/nodejs/app/dist && \
|
| 53 |
+
chown -R nodejs:nodejs /home/nodejs/app /app
|
| 54 |
|
| 55 |
+
# Ensure Nix binaries are in place for the runtime user
|
| 56 |
USER nodejs
|
| 57 |
+
|
| 58 |
+
# Authoritative Entrypoint for HF Spaces April 2026
|
| 59 |
+
# Gracefully handle ulimit restrictions while setting production-grade stack limits
|
| 60 |
+
CMD ["sh", "-c", "ulimit -s $(ulimit -Hs) 2>/dev/null || true && node dist/server.js"]
|
dist/lib/env-config.js
CHANGED
|
@@ -21,7 +21,7 @@ exports.ENV_CONFIG = {
|
|
| 21 |
IS_SBC: !!process.env.SPACE_ID,
|
| 22 |
// 4. Database & Auth
|
| 23 |
AUTH_SECRET: process.env.AUTH_SECRET || process.env.authSecret,
|
| 24 |
-
TURSO_URL: process.env.TURSO_URL || process.env.turso_url || process.env.database_url || process.env.TURSO_DATABASE_URL || process.env.DB_URL,
|
| 25 |
TURSO_AUTH_TOKEN: process.env.TURSO_AUTH_TOKEN || process.env.turso_auth_token || process.env.DB_TOKEN,
|
| 26 |
};
|
| 27 |
/**
|
|
|
|
| 21 |
IS_SBC: !!process.env.SPACE_ID,
|
| 22 |
// 4. Database & Auth
|
| 23 |
AUTH_SECRET: process.env.AUTH_SECRET || process.env.authSecret,
|
| 24 |
+
TURSO_URL: process.env.TURSO_URL || process.env.turso_url || process.env.database_url || process.env.TURSO_DATABASE_URL || process.env.DB_URL || process.env.turso_database_url,
|
| 25 |
TURSO_AUTH_TOKEN: process.env.TURSO_AUTH_TOKEN || process.env.turso_auth_token || process.env.DB_TOKEN,
|
| 26 |
};
|
| 27 |
/**
|
dist/server.js
CHANGED
|
@@ -73,6 +73,14 @@ const proxy = http_proxy_1.default.createProxyServer({
|
|
| 73 |
timeout: 30000,
|
| 74 |
proxyTimeout: 30000
|
| 75 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 76 |
/**
|
| 77 |
* Custom renderer for Proxy Errors and Booting screens.
|
| 78 |
*/
|
|
|
|
| 73 |
timeout: 30000,
|
| 74 |
proxyTimeout: 30000
|
| 75 |
});
|
| 76 |
+
// π’ Production Pre-flight Diagnostics (April 2026)
|
| 77 |
+
console.log('----------------------------------------------------');
|
| 78 |
+
console.log('[BOOT] CodeVerse Production Entrypoint Initialized.');
|
| 79 |
+
console.log(`[BOOT] Environment: ${process.env.NODE_ENV || 'development'}`);
|
| 80 |
+
console.log(`[BOOT] Database State: ${process.env.TURSO_URL ? 'β
CONFIGURED' : 'β MISSING (TURSO_URL)'}`);
|
| 81 |
+
console.log(`[BOOT] Persistence Link: ${process.env.HF_TOKEN ? 'β
CONFIGURED' : 'β οΈ UNLINKED (HF_TOKEN Missing)'}`);
|
| 82 |
+
console.log(`[BOOT] Stack Limit: ${process.env.ULIMIT_S || 'Container Default'}`);
|
| 83 |
+
console.log('----------------------------------------------------');
|
| 84 |
/**
|
| 85 |
* Custom renderer for Proxy Errors and Booting screens.
|
| 86 |
*/
|
lib/env-config.ts
CHANGED
|
@@ -20,7 +20,7 @@ export const ENV_CONFIG = {
|
|
| 20 |
|
| 21 |
// 4. Database & Auth
|
| 22 |
AUTH_SECRET: process.env.AUTH_SECRET || process.env.authSecret,
|
| 23 |
-
TURSO_URL: process.env.TURSO_URL || process.env.turso_url || process.env.database_url || process.env.TURSO_DATABASE_URL || process.env.DB_URL,
|
| 24 |
TURSO_AUTH_TOKEN: process.env.TURSO_AUTH_TOKEN || process.env.turso_auth_token || process.env.DB_TOKEN,
|
| 25 |
};
|
| 26 |
|
|
|
|
| 20 |
|
| 21 |
// 4. Database & Auth
|
| 22 |
AUTH_SECRET: process.env.AUTH_SECRET || process.env.authSecret,
|
| 23 |
+
TURSO_URL: process.env.TURSO_URL || process.env.turso_url || process.env.database_url || process.env.TURSO_DATABASE_URL || process.env.DB_URL || process.env.turso_database_url,
|
| 24 |
TURSO_AUTH_TOKEN: process.env.TURSO_AUTH_TOKEN || process.env.turso_auth_token || process.env.DB_TOKEN,
|
| 25 |
};
|
| 26 |
|
server.ts
CHANGED
|
@@ -40,6 +40,16 @@ const proxy = httpProxy.createProxyServer({
|
|
| 40 |
proxyTimeout: 30000
|
| 41 |
});
|
| 42 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 43 |
/**
|
| 44 |
* Custom renderer for Proxy Errors and Booting screens.
|
| 45 |
*/
|
|
|
|
| 40 |
proxyTimeout: 30000
|
| 41 |
});
|
| 42 |
|
| 43 |
+
// π’ Production Pre-flight Diagnostics (April 2026)
|
| 44 |
+
console.log('----------------------------------------------------');
|
| 45 |
+
console.log('[BOOT] CodeVerse Production Entrypoint Initialized.');
|
| 46 |
+
console.log(`[BOOT] Environment: ${process.env.NODE_ENV || 'development'}`);
|
| 47 |
+
console.log(`[BOOT] Database State: ${process.env.TURSO_URL ? 'β
CONFIGURED' : 'β MISSING (TURSO_URL)'}`);
|
| 48 |
+
console.log(`[BOOT] Persistence Link: ${process.env.HF_TOKEN ? 'β
CONFIGURED' : 'β οΈ UNLINKED (HF_TOKEN Missing)'}`);
|
| 49 |
+
console.log(`[BOOT] Stack Limit: ${process.env.ULIMIT_S || 'Container Default'}`);
|
| 50 |
+
console.log('----------------------------------------------------');
|
| 51 |
+
|
| 52 |
+
|
| 53 |
/**
|
| 54 |
* Custom renderer for Proxy Errors and Booting screens.
|
| 55 |
*/
|