b737cd0fa5
Add errors to the parking structure resolvers
2025-07-21 19:16:38 -04:00
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