diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
new file mode 100644
index 0000000..3accce7
--- /dev/null
+++ b/.pre-commit-config.yaml
@@ -0,0 +1,175 @@
+---
+
+# -----------------------------------------------------------------------
+# [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
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# -----------------------------------------------------------------------
+# SPDX-FileCopyrightText: 2024 Open Networking Foundation Contributors
+# SPDX-License-Identifier: Apache-2.0
+# -----------------------------------------------------------------------
+# See https://pre-commit.com for more information
+# See https://pre-commit.com/hooks.html for more hooks
+# -----------------------------------------------------------------------
+# .pre-commit-config-yaml 2024-04-19 v0.4
+# -----------------------------------------------------------------------
+
+#ci:
+#  autofix_commit_msg: "Chore: pre-commit autoupdate"
+##  skip: [sync]
+#  skip:
+#    # pre-commit.ci does not have actionlint installed
+#    - actionlint
+#
+# exclude: '^docs/conf.py'
+
+repos:
+  - repo: https://github.com/pre-commit/pre-commit-hooks
+#    rev: c4a0b883114b00d8d76b479c820ce7950211c99b  # frozen: v4.5.0
+    rev: v4.5.0
+    hooks:
+      - id: trailing-whitespace
+      - id: check-added-large-files
+      - id: check-ast
+      - id: check-json
+      - id: check-merge-conflict
+      - id: check-xml
+      - id: check-yaml
+#      - id: debug-statements
+      - id: end-of-file-fixer
+      - id: fix-encoding-pragma
+#     - id: double-quote-string-fixer
+      - id: requirements-txt-fixer
+      - id: mixed-line-ending
+        args: ['--fix=lf']
+
+  - repo: https://github.com/jorisroovers/gitlint
+    rev: acc9d9de6369b76d22cb4167029d2035e8730b98  # frozen: v0.19.1
+    hooks:
+      - id: gitlint
+
+  - repo: https://github.com/koalaman/shellcheck-precommit
+    rev: v0.10.0
+    hooks:
+      - id: shellcheck
+
+  - repo: https://github.com/adrienverge/yamllint.git
+    rev: v1.35.1
+    hooks:
+      - id: yamllint
+
+## -----------------------------------------------------------------------
+## [SOURCE] Documentation
+## -----------------------------------------------------------------------
+  - repo: https://github.com/rstcheck/rstcheck
+    rev: v6.2.1
+    hooks:
+      - id: rstcheck
+
+  - repo: https://github.com/markdownlint/markdownlint
+    rev: v0.13.0
+    hooks:
+      - id: markdownlint
+#      - id: markdownlint_docker
+
+## -----------------------------------------------------------------------
+## [SOURCE] Docker
+## -----------------------------------------------------------------------
+  - repo: https://github.com/hadolint/hadolint
+    rev: v2.12.0
+    hooks:
+      - id: hadolint
+#      - id: hadolint-docker
+
+## -----------------------------------------------------------------------
+## [SOURCE] Golang
+## -----------------------------------------------------------------------
+  - repo: https://github.com/golangci/golangci-lint
+    rev: v1.41.1
+    hooks:
+      - id: golangci-lint
+
+## -----------------------------------------------------------------------
+## [SOURCE] REUSE License Checking
+## -----------------------------------------------------------------------
+#  - repo: https://github.com/fsfe/reuse-tool
+#    rev: v3.0.2
+#    hooks:
+#      - id: reuse
+#     - id: add-license-headers
+#
+# - 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/PyCQA/doc8
+#   rev: v1.1.1
+#   hooks:
+#     - id: doc8
+
+## -----------------------------------------------------------------------
+## [SOURCE] Testing
+## -----------------------------------------------------------------------
+  - repo: https://github.com/MarketSquare/robotframework-tidy
+    rev: 4.11.0
+    hooks:
+      - id: robotidy
+
+# -------------------------------------------------------------------
+# https://docs.python.org/3/library/re.html#regular-expression-syntax
+# -------------------------------------------------------------------
+exclude: |
+    (?x)^(
+        ^makefiles/.*       |
+        ^lf/.*              |
+        ^.venv/.*           |
+        ^ignore-end-of-exclude-marker
+    )$
+
+# [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
+# https://github.com/memfault/interrupt/blob/master/example/pre-commit/.pre-commit-config.yaml
+# -----------------------------------------------------------------------
+# https://www.hatica.io/blog/pre-commit-git-hooks/
+# -----------------------------------------------------------------------
+
+# [EOF]
diff --git a/Makefile b/Makefile
index 7ed7d80..5cbd2b9 100755
--- a/Makefile
+++ b/Makefile
@@ -139,7 +139,7 @@
 ## -----------------------------------------------------------------------
 ## Intent:
 ## -----------------------------------------------------------------------
-python-build: setup.py python-protos	
+python-build: setup.py python-protos
 
 	$(call banner-enter,target $@)
 
@@ -149,12 +149,20 @@
 	$(call banner-leave,target $@)
 
 ## -----------------------------------------------------------------------
-## Intent:
+## Intent: Invoke tox to install a python interpreter then run tests.
+## -----------------------------------------------------------------------
+## See Also:
+##   o https://tox.wiki/en/latest/cli_interface.html#tox-verbosity
+##     every -v increases, every -q decreases verbosity level,
+##     default WARNING (level:2)
+##     map 0=CRITICAL|1=ERROR|2=WARNING|3=INFO|4=DEBUG|5=NOTSET
 ## -----------------------------------------------------------------------
 python-test: tox.ini setup.py python-protos
 	$(call banner-enter,target $@)
+
 	$(activate) && python --version
-	tox
+	tox -vvv
+
 	$(call banner-leave,target $@)
 
 ## -----------------------------------------------------------------------
@@ -323,4 +331,3 @@
 	$(call banner-leave,Target $@)
 
 # [EOF]
-
diff --git a/requirements.txt b/requirements.txt
index 98f43ad..5b4308d 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,5 +1,26 @@
-grpcio==1.39.0
-protobuf==3.17.3
-grpcio-tools==1.39.0
+# -----------------------------------------------------------------------
+# Copyright 2023-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
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# -----------------------------------------------------------------------
+# SPDX-FileCopyrightText: 2023-2024 Open Networking Foundation Contributors
+# SPDX-License-Identifier: Apache-2.0
+# -----------------------------------------------------------------------
+
 googleapis-common-protos==1.52.0
+grpcio==1.39.0
+grpcio-tools==1.39.0
 nose2[coverage_plugin]
+protobuf==3.17.3
+
+# [EOF]
diff --git a/setup.py b/setup.py
index 8f9f1ff..9080dbd 100755
--- a/setup.py
+++ b/setup.py
@@ -1,4 +1,6 @@
-# Copyright 2019-2024 Open Networking Foundation (ONF) and the ONF Contributors
+# -*- coding: utf-8 -*-
+# -----------------------------------------------------------------------
+# Copyright 2019-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.
@@ -11,6 +13,10 @@
 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
+# -----------------------------------------------------------------------
+# SPDX-FileCopyrightText: 2019-2024 Open Networking Foundation Contributors
+# SPDX-License-Identifier: Apache-2.0
+# -----------------------------------------------------------------------
 
 from setuptools import setup, find_packages
 
diff --git a/tox.ini b/tox.ini
index 620e896..74db4c6 100755
--- a/tox.ini
+++ b/tox.ini
@@ -39,3 +39,9 @@
 coverage-report =
   xml
   term
+
+; [SEE ALSO]
+; https://tox.wiki/en/latest/cli_interface.html
+; https://docs.nose2.io/en/latest/usage.html
+
+; [EOF]
