update
This commit is contained in:
40
readme.problems.md
Normal file
40
readme.problems.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# SmartProxy Module Problems
|
||||
|
||||
Based on test analysis, the following potential issues have been identified in the SmartProxy module:
|
||||
|
||||
## 1. HttpProxy Route Configuration Issue
|
||||
**Location**: `ts/proxies/http-proxy/http-proxy.ts:380`
|
||||
**Problem**: The HttpProxy is trying to read the 'type' property of an undefined object when updating route configurations.
|
||||
**Evidence**: `test.http-forwarding-fix.ts` fails with:
|
||||
```
|
||||
TypeError: Cannot read properties of undefined (reading 'type')
|
||||
at HttpProxy.updateRouteConfigs (/mnt/data/lossless/push.rocks/smartproxy/ts/proxies/http-proxy/http-proxy.ts:380:24)
|
||||
```
|
||||
**Impact**: Routes with `useHttpProxy` configuration may not work properly.
|
||||
|
||||
## 2. Connection Forwarding Issues
|
||||
**Problem**: Basic TCP forwarding appears to not be working correctly after the simplification to just 'forward' and 'socket-handler' action types.
|
||||
**Evidence**: Multiple forwarding tests timeout waiting for data to be forwarded:
|
||||
- `test.forwarding-fix-verification.ts` - times out waiting for forwarded data
|
||||
- `test.connection-forwarding.ts` - times out on SNI-based forwarding
|
||||
**Impact**: The 'forward' action type may not be properly forwarding connections to target servers.
|
||||
|
||||
## 3. Missing Certificate Manager Methods
|
||||
**Problem**: Tests expect `provisionAllCertificates` method on certificate manager but it may not exist or may not be properly initialized.
|
||||
**Evidence**: Multiple tests fail with "this.certManager.provisionAllCertificates is not a function"
|
||||
**Impact**: Certificate provisioning may not work as expected.
|
||||
|
||||
## 4. Route Update Mechanism
|
||||
**Problem**: The route update mechanism may have issues preserving certificate manager callbacks and other state.
|
||||
**Evidence**: Tests specifically designed to verify callback preservation after route updates.
|
||||
**Impact**: Dynamic route updates might break certificate management functionality.
|
||||
|
||||
## Recommendations
|
||||
|
||||
1. **Verify Forward Action Implementation**: Check that the 'forward' action type properly establishes bidirectional data flow between client and target server.
|
||||
|
||||
2. **Fix HttpProxy Route Handling**: Ensure that route objects passed to HttpProxy.updateRouteConfigs have the expected structure with all required properties.
|
||||
|
||||
3. **Review Certificate Manager API**: Ensure all expected methods exist and are properly documented.
|
||||
|
||||
4. **Add Integration Tests**: Many unit tests are testing internal implementation details. Consider adding more integration tests that test the public API.
|
||||
Reference in New Issue
Block a user