-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Recommendation: Bring the code into this workspace as inline modules following your existing architecture pattern.
Why Inline Makes Sense
Your situation:
✅ Library only used by this one project
✅ Library needs updating anyway
✅ You already have strong testing/architecture patterns here
✅ GAS deployment is simpler with fewer dependencies
Architecture approach:
Benefits:
✅ Single deployment: One npm run prod:push updates everything
✅ Easier debugging: All code in one place
✅ Same quality standards: 100% coverage, TypeScript types
✅ Follows your pattern: Core (testable) + Adapter (GAS APIs)
✅ Simpler refactoring: No cross-project coordination
You'd keep:
Clear API boundary (RWGPSCore exports public interface)
Full test coverage (Jest tests for all logic)
Type safety (TypeScript definitions)
You'd lose:
Separate versioning (but you're the only user)
Reusability (but it's not being reused)
Migration path:
Copy library code into src/RWGPSCore.js (pure logic)
Create src/RWGPS.js adapter (UrlFetchApp calls)
Write comprehensive tests (100% coverage)
Update your current code to use new modules
Delete external library dependency