diff --git a/Makefile b/Makefile
index 0787d60..ba5bba0 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 # -*- makefile -*-
 # -----------------------------------------------------------------------
-# Copyright 2022-2023 Open Networking Foundation
+# Copyright 2022-2023 Open Networking Foundation (ONF) and the ONF Contributors
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -88,9 +88,26 @@
 	source $</bin/activate ; set -u ;\
 	sphinx-reload $(SOURCEDIR)
 
-# lint and link verification. linkcheck is part of sphinx
+## -----------------------------------------------------------------------
+## Intent: lint and link verification. linkcheck is part of sphinx
+## -----------------------------------------------------------------------
 test: lint linkcheck
 
+## -----------------------------------------------------------------------
+## Intent: Exercise all generation targets
+## -----------------------------------------------------------------------
+test-all-targets += html
+test-all-targets += coverage
+# test-all-targets += changes
+# test-all-targets += info
+test-all-targets += man
+test-all-targe4ts += text
+# test-all-targets += latex
+
+
+test-all : test
+	$(MAKE) $(test-all-targets)
+
 # doctest
 # coverage
 # linkcheck
diff --git a/VERSION b/VERSION
index bb4dd7b..ccb309c 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.11.0-dev
+2.11.0-dev1
diff --git a/howto/doc_fixes b/howto/doc_fixes
new file mode 100644
index 0000000..9fd733d
--- /dev/null
+++ b/howto/doc_fixes
@@ -0,0 +1,2 @@
+D000 Duplicate explicit target name
+     - Suffix ` <>`_ URLs with a double underscore
\ No newline at end of file
diff --git a/howto/guides/urls b/howto/guides/urls
new file mode 100644
index 0000000..6cdd884
--- /dev/null
+++ b/howto/guides/urls
@@ -0,0 +1,2 @@
+https://gerrit.opencord.org/plugins/gitiles/voltha-go/+/refs/heads/master/quickstart.md
+https://github.com/opencord/voltha-go/blob/master/quickstart.md
diff --git a/howto/release/voltctl/release.rst b/howto/release/voltctl/release.rst
index ac6502b..a23abf3 100644
--- a/howto/release/voltctl/release.rst
+++ b/howto/release/voltctl/release.rst
@@ -5,24 +5,40 @@
 ---------------------
 - Increment the VERSION file to a major or minor point release.
 - Initiate a jenkins job to build components (WIP: searching).
-- Verify a `tag <https://github.com/opencord/voltctl/tags>`_ named for the version was created.
-- `Released version <https://api.github.com/repos/opencord/voltctl/releases/latest>`_ consumed by jenkins installer  vars/installVoltctl.groovy.
 
-|
+  - `repo::voltctl <https://gerrit.opencord.org/plugins/gitiles/voltctl/+/refs/heads/master>`__, Gerrit example: `33551 <https://gerrit.opencord.org/c/voltctl/+/33551>`_.
+  - At least two jenkins jobs need to run:
+
+    - version-tag_wildcard
+    - github-release_voltctl
+
+- Verify `git tags <https://github.com/opencord/voltctl/tags>`_
+
+  - A SemVer tag was created (vee prefix v{semver} signifies a golang package).
+  - Verify the `package(v1.8.0) <https://github.com/opencord/voltctl/releases/tag/v1.8.0>`_ contains more than just source archives (gz, zip):
+    - The `tags page <https://github.com/opencord/voltctl/tags>`_ index lacks ``Notes`` and ``Downloads`` links.
+
+  - A valid `package(v1.7.6) <https://github.com/opencord/voltctl/releases/tag/v1.7.6>`_ will include:
+
+    - The `tags page <https://github.com/opencord/voltctl/tags>`_ index contains ``Notes`` and ``Downloads`` links.
+    - A checksum file
+    - Versioned voltctl binaries for several platforms.
+    - Source code bundles (tar.gz and zip).
+
+- `Released version <https://api.github.com/repos/opencord/voltctl/releases/latest>`_ will be consumed by jenkins installer vars/installVoltctl.groovy.
+
 
 Create an official voltctl release
 ----------------------------------
 - `installVoltctl.groovy <https://gerrit.opencord.org/plugins/gitiles/ci-management/+/refs/heads/master/vars/installVoltctl.groovy#53>`_
-  depends on `releases/latest <https://api.github.com/repos/opencord/voltctl/releases/latest>`_ for versioned release information.
+  depends on `github/releases/latest <https://api.github.com/repos/opencord/voltctl/releases/latest>`_ for versioned release information.
 
-   - To generate a release visit `github <https://github.com/opencord/voltctl>`_.
-   - Click `Releases <https://github.com/opencord/voltctl/releases>`_ in the right margin.
+- To generate a release commit changes to `repo::voltctl <https://gerrit.opencord.org/plugins/gitiles/voltctl>`__:
 
-     - Click "Draft a new release"
-     - Select a tag name to base the release on.
-     - Title the relese and enter a description (release notes).
-     - Select the checkbox "Set as the latest release".
-     - Verify release information in the right margin upon return to the main repository screen.
+  - Modify VERSION file major/minor numbers for the upcoming release.
+  - Remove any -dev or patch modifiers.
+  - Create a pull request for review.
+  - Changes will be published when the jenkins job github-release-voltctl is run.
 
 - Verify the release version contains a checksum file:
 
diff --git a/makefiles/help/include.mk b/makefiles/help/include.mk
index 0ff8bf4..3cca2cd 100644
--- a/makefiles/help/include.mk
+++ b/makefiles/help/include.mk
@@ -1,6 +1,6 @@
 # -*- makefile -*-
 # -----------------------------------------------------------------------
-# Copyright 2017-2022 Open Networking Foundation
+# Copyright 2017-2023 Open Networking Foundation (ONF) and the ONF Contributors
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -32,6 +32,10 @@
 	@echo '  reload         Setup to auto-reload sphinx doc changes in browser'
 	@echo '  view-html      View generated documentation'
 	@echo
+	@echo '[TEST]'
+	@echo '  test           make lint linkcheck'
+	@echo '  test-all       make all-generation-targets'
+	@echo
 	@echo '[HELP]'
 	@echo '  help           Display program help'
 	@echo '  help-verbose   Display additional targets and help'
diff --git a/overview/deployment_environment.rst b/overview/deployment_environment.rst
index cded591..bc077f9 100644
--- a/overview/deployment_environment.rst
+++ b/overview/deployment_environment.rst
@@ -16,11 +16,14 @@
 -----------------
 
 VOLTHA components on top of ``kubernetes`` are managed via ``helm`` charts.
-For more information about ``helm`` please refer to the `Official Documentation
-<https://helm.sh>`_.
-For the sake of this guide all you need to know is that an
-``helm`` chart describes all the information required to deploy a component on top of
-``kubernetes``, such as: containers, exposed ports and configuration parameters.
+For more information about ``helm`` please refer to the `Official Documentation <https://helm.sh>`_.
+
+For the sake of this guide, ``helm`` chart simply describe requirements to
+deploy a component on top of ``kubernetes``:
+
+- containers
+- exposed ports
+- configuration parameters.
 
 A VOLTHA deployment is composed, at its very minimum, by:
 
