diff --git a/doc/administration/geo/replication/troubleshooting.md b/doc/administration/geo/replication/troubleshooting.md
index bf6fafd4912..9a6335ae829 100644
--- a/doc/administration/geo/replication/troubleshooting.md
+++ b/doc/administration/geo/replication/troubleshooting.md
@@ -364,9 +364,9 @@ The Ruby gem which performs the check is hard coded with `pool.ntp.org` as its r
This issue occurs when the hostname `pool.ntp.org` resolves to a server which does not provide a time service.
-In this case, in GitLab 15.7 and newer, [specify a custom NTP server using environment variables](#health-check-rake-task).
+In this case, in GitLab 15.7 and later, [specify a custom NTP server using environment variables](#health-check-rake-task).
-In GitLab 15.6 and older, use one of the following workarounds:
+In GitLab 15.6 and earlier, use one of the following workarounds:
- Add entries in `/etc/hosts` for `pool.ntp.org` to direct the request to valid local time servers.
This fixes the long timeout and the timeout error.
@@ -776,7 +776,7 @@ The following configuration example:
- Ignores five common check failures.
[The Gitaly documentation has more details](../../gitaly/consistency_checks.md)
-about other Git check failures and older versions of GitLab.
+about other Git check failures and earlier versions of GitLab.
```ruby
gitaly['configuration'] = {
diff --git a/doc/administration/integration/plantuml.md b/doc/administration/integration/plantuml.md
index f6e4cedd1ee..647ea1f195b 100644
--- a/doc/administration/integration/plantuml.md
+++ b/doc/administration/integration/plantuml.md
@@ -330,7 +330,7 @@ After configuring your local PlantUML server, you're ready to enable the PlantUM
Depending on your PlantUML and GitLab version numbers, you may also need to take
these steps:
-- For PlantUML servers running v1.2020.9 and above, such as [plantuml.com](https://plantuml.com),
+- For PlantUML servers running v1.2020.9 and later, such as [plantuml.com](https://plantuml.com),
you must set the `PLANTUML_ENCODING` environment variable to enable the `deflate`
compression. In Linux package installations, you can set this value in `/etc/gitlab/gitlab.rb` with
this command:
diff --git a/doc/api/groups.md b/doc/api/groups.md
index 03449f55650..7238cfeaa5f 100644
--- a/doc/api/groups.md
+++ b/doc/api/groups.md
@@ -1728,7 +1728,7 @@ DETAILS:
**Tier:** Premium, Ultimate
**Offering:** Self-managed
-Adds an LDAP group link using a CN or filter. Adding a group link by filter is only supported in the Premium tier and above.
+Adds an LDAP group link using a CN or filter. Adding a group link by filter is only supported in the Premium and Ultimate tier.
```plaintext
POST /groups/:id/ldap_group_links
@@ -1780,7 +1780,7 @@ DETAILS:
**Tier:** Premium, Ultimate
**Offering:** Self-managed
-Deletes an LDAP group link using a CN or filter. Deleting by filter is only supported in the Premium tier and above.
+Deletes an LDAP group link using a CN or filter. Deleting by filter is only supported in the Premium and Ultimate tier.
```plaintext
DELETE /groups/:id/ldap_group_links
diff --git a/doc/architecture/blueprints/capacity_planning/index.md b/doc/architecture/blueprints/capacity_planning/index.md
index b25ebb4030f..e4978683904 100644
--- a/doc/architecture/blueprints/capacity_planning/index.md
+++ b/doc/architecture/blueprints/capacity_planning/index.md
@@ -1,5 +1,5 @@
---
-status: proposed
+status: implemented
creation-date: "2023-09-11"
authors: [ "@abrandl" ]
coach: "@andrewn"
diff --git a/doc/architecture/blueprints/cells/iterations/cells-1.0.md b/doc/architecture/blueprints/cells/iterations/cells-1.0.md
index 4055fb7797e..9a9687a64d3 100644
--- a/doc/architecture/blueprints/cells/iterations/cells-1.0.md
+++ b/doc/architecture/blueprints/cells/iterations/cells-1.0.md
@@ -24,7 +24,7 @@ contribution model in a cellular architecture.
A Cells 1.0 is meant to target enterprise customers that have the following expectations:
1. They want to use our multi-tenant SaaS solution (GitLab.com) to serve their Organization.
-1. They accept that they may receive updates later than the rest of GitLab.com.
+1. They accept that they may receive updates later than the rest of GitLab.com. Note that when GitLab does a security release, the Delivery team makes sure that production (every cell) runs the security release version before making the release public. This does not mean that outside of a security release, all the cells run the same version of GitLab. See [this private discussion](https://gitlab.com/gitlab-com/gl-security/appsec/threat-models/-/issues/45#note_1794904358) for more information.
1. They want to use an environment with higher degree of isolation to rest of the system.
1. They want to control all users that contribute to their Organization.
1. Their groups and projects are meant to be private.
diff --git a/doc/ci/docker/using_kaniko.md b/doc/ci/docker/using_kaniko.md
index 2731302ee94..ce5ffe4803f 100644
--- a/doc/ci/docker/using_kaniko.md
+++ b/doc/ci/docker/using_kaniko.md
@@ -10,8 +10,6 @@ DETAILS:
**Tier:** Free, Premium, Ultimate
**Offering:** GitLab.com, Self-managed, GitLab Dedicated
-> - [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/45512) in GitLab 11.2. Requires GitLab Runner 11.2 and above.
-
[kaniko](https://github.com/GoogleContainerTools/kaniko) is a tool to build
container images from a Dockerfile, inside a container or Kubernetes cluster.
diff --git a/doc/ci/testing/metrics_reports.md b/doc/ci/testing/metrics_reports.md
index b71a331364b..6cface6e9d9 100644
--- a/doc/ci/testing/metrics_reports.md
+++ b/doc/ci/testing/metrics_reports.md
@@ -10,8 +10,6 @@ DETAILS:
**Tier:** Premium, Ultimate
**Offering:** GitLab.com, Self-managed, GitLab Dedicated
-> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/9788) in GitLab 11.10. Requires GitLab Runner 11.10 and above.
-
GitLab provides a lot of great reporting tools for things like [merge requests](../../user/project/merge_requests/index.md) - [Unit test reports](unit_test_reports.md), [code quality](code_quality.md), and performance tests. While JUnit is a great open framework for tests that "pass" or "fail", it is also important to see other types of metrics from a given change.
You can configure your job to use custom Metrics Reports, and GitLab displays a report on the merge request so that it's easier and faster to identify changes without having to check the entire log.
@@ -67,6 +65,6 @@ renders in the merge request widget as:
You can see `Metrics reports did not change` when trying to view metrics reports in merge requests. Reasons for this are:
- The target branch for the merge request doesn't have a baseline metrics report for comparison.
-- You don't have GitLab license at the Premium tier or above.
+- You don't have a paid subscription.
There is [an issue open](https://gitlab.com/gitlab-org/gitlab/-/issues/343065) to improve this message.
diff --git a/doc/ci/testing/unit_test_reports.md b/doc/ci/testing/unit_test_reports.md
index f78c813113e..1efb4db2d9c 100644
--- a/doc/ci/testing/unit_test_reports.md
+++ b/doc/ci/testing/unit_test_reports.md
@@ -10,9 +10,6 @@ DETAILS:
**Tier:** Free, Premium, Ultimate
**Offering:** GitLab.com, Self-managed, GitLab Dedicated
-> - [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/45318) in GitLab 11.2. Requires GitLab Runner 11.2 and above.
-> - [Renamed](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/39737) from JUnit test reports to Unit test reports in GitLab 13.4.
-
It is very common that a [CI/CD pipeline](../pipelines/index.md) contains a
test job that verifies your code.
If the tests fail, the pipeline fails and users get notified. The person that
diff --git a/doc/ci/variables/index.md b/doc/ci/variables/index.md
index 0ee227d57ef..b69c304e08b 100644
--- a/doc/ci/variables/index.md
+++ b/doc/ci/variables/index.md
@@ -363,7 +363,7 @@ kubectl config set-cluster e2e --server="$KUBE_URL" --certificate-authority="$KU
WARNING:
Be careful when assigning the value of a file variable to another variable in GitLab 15.6 or older.
The other variable takes the content of the file as its value, **not** the path to the file.
-In GitLab 15.7 and newer, this behavior [was fixed](https://gitlab.com/gitlab-org/gitlab/-/issues/29407) and the other variable now takes the path to the file as the value.
+In GitLab 15.7 and later, this behavior [was fixed](https://gitlab.com/gitlab-org/gitlab/-/issues/29407) and the other variable now takes the path to the file as the value.
#### Use a `.gitlab-ci.yml` variable as a file type variable
diff --git a/doc/ci/yaml/index.md b/doc/ci/yaml/index.md
index 1417400d0cb..7bedef67625 100644
--- a/doc/ci/yaml/index.md
+++ b/doc/ci/yaml/index.md
@@ -2970,11 +2970,11 @@ This example creates four paths of execution:
can refer to jobs in the same stage as the job you are configuring. This feature is
enabled on GitLab.com and ready for production use. On self-managed [GitLab 14.2 and later](https://gitlab.com/gitlab-org/gitlab/-/issues/30632)
this feature is available by default.
-- In GitLab 14.0 and older, you can only refer to jobs in earlier stages. Stages must be
+- In GitLab 14.0 and earlier, you can only refer to jobs in earlier stages. Stages must be
explicitly defined for all jobs that use the `needs` keyword, or are referenced
in a job's `needs` section.
-- In GitLab 13.9 and older, if `needs` refers to a job that might not be added to
- a pipeline because of `only`, `except`, or `rules`, the pipeline might fail to create. In GitLab 13.10 and later, use the [`needs:optional`](#needsoptional) keyword to resolve a failed pipeline creation.
+- If `needs` refers to a job that might not be added to
+ a pipeline because of `only`, `except`, or `rules`, the pipeline might fail to create. Use the [`needs:optional`](#needsoptional) keyword to resolve a failed pipeline creation.
- If a pipeline has jobs with `needs: []` and jobs in the [`.pre`](#stage-pre) stage, they will
all start as soon as the pipeline is created. Jobs with `needs: []` start immediately,
and jobs in the `.pre` stage also start immediately.
diff --git a/doc/development/packages/harbor_registry_development.md b/doc/development/packages/harbor_registry_development.md
index 0673721ddc9..830d2350cdb 100644
--- a/doc/development/packages/harbor_registry_development.md
+++ b/doc/development/packages/harbor_registry_development.md
@@ -99,7 +99,7 @@ sequenceDiagram
## Policy
The`read_harbor_registry` policy for groups and projects is used to control whether users have access to Harbor registry.
-This policy is enabled for every user with the Reporter role and above.
+This policy is enabled for every user with at least the Reporter role.
## Frontend Development
diff --git a/doc/development/secure_coding_guidelines.md b/doc/development/secure_coding_guidelines.md
index ea96da2582f..506a7b57042 100644
--- a/doc/development/secure_coding_guidelines.md
+++ b/doc/development/secure_coding_guidelines.md
@@ -632,7 +632,7 @@ This outputs `1` followed by the content of `/etc/passwd`.
### TLS minimum recommended version
-As we have [moved away from supporting TLS 1.0 and 1.1](https://about.gitlab.com/blog/2018/10/15/gitlab-to-deprecate-older-tls/), you must use TLS 1.2 and above.
+As we have [moved away from supporting TLS 1.0 and 1.1](https://about.gitlab.com/blog/2018/10/15/gitlab-to-deprecate-older-tls/), you must use TLS 1.2 and later.
#### Ciphers
diff --git a/doc/integration/saml.md b/doc/integration/saml.md
index c3ba3faf38d..283003d1914 100644
--- a/doc/integration/saml.md
+++ b/doc/integration/saml.md
@@ -404,7 +404,7 @@ You can configure GitLab to use multiple SAML IdPs if:
- Each provider has a unique name set that matches a name set in `args`. At least
one provider must have the name `saml` to mitigate a
[known issue](https://gitlab.com/gitlab-org/gitlab/-/issues/366450) in GitLab
- 14.6 and newer.
+ 14.6 and later.
- The providers' names are used:
- In OmniAuth configuration for properties based on the provider name. For example,
`allowBypassTwoFactor`, `allowSingleSignOn`, and `syncProfileFromProvider`.
diff --git a/doc/topics/autodevops/upgrading_auto_deploy_dependencies.md b/doc/topics/autodevops/upgrading_auto_deploy_dependencies.md
index 18b5dbee044..31c6f9fc12c 100644
--- a/doc/topics/autodevops/upgrading_auto_deploy_dependencies.md
+++ b/doc/topics/autodevops/upgrading_auto_deploy_dependencies.md
@@ -75,7 +75,7 @@ If your Auto DevOps project has an active environment deployed with the v1 `auto
#### Kubernetes 1.16+
-The v2 auto-deploy-image drops support for Kubernetes 1.15 and lower. If you need to upgrade your
+The v2 auto-deploy-image drops support for Kubernetes 1.15 and earlier. If you need to upgrade your
Kubernetes cluster, follow your cloud provider's instructions. Here's
[an example on GKE](https://cloud.google.com/kubernetes-engine/docs/how-to/upgrading-a-cluster).
diff --git a/doc/user/application_security/dast/browser/checks/16.2.md b/doc/user/application_security/dast/browser/checks/16.2.md
index c90040828ba..823e28821a1 100644
--- a/doc/user/application_security/dast/browser/checks/16.2.md
+++ b/doc/user/application_security/dast/browser/checks/16.2.md
@@ -24,7 +24,7 @@ NGINX:
For NGINX based websites, set the `server_tokens` configuration value to `off` in the `nginx.conf` file.
IIS:
-For IIS based websites version 10 and above you can use the `removeServerHeader` element to the `requestFiltering`
+For IIS-based websites version 10 and later, you can use the `removeServerHeader` element to the `requestFiltering`
section of the `Web.config` file.
For all other server types, please consult your product's documentation on how to redact the version information from
diff --git a/doc/user/application_security/dast/browser/checks/548.1.md b/doc/user/application_security/dast/browser/checks/548.1.md
index 1e2a97b8d38..72930ed8a02 100644
--- a/doc/user/application_security/dast/browser/checks/548.1.md
+++ b/doc/user/application_security/dast/browser/checks/548.1.md
@@ -25,7 +25,7 @@ For NGINX based websites, ensure all `location` definitions have the `autoindex
`nginx.conf` file.
IIS:
-For IIS based websites version 7.0 and above you can use the `
-