diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 5a66739..b9bf768 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -1,13 +1,23 @@
 ---
 
 # -----------------------------------------------------------------------
+# [NOTE] - Propogate .pre-commit-config.yaml edits to all repositories!
+# -----------------------------------------------------------------------
+# [TODO]
+#    - pre-commit yaml config exists individually within repositories.
+#    - Generally lint config and benavior is consistent for all repos.
+#    - Exclusions and bulk cleanup necessitate per-repo custom configs.
+#    - Dynamically generate this config file from common and custom
+# -----------------------------------------------------------------------
+
+# -----------------------------------------------------------------------
 # Copyright 2024 Open Networking Foundation Contributors
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at
 #
-# http:#www.apache.org/licenses/LICENSE-2.0
+# http://www.apache.org/licenses/LICENSE-2.0
 #
 # Unless required by applicable law or agreed to in writing, software
 # distributed under the License is distributed on an "AS IS" BASIS,
@@ -21,39 +31,59 @@
 # See https://pre-commit.com for more information
 # See https://pre-commit.com/hooks.html for more hooks
 # -----------------------------------------------------------------------
-# .pre-commiit-config-yaml v0.1
+# .pre-commit-config-yaml 2024-04-10 v0.3
 # -----------------------------------------------------------------------
 
+# ci:
+#   skip: [sync]
+
 repos:
--   repo: https://github.com/pre-commit/pre-commit-hooks
+  # Sync from repo
+  - repo: https://github.com/pre-commit/pre-commit-hooks
     rev: v4.5.0
     hooks:
       - id: trailing-whitespace
       - id: end-of-file-fixer
       - id: check-yaml
       - id: check-added-large-files
--   repo: https://github.com/koalaman/shellcheck-precommit
+
+  - repo: https://github.com/koalaman/shellcheck-precommit
     rev: v0.10.0
     hooks:
       - id: shellcheck
--   repo: https://github.com/adrienverge/yamllint.git
+
+  - repo: https://github.com/adrienverge/yamllint.git
     rev: v1.35.1
     hooks:
       - id: yamllint
 
 ## -----------------------------------------------------------------------
+## [SOURCE] REUSE License Checking
+## -----------------------------------------------------------------------
+# - repo: https://github.com/ansys/pre-commit-hooks
+#   rev: v0.2.9
+#   hooks:
+#     - id: add-license-headers
+#   args:
+# - --custom_copyright=custom copyright phrase
+# - --custom_template=template_name
+# - --custom_license=license_name
+# - --ignore_license_check
+# - --start_year=2023
+
+## -----------------------------------------------------------------------
 ## [SOURCE] Python
 ## -----------------------------------------------------------------------
-# -   repo: https://github.com/psf/black
-#    rev: 22.10.0
-#    hooks:
-#      - id: black
+# - repo: https://github.com/psf/black
+#   rev: 22.10.0
+#   hooks:
+#     - id: black
 
-# -   repo: https://github.com/PyCQA/doc8
-#    rev: v1.1.1
-#    hooks:
-#    - id: doc8
-        
+# - repo: https://github.com/PyCQA/doc8
+#   rev: v1.1.1
+#   hooks:
+#     - id: doc8
+
 # -------------------------------------------------------------------
 # https://docs.python.org/3/library/re.html#regular-expression-syntax
 # -------------------------------------------------------------------
@@ -63,14 +93,14 @@
         ^makefiles/.*       |
         ^lf/.*              |
         ^.venv/.*           |
+        ^jenkins-scripts/.* |
+        ^lf-ansible/.*      |
+        ^packer/.*          |
+        ^test/.*            |
+        ^jjb/pipeline/voltha/voltha-physical-soak-dt-tests.groovy
     )$
 
 # [SEE ALSO]
 # -----------------------------------------------------------------------
-# https://github.com/memfault/interrupt/blob/master/example/pre-commit/.pre-commit-config.yaml
-# https://pre-commit.com/hooks.html
-# https://github.com/floatingpurr/sync_with_poetry/blob/main/.pre-commit-config.yaml
-# https://github.com/the-common/pre-commit-config-template/blob/master/.pre-commit-config.yaml
-# -----------------------------------------------------------------------
 
 # [EOF]
diff --git a/VERSION b/VERSION
index 26340c0..a5c5ebd 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.12.36
+2.12.37
diff --git a/howto/code/lint/fix-errors/index.rst b/howto/code/lint/fix-errors/index.rst
new file mode 100644
index 0000000..e48d6a8
--- /dev/null
+++ b/howto/code/lint/fix-errors/index.rst
@@ -0,0 +1,8 @@
+LINT: Fixing errors
+=========================
+
+.. toctree::
+    :glob:
+
+   sphinx/spelling/*
+   yamllint/*
diff --git a/howto/code/lint/fix-errors/sphinx/spelling/index.rst b/howto/code/lint/fix-errors/sphinx/spelling/index.rst
new file mode 100644
index 0000000..fe040a5
--- /dev/null
+++ b/howto/code/lint/fix-errors/sphinx/spelling/index.rst
@@ -0,0 +1,7 @@
+LINT: Spelling Errors
+=====================
+
+.. toctree::
+   :maxdepth: 2
+
+   spelling-exclusions
diff --git a/howto/code/lint/fix-errors/sphinx/spelling/spelling-exclusions.rst b/howto/code/lint/fix-errors/sphinx/spelling/spelling-exclusions.rst
new file mode 100644
index 0000000..9051fbd
--- /dev/null
+++ b/howto/code/lint/fix-errors/sphinx/spelling/spelling-exclusions.rst
@@ -0,0 +1,31 @@
+LINT: Spelling exclusions
+=========================
+
+Correct spelling problems within docs whenever possible but on occasions
+when commands or error message strings are in the dictionary exclusions
+can be added
+
+.. code:: bash
+
+   % make spelling
+
+Spelling exclusion for a special string
+---------------------------------------
+
+- Ignore this `` :spelling:ignore:`bogus-word` ``
+- Quoting: ``item``
+
+Spelling exclusions by list
+---------------------------
+
+Exclude `foo, bar & tans` within a single document.
+.. code:: bash
+
+   `` .. spelling:: ``
+      foo
+      bar
+      tans
+
+.. seealso::
+
+   [managing-lists-of-correctly-spelled-words-and-ignoring-words](https://sphinxcontrib-spelling.readthedocs.io/en/latest/customize.html#managing-lists-of-correctly-spelled-words-and-ignoring-words)
diff --git a/howto/code/lint/fix-errors/yamllint/long-lines.rst b/howto/code/lint/fix-errors/yamllint/long-lines.rst
new file mode 100644
index 0000000..e4d16bf
--- /dev/null
+++ b/howto/code/lint/fix-errors/yamllint/long-lines.rst
@@ -0,0 +1,15 @@
+LINT: Spelling exclusions
+=========================
+
+.. code:: bash
+
+   % make lint-yaml
+
+Folding
+-------
+
+- >, >-, >+
+
+.. seealso::
+
+- https://yaml-multiline.info/
diff --git a/howto/code/lint/index.rst b/howto/code/lint/index.rst
index 0668a27..c061006 100644
--- a/howto/code/lint/index.rst
+++ b/howto/code/lint/index.rst
@@ -4,8 +4,8 @@
 .. toctree::
    :maxdepth: 1
 
-   index.rst
    lint-helm.rst
+   fix-errors
 
 
 ======================================
diff --git a/operations/software-upgrade.rst b/operations/software-upgrade.rst
index b125bb5..b7d27dc 100644
--- a/operations/software-upgrade.rst
+++ b/operations/software-upgrade.rst
@@ -2,33 +2,39 @@
 VOLTHA and ONOS software update procedures
 =============================================
 
-This document describes the software upgrade procedure for VOLTHA and ONOS in a deployed system.
-Distinction is made between a `minor` software upgrade, which can be done in service,
-meaning with no dataplane service interruption to existing customers, and a `major` software upgrade,
-which in turns requires a full maintenance window during which service is impacted.
+This document describes the software upgrade procedure for VOLTHA and ONOS
+in a deployed system.  Distinction is made between a `minor` software upgrade,
+which can be done in service, meaning with no dataplane service interruption
+to existing customers, and a `major` software upgrade, which in turns requires
+a full maintenance window during which service is impacted.
 
-Changes to data-structures in storage (ETCD for VOLTHA and Atomix for ONOS) are out of scope for in-service upgrades.
-Such changes qualify as “major” software upgrades that require a maintenance windows.
-The KAFKA bus update has its own section given that the procedure is different from the rest of the components.
-The following elements expect a fully working provisioned VOLTHA and ONOS deployment on top of a Kubernetes cluster,
-with exposed ONOS REST API ports.
-It is also expected that new versions of the different components are available to the operator that performs
-the upgrade.
+Changes to data-structures in storage (ETCD for VOLTHA and Atomix for ONOS)
+are out of scope for in-service upgrades.  Such changes qualify as “major”
+software upgrades that require a maintenance windows.  The KAFKA bus update
+has its own section given that the procedure is different from the rest of
+the components.  The following elements expect a fully working provisioned
+VOLTHA and ONOS deployment on top of a Kubernetes cluster, with exposed ONOS
+REST API ports.  It is also expected that new versions of the different
+components are available to the operator that performs the upgrade.
 
 Minor Software Version Update
 =============================
-The `minor` software upgrade qualifier refers to an upgrade that does not involve API
-changes, which in VOLTHA, refers to either a change to the protos or to voltha-lib-go,
-and in ONOS to a change in the Java interfaces, CLI commands or REST APIs of either the Apps or the platform.
-A `minor` software update is intended for bug fixes and not for new features.
-`Minor` software update is supported only for ONOS apps and VOLTHA components. No in service software update
-is supported for ETCD or Kafka.
+
+The `minor` software upgrade qualifier refers to an upgrade that does not
+involve API changes, which in VOLTHA, refers to either a change to the protos
+or to voltha-lib-go, and in ONOS to a change in the Java interfaces, CLI
+commands or REST APIs of either the Apps or the platform.  A `minor` software
+update is intended for bug fixes and not for new features.  `Minor` software
+update is supported only for ONOS apps and VOLTHA components. No in service
+software update is supported for ETCD or Kafka.
 
 VOLTHA services
 ---------------
+
 VOLTHA components `minor` software upgrade leverages `helm` and `k8s`.
-During this process is expected that no provision subscriber call is executed from the northbound.
-In process calls will be executed thanks to the stored data and/or the persistence of messages over KAFKA.
+During this process is expected that no provision subscriber call is
+executed from the northbound.  In process calls will be executed thanks to
+the stored data and/or the persistence of messages over KAFKA.
 
 After changes in the code are made and verified the following steps are needed:
 
@@ -59,10 +65,12 @@
 `mac-learning`, `igmpproxy`, and `mcast`. These apps can be thus updated with no impact on the dataplane of provisioned
 subscribers. The `minor` software update for the ONOS apps leverage existing ONOS REST APIs.
 
-During this process is expected that no provision subscriber call is executed from the REST APIs.
-In process calls will be executed thanks to the Atomix stored flows.
-Some metrics and/or packet processing might be lost during this procedure, the system relies on retry mechanisms
-present in the services and the dataplane protocols for converging to a stable stated (e.g. DHCP retry)
+During this process is expected that no provision subscriber call is
+executed from the REST APIs.  In process calls will be executed thanks to
+the Atomix stored flows.  Some metrics and/or packet processing might be
+lost during this procedure, the system relies on retry mechanisms present in
+the services and the dataplane protocols for converging to a stable stated
+(e.g. DHCP retry).
 
 
 After changes in the code of ONOS apps are made and verified the following steps are needed:
diff --git a/overview/release_process.rst b/overview/release_process.rst
index cfd6c22..1b687c1 100644
--- a/overview/release_process.rst
+++ b/overview/release_process.rst
@@ -104,7 +104,7 @@
    that will publish an artifact into the staging repo on `sonatype <https://oss.sonatype.org>`_.
    Once published to the staging server the artifact will need to be released to maven central.
 
-   - Login into the sonatype server (for username and password contact michelle@opennetworking.org)
+   - Login into the sonatype server (for username and password contact mroth@linuxfoundation.org)
    - search for org.opencord
    - Select the app you want to release and click "all versions"
    - Click on "Staging repositories" (in the left side navigation)
diff --git a/requirements.txt b/requirements.txt
index 56ea2f1..ec3428f 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -6,7 +6,7 @@
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at
 #
-# http:#www.apache.org/licenses/LICENSE-2.0
+# http://www.apache.org/licenses/LICENSE-2.0
 #
 # Unless required by applicable law or agreed to in writing, software
 # distributed under the License is distributed on an "AS IS" BASIS,
@@ -18,6 +18,7 @@
 # SPDX-License-Identifier: Apache-2.0
 # -----------------------------------------------------------------------
 
+
 Sphinx~=4.1.2         # 2021-07-26
 doc8~=0.9.0
 docutils==0.16
@@ -27,18 +28,14 @@
 sphinxcontrib-spelling~=7.2.1
 git+https://github.com/zdw/sphinx-multiversion@ec7c01cdaf2f9241245e84483dfb9bc0d0dffc62
 
+#
 sphinx-reload
 
 ##----------------##
 ##---]  LINT  [---##
 ##----------------##
 pre-commit
-
-## ----------------------------------------------------
-## Bogus imports
-## ----------------------------------------------------
-## Implicit unused dependency -- requires Sphinx v5.0.2
-# sphinxcontrib-applehelp==1.0.8
+yamllint
 
 # emacs .venv/lib/python3.10/site-packages/Sphinx-4.1.2.dist-info/METADATA
 
diff --git a/testing/certification.rst b/testing/certification.rst
index a32dbd5..35da407 100644
--- a/testing/certification.rst
+++ b/testing/certification.rst
@@ -5,21 +5,24 @@
 VOLTHA is part fo the `continuous certification program at ONF <https://opennetworking.org/continuous-certification-program/>`_.
 You can see the currently certified products in the `ONF marketplace <https://opennetworking.org/marketplace/?_product_project=voltha>`_.
 
-The following document describes the procedure to include and certify an OLT or an ONU with VOLTHA.
-The process of getting a product certified consists of several phases:
+The following document describes the procedure to include and certify an
+OLT or an ONU with VOLTHA.  The process of getting a product certified
+consists of several phases:
 
 - testing and validation with VOLTHA at the vendor premises
 - showcase of successful integration with VOLTHA to the TST
-- shipment and integration of the product (OLT/ONU) at a community lab (e.g. Berlin with DT)
+- shipment and integration of the product (OLT/ONU) at a community lab
+  (e.g. Berlin with DT)
 - Creation of automated CI jobs in Jenkins that start nightly automation tests.
-- Test maintenance. It's the Vendors and the VOLTHA community responsibility to maintain the created tests.
+- Test maintenance. It's the Vendors and the VOLTHA community responsibility
+  to maintain the created tests.
 
-Finally a brief Description of the device and a point of contact need to be sent to
-`Michelle Roth @ ONF <michelle@opennetworking.org>`_
-to be showcased in the `marketplace <https://opennetworking.org/marketplace/?_product_project=voltha>`_ after successful verification.
+Finally a brief Description of the device and a point of contact need to
+be sent to `Michelle Roth @ ONF <mroth@linuxfoundation.org>`_ to be
+showcased in the `marketplace <https://opennetworking.org/marketplace/?_product_project=voltha>`_ after successful verification.
 
-Once all these steps are completed the product will be certified for the next release of VOLTHA.
-Let's describe each phase in detail.
+Once all these steps are completed the product will be certified for
+the next release of VOLTHA.  Let's describe each phase in detail.
 
 Vendor's premises Testing
 -------------------------
@@ -46,14 +49,16 @@
 any one of the ONF community lab, including a wiring diagram (if needed) Currently there are two locations:
 
 - DT Office in Berlin, Germany. Address: Winterfeldtstraße 21, 10781 Berlin, Germany. Point of contact `Bjoern Nagel @ DT <NagelB@telekom.de>`_
-- Radisys Laboratory in Hillsboro, Oregon
 
-Once the OLT arrives the technicians will rack it and wire it according to the diagram shared.
-For an OLT the NNI connection will be provided to the AGG switch and all the management will also be connected with
-management IP assigned according to the network of the pod.
-For an ONU it will be connected to one of the existing OLTs in the pod, according to space,
-technology and topology requirements.
-Once all the racking and wiring is complete the device will appear under the ONF network, accessible via VPN.
+Once the OLT arrives the technicians will rack it and wire it according to
+the diagram shared.  For an OLT the NNI connection will be provided to the
+AGG switch and all the management will also be connected with management IP
+assigned according to the network of the pod.
+
+For an ONU it will be connected to one of the existing OLTs in the pod,
+according to space, technology and topology requirements.  Once all the
+racking and wiring is complete the device will appear under the ONF network,
+accessible via VPN.
 
 Automated CI Jobs
 -----------------
@@ -74,12 +79,14 @@
   and `kubernetes example <https://github.com/opencord/pod-configs/blob/master/kubernetes-configs/menlo-certification-pod-radisys-1600g.conf>`_
 - voltha-system-tests. Adds the sadis configuration for the OLT and the ONU. `Sadis Example <https://github.com/opencord/voltha-system-tests/blob/master/tests/data/menlo-certification-pod-radisys-1600g-sadis-DT.json>`_
 
-Once these are created and merged the job will appear on jenkins and run accordingly.
+Once these are created and merged the job will appear on jenkins and
+run accordingly.
 
 ONU
 +++
-A new ONU it's attached to an existing OLT, so just the information for that ONU needs to be added to the proper
-OLT files.
+
+A new ONU it's attached to an existing OLT, so just the information for
+that ONU needs to be added to the proper OLT files.
 
 The required patches are:
 
@@ -89,8 +96,9 @@
 Job maintenance
 ---------------
 
-It's the responsibility of the Vendor, the VOLTHA TST and the community at large to mantain, manage and update the job
-to make sure the OLT gets certified for each of the following VOLTHA releases.
+It's the responsibility of the Vendor, the VOLTHA TST and the community at
+large to mantain, manage and update the job to make sure the OLT gets
+certified for each of the following VOLTHA releases.
 
 
 
@@ -98,5 +106,4 @@
 ------------
 For any further information please contact:
 
-- `Timon Sloane <timon@opennetworking.org>`_
-- `Michelle Roth <michelle@opennetworking.org>`_
+- `Michelle Roth <mroth@opennetworking.org>`_
