So I'm reading up on the history of chroot() [1] (link via Hacker News [2]) and it seems like at the time it was introduced, chroot() was rather simplistic in implementation and was nothing more than a way of specifying to Unix, “when you see a leading ‘/’ replace it with this path.” It seems security was an afterthought.
It also reminded me of this bit of Unix history, courtesy of The Bell System Technical Journal, Volume 57, Number 6, Part 2 (July–August 1978), which shows just how loose everything was in early versions of Unix:
The file system structure allows an arbitrary, directed graph of directories with regular files linked in at arbitrary places in this graph. In fact, very early UNIX systems used such a structure. Administration of such a structure become so chaotic that later systems were restricted to a directory tree.
[1] https://utcc.utoronto.ca/~cks/space/blog/unix/ChrootHistory