It depends on the conventions established by the project's core developers. Generally, the trunk would be where the overall cutting edge development is, hence where "the experimental next version goes", but there are exceptions, e.g., the next major version might be developed in a branch rather than the trunk. A branch might be created for a bug fix or a new feature, but when the bug fix or feature is done, it is then merged to trunk.
Likewise, a branch might be created in preparation for a release (e.g., a feature freeze for code going into that branch), so you may find "bug fixes of the latest working version" in such a branch, though the bug fixes are likely to have been applied to the trunk as well. It may be the case that the latest release has been tagged, and then some patch version of the latest release has also been tagged, in which case you might just want to branch that.