An acknowledgement reports receipt according to the protocol's rules. A TCP cumulative acknowledgement names the next expected byte; it does not establish that the application has durably acted on all preceding data.
New to topics? Read the docs here!