Skip to content

fix(openclaw-plugin): recommend indexnetwork fork of railway template#651

Closed
yanekyuk wants to merge 1 commit intoindexnetwork:devfrom
yanekyuk:fix/openclaw-railway-template-fork
Closed

fix(openclaw-plugin): recommend indexnetwork fork of railway template#651
yanekyuk wants to merge 1 commit intoindexnetwork:devfrom
yanekyuk:fix/openclaw-railway-template-fork

Conversation

@yanekyuk
Copy link
Copy Markdown
Contributor

@yanekyuk yanekyuk commented Apr 11, 2026

Summary

The upstream arjunkomath/openclaw-railway-template has two bugs in src/server.js that break webhook delivery on Railway, and the plugin previously carried a long "known gotcha" callout describing them. The fork indexnetwork/openclaw-railway-template now carries both fixes, so this PR replaces the gotcha block with a short "Recommended Railway template" pointer to the fork.

Bug Fixes

  • packages/openclaw-plugin/README.md — replace the arjunkomath/openclaw-railway-template broken-template callout with a recommendation to use indexnetwork/openclaw-railway-template. The fork's deltas vs. upstream:
    1. express.json() is scoped to /setup/api so proxied request bodies reach the gateway intact (fixes the HMAC 401 invalid signature on /index-network/webhook).
    2. The wrapper tracks a gatewayExternallyHealthy flag so SIGUSR1 self-restarts by OpenClaw don't strand the wrapper serving 503s on every HTTP request (WebSocket upgrades kept working because they skip the readiness check, which is why the dashboard looked fine).

Test plan

  • Deploy the indexnetwork/openclaw-railway-template fork on Railway.
  • Set webhookUrl / webhookSecret on the plugin and dispatch a negotiation.
  • Confirm curl -i https://<url>/index-network/webhook returns 401 invalid signature (proof the route is reachable).
  • Confirm a live negotiation.turn_received delivery is acknowledged by the plugin and the subagent fires.
  • Confirm that restarting the gateway (e.g. by editing plugin config to trigger SIGUSR1) does not leave the wrapper serving 503 on subsequent HTTP requests.

Summary by CodeRabbit

Documentation

  • Updated Railway deployment troubleshooting with a recommended template configuration to improve webhook verification and service stability.

The upstream arjunkomath/openclaw-railway-template has two bugs that break
webhook delivery on Railway (global express.json() eats proxied bodies;
gatewayProc handle is lost after SIGUSR1 self-restart, stranding the wrapper
on 503). The fork indexnetwork/openclaw-railway-template carries both fixes.
Replace the "broken" gotcha block with a pointer to the fork.
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 11, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 4d5bcfe6-3d35-449f-b1d3-9c2be132b3ca

📥 Commits

Reviewing files that changed from the base of the PR and between 8e9f836 and 9f5a0f7.

📒 Files selected for processing (1)
  • packages/openclaw-plugin/README.md

📝 Walkthrough

Walkthrough

The README documentation in the openclaw-plugin package is updated to replace outdated Railway template guidance with a recommendation for an improved fork that fixes JSON body consumption and wrapper state issues affecting webhook HMAC verification and service readiness.

Changes

Cohort / File(s) Summary
README Documentation
packages/openclaw-plugin/README.md
Removed troubleshooting guidance for arjunkomath/openclaw-railway-template gotcha and replaced with recommendation for indexnetwork/openclaw-railway-template fork that addresses webhook HMAC verification failures and HTTP 503 responses via express.json() scoping and gatewayExternallyHealthy improvements.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

🐰 A hop, a skip, through docs we go,
Old templates fade, new wisdom's glow,
express.json() finds its place,
Gateway health shows its happy face! 🚀

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: recommending the indexnetwork fork of the Railway template instead of the upstream version, which is the core objective of the PR.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@yanekyuk
Copy link
Copy Markdown
Contributor Author

Closing: we've decided to abandon the indexnetwork/openclaw-railway-template fork approach. The fork itself is being deleted from the indexnetwork org. The upstream arjunkomath/openclaw-railway-template gotcha block on dev remains in place — that's the correct warning for now until a better path (upstream PR, or a fully-configured Station template) lands.

@yanekyuk yanekyuk closed this Apr 11, 2026
@yanekyuk yanekyuk deleted the fix/openclaw-railway-template-fork branch April 11, 2026 17:27
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.

1 participant