diff --git a/Makefile b/Makefile
index 5a307f7..54463fc 100644
--- a/Makefile
+++ b/Makefile
@@ -21,11 +21,7 @@
 ##-------------------##
 ##---]  GLOBALS  [---##
 ##-------------------##
-TOP ?=$(strip \
-  $(dir \
-    $(abspath $(lastword $(MAKEFILE_LIST)))\
-   )\
-)
+TOP ?=$(strip $(dir $(abspath $(lastword $(MAKEFILE_LIST))) ) )
 
 ##--------------------##
 ##---]  INCLUDES  [---##
@@ -70,6 +66,10 @@
 ## -----------------------------------------------------------------------
 test: lint linkcheck
 
+# [TODO] relocate into repo:onf-make/
+lint      : $(venv-activate-patched)
+linkcheck : $(venv-activate-patched)
+
 ## -----------------------------------------------------------------------
 ## Intent: Exercise all generation targets
 ## Bridge: library workaround to support legacy targets
diff --git a/makefiles/patches/README.md b/makefiles/patches/README.md
index 995a23d..ffdc30f 100644
--- a/makefiles/patches/README.md
+++ b/makefiles/patches/README.md
@@ -2,13 +2,20 @@
 
 1) Checkout voltha-docs
 2) cd voltha-docs
-3) make venv
+3) Create a virtual environment:
+   - make venv (default python version)
+   - make venv-activate-patched (for python v3.10+)
 4) make patch-init
 5) modify the file to be patched beneath staging/${relative_path_to_patch}
 6) make patch-create PATCH_PATH=${relative_path_to_patch}
     o This will create patches/${relative_path_to_patch}/patch
+    o make patch-create PATCH_PATH=lib/python3.10/site-packages/sphinx/util/typing.py
+      lib/python3.10/site-packages/sphinx/util/typing/patch
 7) Verify
     o make sterile
     o make venv
+8) Validate
+    o make lint
+    o make test
 
-# [EOF]
\ No newline at end of file
+# [EOF]
diff --git a/patches/lib/python3.10/site-packages/sphinx/util/typing.py/patch b/patches/lib/python3.10/site-packages/sphinx/util/typing.py/patch
index d049e3b..da24cd5 100644
--- a/patches/lib/python3.10/site-packages/sphinx/util/typing.py/patch
+++ b/patches/lib/python3.10/site-packages/sphinx/util/typing.py/patch
@@ -1,18 +1,17 @@
---- staging/lib/python3.10/site-packages/sphinx/util/typing.py	2022-11-28 06:22:14.637278053 -0500
-+++ venv_docs/lib/python3.10/site-packages/sphinx/util/typing.py	2022-11-28 06:34:36.246702890 -0500
-@@ -34,15 +34,7 @@
+--- staging/lib/python3.10/site-packages/sphinx/util/typing.py	2023-09-14 16:25:24.179214865 -0400
++++ .venv/lib/python3.10/site-packages/sphinx/util/typing.py	2023-09-14 16:22:16.545588690 -0400
+@@ -34,14 +34,7 @@
              return ref._eval_type(globalns, localns)
  
  if sys.version_info > (3, 10):
 -
--    try: # ver >= 3.10.6
--        from types import UnionType as types_Union
+-    try: # ver >= 3.10.12
+-        from typing import Union as types_Union
 -    except ImportError:
--        try: # ver < 3.10.6
+-        try: # ver >= 3.10.6
 -            from types import Union as types_Union
 -        except ImportError:
 -            types_Union = None
--
 +    from types import Union as types_Union
  else:
      types_Union = None
