diff --git a/pw_base64/docs.rst b/pw_base64/docs.rst
index 4b583e5f99..fd11384f7e 100644
--- a/pw_base64/docs.rst
+++ b/pw_base64/docs.rst
@@ -20,4 +20,4 @@ C++ API reference
Rust API reference
------------------
``pw_base64``'s Rust API is documented in the
-`pw_base64 crate's docs `_.
+`pw_base64 crate's docs `_.
diff --git a/pw_build/python.rst b/pw_build/python.rst
index ae36250e64..1de97ff4c6 100644
--- a/pw_build/python.rst
+++ b/pw_build/python.rst
@@ -296,8 +296,8 @@ Arguments
:ref:`docs-python-build-python-gn-requirements-files`
- ``pip_generate_hashes``: (Default: false) Use ``--generate-hashes`` When
- running `pip-compile `_ to compute the final ``requirements.txt``
+ running ``pip-compile `` to compute the final ``requirements.txt``
- ``source_packages``: A list of in-tree
:ref:`module-pw_build-pw_python_package` or targets that will be checked for
diff --git a/pw_bytes/docs.rst b/pw_bytes/docs.rst
index 30071a0bf4..22227ca0d7 100644
--- a/pw_bytes/docs.rst
+++ b/pw_bytes/docs.rst
@@ -145,4 +145,4 @@ project's configuration.
Rust API
--------
``pw_bytes``'s Rust API is documented in our
-`rustdoc API docs `_.
+`rustdoc API docs `_.
diff --git a/pw_console/py/pw_console/docs/user_guide.rst b/pw_console/py/pw_console/docs/user_guide.rst
index 7aec2e2e92..8876bcbfa5 100644
--- a/pw_console/py/pw_console/docs/user_guide.rst
+++ b/pw_console/py/pw_console/docs/user_guide.rst
@@ -1091,12 +1091,11 @@ Log Window
Upcoming Features
-----------------
-For upcoming features see the Pigweed Console Bug Hotlist at:
-https://bugs.chromium.org/u/542633886/hotlists/Console
-
+Open feature requests:
+https://issues.pigweed.dev/issues?q=status:open%20pw_console%20type:feature_request
Feature Requests
~~~~~~~~~~~~~~~~
-Create a feature request bugs using this template:
-https://bugs.chromium.org/p/pigweed/issues/entry?owner=tonymd@google.com&labels=Type-Enhancement,Priority-Medium&summary=pw_console
+Set the **Type** field to **Feature Request** when creating an issue:
+https://issues.pigweed.dev/issues/new?component=1194524&template=1691892
diff --git a/pw_format/docs.rst b/pw_format/docs.rst
index b5d4731033..81ce104ebd 100644
--- a/pw_format/docs.rst
+++ b/pw_format/docs.rst
@@ -16,4 +16,4 @@ Disambiguation: If you're looking for code formatting support, see
Rust
----
``pw_format``'s Rust API is documented in the
-`pw_format crate's docs `_.
+`pw_format crate's docs `_.
diff --git a/pw_status/reference.rst b/pw_status/reference.rst
index 2ddc2a7777..4d1e6624fe 100644
--- a/pw_status/reference.rst
+++ b/pw_status/reference.rst
@@ -408,4 +408,4 @@ in C++; instead use the :cpp:class:`pw::Status` class.
Rust API
--------
``pw_status``'s Rust API is documented in our
-`rustdoc API docs `_.
+`rustdoc API docs `_.
diff --git a/pw_stream/docs.rst b/pw_stream/docs.rst
index 8549bf5c66..79304032a4 100644
--- a/pw_stream/docs.rst
+++ b/pw_stream/docs.rst
@@ -433,7 +433,7 @@ Rust
----
Pigweed centric analogs to Rust ``std``'s ``Read``, ``Write``, ``Seek`` traits
as well as a basic ``Cursor`` implementation are provided by the
-`pw_stream crate `_.
+`pw_stream crate `_.
.. toctree::
diff --git a/pw_tokenizer/tokenization.rst b/pw_tokenizer/tokenization.rst
index 159045f7cc..9a2f1f7df5 100644
--- a/pw_tokenizer/tokenization.rst
+++ b/pw_tokenizer/tokenization.rst
@@ -45,7 +45,7 @@ This is encoded as 4 bytes: ``44 a2 c9 da``.
Arguments are encoded as follows:
* **Integers** (1--10 bytes) --
- `ZagZag and varint encoded `_,
+ `ZagZag and varint encoded `_,
similarly to Protocol Buffers. Smaller values take fewer bytes.
* **Floating point numbers** (4 bytes) -- Single precision floating point.
* **Strings** (1--128 bytes) -- Length byte followed by the string contents.
diff --git a/pw_transfer/docs.rst b/pw_transfer/docs.rst
index f603dab8db..8c981e9bba 100644
--- a/pw_transfer/docs.rst
+++ b/pw_transfer/docs.rst
@@ -890,7 +890,7 @@ The CIPD package contents can be created with this command:
pw_transfer_test_binaries
To update the CIPD package itself, follow the `internal documentation for
-updating a CIPD package `_.
+updating a CIPD package `_.
CI/CQ integration
=================
diff --git a/pw_varint/public/pw_varint/varint.h b/pw_varint/public/pw_varint/varint.h
index 126bd9d298..754fc2027c 100644
--- a/pw_varint/public/pw_varint/varint.h
+++ b/pw_varint/public/pw_varint/varint.h
@@ -197,7 +197,7 @@ inline constexpr size_t kMaxVarint64SizeBytes = PW_VARINT_MAX_INT64_SIZE_BYTES;
/// @endcode
///
/// See the following for a description of ZigZag encoding:
-/// https://developers.google.com/protocol-buffers/docs/encoding#types
+/// https://protobuf.dev/programming-guides/encoding/#signed-ints
template
constexpr std::make_unsigned_t ZigZagEncode(T n) {
static_assert(std::is_signed(), "Zig-zag encoding is for signed integers");
diff --git a/pw_varint/rust/pw_varint.rs b/pw_varint/rust/pw_varint.rs
index cd6ff62bb8..5b1f7f6f19 100644
--- a/pw_varint/rust/pw_varint.rs
+++ b/pw_varint/rust/pw_varint.rs
@@ -147,7 +147,7 @@ fn encode_u64(data: &mut [u8], value: u64) -> Result {
// (n << 1) ^ (n >> (k - 1))
//
// See the following for a description of ZigZag encoding:
-// https://developers.google.com/protocol-buffers/docs/encoding#types
+// https://protobuf.dev/programming-guides/encoding/#signed-ints
fn zig_zag_encode(value: i64) -> u64 {
((value as u64) << 1) ^ ((value >> (i64::BITS - 1)) as u64)
}
diff --git a/seed/0113-bazel-cc-toolchain-api.rst b/seed/0113-bazel-cc-toolchain-api.rst
index ca6cc1024f..8bdad19fb8 100644
--- a/seed/0113-bazel-cc-toolchain-api.rst
+++ b/seed/0113-bazel-cc-toolchain-api.rst
@@ -42,7 +42,7 @@ following problems:
there's a lot of flexibility with how you construct a toolchain config, but
very little by way of existing patterns for creating something that is
testable, sharable, or in other ways modular. The existing
- `tutorial for creating a C/C++ toolchain `_
+ `tutorial for creating a C/C++ toolchain `_
illustrates expanding out the toolchain definition as a no-argument Starlark
rule.
diff --git a/third_party/fuzztest/docs.rst b/third_party/fuzztest/docs.rst
index a59ff97e8c..f62e10129b 100644
--- a/third_party/fuzztest/docs.rst
+++ b/third_party/fuzztest/docs.rst
@@ -65,8 +65,9 @@ Add FuzzTest to your workspace with the following command.
.. tab-item:: Bazel
- Set the following `label flags`_, either in your `target config`_ or on
- the command line:
+ Set the following :ref:`label flags `,
+ either in your :ref:`target config
+ ` or on the command line:
* ``pw_fuzzer_fuzztest_backend`` to ``@com_google_fuzztest//fuzztest``.
@@ -77,9 +78,6 @@ Add FuzzTest to your workspace with the following command.
bazel test //... \
--@pigweed//targets:pw_fuzzer_fuzztest_backend=@com_google_fuzztest//fuzztest
-.. _target config: :ref:`_docs-build_system-bazel_configuration`
-.. _label flags: :ref:`_docs-build_system-bazel_flags`
-
Updating
========
The GN build files are generated from the third-party Bazel build files using