Almost all large retail brokers run this way. Software scores each account and routes accordingly: consistent winners and large orders go to the a-book, the remainder stays in the b-book. The classification is dynamic and invisible to the client.
It is not inherently improper, and it is normally disclosed in the terms of business. What matters to a trader is whether execution quality changes with performance, which is visible in slippage statistics over time.
Example: a trader's average fill slippage is plus 0.1 pips for six months while unprofitable, then minus 0.6 pips after a strong run. That pattern is consistent with being moved between books.
Related: a-book, b-book, slippage, best-execution