Skip to content

fix: set TRAVELERP_INIT_VERSION to 0 and rename Config.json for Linux compatibility - #2

Open
devin-ai-integration[bot] wants to merge 1 commit into
masterfrom
devin/1778199115-fix-tims-init-version
Open

devin-ai-integration[bot] wants to merge 1 commit into
masterfrom
devin/1778199115-fix-tims-init-version

Conversation

@devin-ai-integration

@devin-ai-integration devin-ai-integration Bot commented May 8, 2026

Copy link
Copy Markdown

Summary

Two fixes to get the TravelERP plugin working on Linux:

  1. TRAVELERP_INIT_VERSION set to 0 instead of 20250101 — On first run, ProcessPatches() initializes the plugin version to TRAVELERP_INIT_VERSION and then checks if (version < 20250101). With the old value of 20250101, the condition was always false, so Patch20250101() (which creates all 7 TravelERP entities, the app, sitemap areas, and nodes) was silently skipped on every fresh database.

  2. Renamed Config.jsonconfig.json in WebVella.Erp.Site and WebVella.Erp.Site.TravelERP — The runtime code in ErpMvcExtensions.cs loads "config.json" (lowercase). On case-sensitive Linux filesystems, Config.json is not found. A previous workaround using symlinks (config.json → Config.json) caused NETSDK1022 duplicate content errors in .NET 10 SDK. Renaming the file is the clean fix.

Updates since last revision

  • Rebased onto master after the TIMS → TravelERP rename (PR Rename TIMS to TravelERP across entire repository #3). The fix is identical in intent — the constant is now TRAVELERP_INIT_VERSION (was TIMS_INIT_VERSION) and the config rename applies to WebVella.Erp.Site.TravelERP (was WebVella.Erp.Site.TIMS).

Review & Testing Checklist for Human

  • Existing deployments: If any production/staging database already has plugin_data for TravelERP with version 20250102, this fix alone won't re-run the skipped Patch20250101. Verify whether a DB reset or manual patch invocation is needed for those environments.
  • Cross-platform impact of rename: The config.json rename affects WebVella.Erp.Site (the base site project), not just TravelERP. Confirm no other tooling, CI scripts, or .csproj content items reference Config.json with uppercase casing.
  • Test fresh DB seeding end-to-end: Drop and recreate the database, run the TravelERP site, and verify all rec_tims_* entity tables are created and the app loads at http://127.0.0.1:5001.

Notes

  • The .NET 10 SDK auto-includes content files, which is why the old symlink workaround broke — both Config.json and the config.json symlink were detected as separate content items.
  • On Windows (case-insensitive), both the old and new filenames resolve identically, so this rename is a no-op there.

Link to Devin session: https://app.devin.ai/sessions/56e3c9458902432baa3dc3b189bf0279
Requested by: @patrickbradley-cog


Open in Devin Review

@devin-ai-integration

Copy link
Copy Markdown
Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 2 additional findings.

Open in Devin Review

@devin-ai-integration

Copy link
Copy Markdown
Author

End-to-End Test Results

Tested the TIMS Travel ERP system locally after fixing TIMS_INIT_VERSION and renaming Config.json.

TIMS App Testing (all passed)
  • Login page — PASSED: Renders with IMF/PeopleSoft branding, email/password fields
  • Authentication — PASSED: erp@webvella.com / erp logs in, redirects to dashboard
  • TIMS dashboard — PASSED: All 6 modules visible (Missions, Travel Requests, Claims, Payments, Budgets, Approvals)
  • Missions page — PASSED: Stats cards + empty list rendered
  • Travel Requests page — PASSED: Stats cards + empty list rendered (via /Tims/TravelRequests)
  • Claims page — PASSED: Stats cards + empty list rendered
  • Payments page — PASSED: Stats cards + empty list rendered
Database Seeding Verification

All 7 TIMS entity tables confirmed created: rec_tims_mission, rec_tims_travel_request, rec_tims_claim, rec_tims_budget, rec_tims_payment, rec_tims_bank_account, rec_tims_approval. Plus 2 apps, 9 sitemap areas, 22 sitemap nodes.

Pre-existing Issue (not from this PR)

Nav bar links (e.g., /travel-requests, /claims) return "An unexpected system error occurred." The dashboard tile links (e.g., /Tims/TravelRequests) work correctly. This is a pre-existing routing mismatch unrelated to this PR.

Devin session

… for Linux compatibility

- TIMS_INIT_VERSION was set to 20250101, matching the first patch version,
  causing Patch20250101 (which creates all TIMS entities) to be skipped on
  first run since the check (20250101 < 20250101) is false.
- Renamed Config.json to config.json in Site and Site.TIMS projects to match
  the lowercase filename the code expects, avoiding duplicate content errors
  on case-sensitive Linux filesystems.

Co-Authored-By: patrick.bradley <patrick.bradley@cognition.ai>
@devin-ai-integration
devin-ai-integration Bot force-pushed the devin/1778199115-fix-tims-init-version branch from e59863a to b7dc6f6 Compare May 8, 2026 17:42
@devin-ai-integration devin-ai-integration Bot changed the title fix: set TIMS_INIT_VERSION to 0 and rename Config.json for Linux compatibility fix: set TRAVELERP_INIT_VERSION to 0 and rename Config.json for Linux compatibility May 8, 2026
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