This can be caused by a circular reference between two or more different files in a pack's 'Recipes' folder.
In non-technical terms, you've most likely switched around two recipes with regards to their respective file names/recipe identifiers. (This is very easy to do when copying & pasting from a template!) Double-check that the identifier within each recipe .json file is correct and unique.
For example, the following configuration:
> BP/Recipes
carved_luminous_quartz.json
chiseled_luminous_quartz.json
- Inside 'carved_luminous_quartz.json':
{
"format_version": "1.20.50",
"minecraft:recipe_shaped": {
"description": {
"identifier": "packname:chiseled_luminous_quartz"
},
"tags": [ "crafting_table" ],
...etc.
- Inside 'chiseled_luminous_quartz.json':
{
"format_version": "1.20.50",
"minecraft:recipe_shaped": {
"description": {
"identifier": "packname:carved_luminous_quartz"
},
"tags": [ "crafting_table" ],
...etc.
will consistently cause the error described in your question.
Correcting the mixed-up names/identifiers:
> BP/Recipes
carved_luminous_quartz.json
chiseled_luminous_quartz.json
- Inside 'carved_luminous_quartz.json':
{
"format_version": "1.20.50",
"minecraft:recipe_shaped": {
"description": {
"identifier": "packname:carved_luminous_quartz"
},
"tags": [ "crafting_table" ],
...etc.
- Inside 'chiseled_luminous_quartz.json':
{
"format_version": "1.20.50",
"minecraft:recipe_shaped": {
"description": {
"identifier": "packname:chiseled_luminous_quartz"
},
"tags": [ "crafting_table" ],
...etc.
fixes the problem, and the crafting table will work normally again.