Commit Graph

870 Commits

Author SHA1 Message Date
2f46a0b07c Remove correctness test, to be reimplemented at a later time 2025-07-21 19:08:53 -04:00
cc03803a3c Change schema to accept a float for the average spots available 2025-07-21 19:08:22 -04:00
e78982538e Add implementation and tests for ParkingStructureResolvers.ts 2025-07-21 19:06:00 -04:00
ee7b5eefda Rename query interface for historical data 2025-07-19 13:14:39 -04:00
52a0133107 Add system ID to parking structure 2025-07-19 12:55:36 -04:00
09ee17874d Update test case naming for ParkingRepositorySharedTests.test.ts to clarify scope of test 2025-07-19 12:50:39 -04:00
0a5a71d78f Add basic test case for ParkingStructureResolvers 2025-07-19 12:50:27 -04:00
182587596c Change properties to match GraphQL input and query result 2025-07-19 12:15:41 -04:00
8ee1f1522e Change ParkingStructureCountOptions and HistoricalParkingAverageQueryResult to use Date objects
This matches the behavior of `updatedTime` on shuttle objects. When returning API data, dates are converted into milliseconds since Epoch by the DateTime scalar implementation.
2025-07-19 12:12:08 -04:00
ed037cf2d2 Move repositories into folders. 2025-07-19 11:58:45 -04:00
3302822bf8 Add a placeholder implementation of ParkingStructureResolvers 2025-07-19 11:55:51 -04:00
a76601d8cf Update schema with historical average data for parking structure. 2025-07-19 11:50:58 -04:00
a543f37f77 Merge pull request #61 from brendan-ch/chore/remove-integration-testing-mode
Remove support for integration testing mode
2025-07-18 17:00:33 -04:00
5486046c24 Remove support for integration testing mode
- Remove app-integration-test service from Docker Compose
- Remove references to integration testing mode from documentation
- Clean up CLAUDE.md to reflect current Docker services

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-18 16:53:29 -04:00
de3519f120 Merge pull request #59 from brendan-ch/chore/update-dependencies
chore/update-dependencies
2025-07-08 00:08:32 -04:00
e7488ee739 Update dependencies to latest compatible versions
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-08 00:05:21 -04:00
ba700cb698 Merge pull request #58 from brendan-ch/hotfix/use-tls
hotfix/use-tls
2025-07-03 16:37:22 -04:00
86710657df Use TLS in production 2025-07-03 16:30:12 -04:00
d27b36a969 Merge pull request #57 from brendan-ch/feat/time-series-database
feat/time-series-database
2025-07-03 16:05:44 -04:00
5db4a82535 Update historical average test to actually check the average value 2025-07-03 16:01:14 -04:00
d1b60772d8 Update RedisParkingRepository.ts to use Redis aggregation functions 2025-07-03 16:00:57 -04:00
f406e3e01d Add retention period for new time series 2025-07-03 15:53:06 -04:00
7c359dd775 Move the 200ms delay to before the add call
This ensures that a new timestamp is created after the initial call to `addOrUpdateParkingStructure`
2025-07-03 15:40:14 -04:00
5f982fe182 Add PARKING_LOGGING_INTERVAL_MS as an environment variable 2025-07-03 15:20:16 -04:00
df657a02f3 Build Redis parking repository instead of in-memory one 2025-07-03 15:20:07 -04:00
b9d5f7b3df Refactor parking repositories to use dedicated Constants file and smaller functions 2025-07-03 15:19:57 -04:00
7f453157ee Update timeout within test to avoid UPSERT error 2025-07-02 20:34:29 -04:00
53632fe470 Add BaseRedisRepository as parent class of RedisNotificationRepository.ts and RedisParkingRepository.ts 2025-07-02 20:00:44 -04:00
19336ce6ec Add setLoggingInterval method and implementation for tests and other purposes.
Let users control the logging interval of both parking repositories.
2025-07-02 19:48:16 -04:00
868a9f3b1d Add RedisParkingRepository.ts and convert existing tests to shared tests for both classes 2025-07-02 19:40:45 -04:00
ca2a66509b Implement getHistoricalAveragesOfParkingStructureCounts for InMemoryParkingRepository.ts, and add tests 2025-07-02 19:10:16 -04:00
8b5d80a9d6 Update test-driven development guideline for Claude 2025-07-02 19:02:28 -04:00
2b04ca01a9 Update InMemoryParkingRepository.ts and tests to use the circular queue 2025-07-02 18:48:33 -04:00
220b402b3b Optimize the append method to check if the data is already sorted 2025-07-02 18:43:41 -04:00
db506e8b1f Update CLAUDE.md with testing and code style instructions 2025-07-02 18:36:21 -04:00
731ac4bafc Make .idea an ignored folder 2025-07-02 18:35:35 -04:00
4fbc30a264 Add CircularQueue.ts and test file 2025-07-02 18:34:55 -04:00
18be03bfa6 Add stub implementation for my best friend, the humble circular queue
Add stubs for a custom circular queue implementation for the historical data in the parking repo
2025-07-01 22:01:07 -04:00
4758d566da Add constant MAX_NUM_ENTRIES and adjust PARKING_LOGGING_INTERVAL_MS 2025-07-01 21:47:15 -04:00
8fb296027d Fix remaining issues with tests, and add implementation within InMemoryParkingRepository.ts 2025-07-01 21:37:26 -04:00
95fa610d77 define behavior of historical data logging through tests 2025-07-01 21:32:26 -04:00
6759bba2ce Add properties to determine when the parking repository should log data 2025-07-01 21:23:15 -04:00
81272e94b1 Add getHistoricalAveragesOfParkingStructureCounts stub and update constructor with dependency injection support 2025-07-01 21:20:11 -04:00
1f252ee468 Define new method to get historical averages depending on timestamps and interval 2025-07-01 21:13:55 -04:00
ab29b08337 Add entities IParkingStructureTimestampRecord and type HistoricalParkingAggregatedQueryResult
To support historical data storage
2025-07-01 21:12:22 -04:00
6400929eb6 Update docker-compose.yml to use redis-stack instead of redis:alpine
This is the easiest way to set up the `timeseries` module during development
2025-07-01 19:01:33 -04:00
eca2ffe8ee rename redis.conf to redis-stack.conf 2025-07-01 19:00:53 -04:00
28890ef8c4 Merge pull request #55 from brendan-ch/chore/setup-claude
chore/setup-claude
2025-06-28 13:25:34 -07:00
721b66e6c1 Add CLAUDE.md with development commands and architecture guide
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-28 13:22:21 -07:00
aae24d9920 add updated shuttle 2025-06-27 08:17:32 -07:00