Audits are a great way of making sure protocols are avoiding bad practices and are safe against the most common known exploits. That being said, new exploits are bound to be discovered, thus a passing audit is not necessarily a perfect indication of safety.
Audit reports will also always indicate what areas of a project’s codebase it has covered. It might be the case that only a small portion of the project’s codebase was checked, and security concerns may be present in missing areas.
Projects with a good track record will likely undergo multiple audits with extensive coverage, repeating the process for large code updates as development advances further.