I believe this to be a bug in ng-bootstrap and has been reported and unfortunately there is no information on a fix coming.
I'll add the component html here but my demo of the issue is more useful.
<p>Hover over box 1 for a tooltip and then scroll</p>
<div *ngFor="let item of [].constructor(lineCount); let i = index">{{i}}</div>
<ul
class="lhsMenuWrapper show">
<li
class='lhsMenuWrapper-item common buttonTop'
ngbTooltip="Box 1"
placement="right">
<h1>1</h1>
</li>
</ul>
<div
class='common buttonTwo'
ngbTooltip="Box 2"
placement="right">
<h1>2</h1>
</div>
GIF of tooltip fail on position:fixed elements
My hack overrides the tooltip's position attribute with fixed, then makes sure its top and left is positioned correctly and the width:100% makes sure the tip is displayed without an early newline (could be improved).
I'm not a fan of this as I don't know the knock on effects, has anyone else come up with a better fix?
.show {
position: fixed!important;
top: 0px;
left: 0px;
width: 100%;
}

