The generic 'subscription generation failed' gave users no clue what
was wrong. Now the actual error is returned in the JSON response:
- 'user is not bound to any listener' → bind the user to a node
- 'no exportable proxies for user' → check listener config / protocol
- 'failed to load credentials' → check credential_key / user passwords
- 'listener X requires at least one active user' → bind active users
The log.Printf is still present for server-side diagnostics.
fix(subscription): return actual error message instead of generic 'failed'
The generic 'subscription generation failed' gave users no clue what
was wrong. Now the actual error is returned in the JSON response:
- 'user is not bound to any listener' → bind the user to a node
- 'no exportable proxies for user' → check listener config / protocol
- 'failed to load credentials' → check credential_key / user passwords
- 'listener X requires at least one active user' → bind active users
The log.Printf is still present for server-side diagnostics.
fix(subscription): return actual error message instead of generic 'failed'
The generic 'subscription generation failed' gave users no clue what
was wrong. Now the actual error is returned in the JSON response:
- 'user is not bound to any listener' → bind the user to a node
- 'no exportable proxies for user' → check listener config / protocol
- 'failed to load credentials' → check credential_key / user passwords
- 'listener X requires at least one active user' → bind active users
The log.Printf is still present for server-side diagnostics.
fix(subscription): return actual error message instead of generic 'failed'
The generic 'subscription generation failed' gave users no clue what
was wrong. Now the actual error is returned in the JSON response:
- 'user is not bound to any listener' → bind the user to a node
- 'no exportable proxies for user' → check listener config / protocol
- 'failed to load credentials' → check credential_key / user passwords
- 'listener X requires at least one active user' → bind active users
The log.Printf is still present for server-side diagnostics.
fix(subscription): return actual error message instead of generic 'failed'
The generic 'subscription generation failed' gave users no clue what
was wrong. Now the actual error is returned in the JSON response:
- 'user is not bound to any listener' → bind the user to a node
- 'no exportable proxies for user' → check listener config / protocol
- 'failed to load credentials' → check credential_key / user passwords
- 'listener X requires at least one active user' → bind active users
The log.Printf is still present for server-side diagnostics.
fix(subscription): return actual error message instead of generic 'failed'
The generic 'subscription generation failed' gave users no clue what
was wrong. Now the actual error is returned in the JSON response:
- 'user is not bound to any listener' → bind the user to a node
- 'no exportable proxies for user' → check listener config / protocol
- 'failed to load credentials' → check credential_key / user passwords
- 'listener X requires at least one active user' → bind active users
The log.Printf is still present for server-side diagnostics.
fix(subscription): return actual error message instead of generic 'failed'
The generic 'subscription generation failed' gave users no clue what
was wrong. Now the actual error is returned in the JSON response:
- 'user is not bound to any listener' → bind the user to a node
- 'no exportable proxies for user' → check listener config / protocol
- 'failed to load credentials' → check credential_key / user passwords
- 'listener X requires at least one active user' → bind active users
The log.Printf is still present for server-side diagnostics.
fix(subscription): return actual error message instead of generic 'failed'
The generic 'subscription generation failed' gave users no clue what
was wrong. Now the actual error is returned in the JSON response:
- 'user is not bound to any listener' → bind the user to a node
- 'no exportable proxies for user' → check listener config / protocol
- 'failed to load credentials' → check credential_key / user passwords
- 'listener X requires at least one active user' → bind active users
The log.Printf is still present for server-side diagnostics.
fix(subscription): return actual error message instead of generic 'failed'
The generic 'subscription generation failed' gave users no clue what
was wrong. Now the actual error is returned in the JSON response:
- 'user is not bound to any listener' → bind the user to a node
- 'no exportable proxies for user' → check listener config / protocol
- 'failed to load credentials' → check credential_key / user passwords
- 'listener X requires at least one active user' → bind active users
The log.Printf is still present for server-side diagnostics.
fix(subscription): return actual error message instead of generic 'failed'
The generic 'subscription generation failed' gave users no clue what
was wrong. Now the actual error is returned in the JSON response:
- 'user is not bound to any listener' → bind the user to a node
- 'no exportable proxies for user' → check listener config / protocol
- 'failed to load credentials' → check credential_key / user passwords
- 'listener X requires at least one active user' → bind active users
The log.Printf is still present for server-side diagnostics.
fix(subscription): return actual error message instead of generic 'failed'
The generic 'subscription generation failed' gave users no clue what
was wrong. Now the actual error is returned in the JSON response:
- 'user is not bound to any listener' → bind the user to a node
- 'no exportable proxies for user' → check listener config / protocol
- 'failed to load credentials' → check credential_key / user passwords
- 'listener X requires at least one active user' → bind active users
The log.Printf is still present for server-side diagnostics.
fix(subscription): return actual error message instead of generic 'failed'
The generic 'subscription generation failed' gave users no clue what
was wrong. Now the actual error is returned in the JSON response:
- 'user is not bound to any listener' → bind the user to a node
- 'no exportable proxies for user' → check listener config / protocol
- 'failed to load credentials' → check credential_key / user passwords
- 'listener X requires at least one active user' → bind active users
The log.Printf is still present for server-side diagnostics.