Carry module description through config export/apply

config_io handled dest_description but never the module's own
description field: it was absent from export_config, from both
repo.create_module and repo.update_module calls in apply_config, and
from the change-detection watch tuple. Descriptions set via the web
form were therefore invisible to the config tree — `pipekit apply`
silently ignored a description in a module's JSON, and `pipekit export`
would have dropped all 127 existing ones on a round-trip.

Adding "description" to the watch tuple means a module file without the
key now reads as a change to NULL, so backfill the key into all 131
existing module files from the DB. Without this, the next apply would
have wiped every description it was meant to preserve.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Paul Trowbridge 2026-09-04 00:05:57 -04:00
parent 4108342dee
commit 217177b3a7
132 changed files with 136 additions and 2 deletions

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": null,
"description": "Custom sales-line detail from Dynamics GP",
"columns": [
{
"source_name": "Doctype",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Address Master 6.0",
"description": "Address Master",
"columns": [
{
"source_name": "QZADR",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "A/R Master Codes File - Sales Codes 6.0",
"description": "Sales GL Account Configuration",
"columns": [
{
"source_name": "ZWCODE",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Note pad file - 50 char key 5.3",
"description": "Notes on receivables",
"columns": [
{
"source_name": "AUKEY",

View File

@ -8,6 +8,7 @@
"merge_key": "ascom#, ascust, asinv#",
"enabled": 1,
"dest_description": "A/R Open Receivables 6.1",
"description": "Accounts-receivable history (paid/closed items)",
"columns": [
{
"source_name": "ASCOMP",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "A/R Open Receivables 6.1",
"description": "Open accounts-receivable items",
"columns": [
{
"source_name": "ASCOMP",

View File

@ -8,6 +8,7 @@
"merge_key": "lotnx",
"enabled": 1,
"dest_description": "A/R Payment Transactions 6.0",
"description": "Accounts-receivable payment transactions",
"columns": [
{
"source_name": "LOCOMP",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Bin Balances 6.0",
"description": "Inventory bin balances",
"columns": [
{
"source_name": "LQSTKL",

View File

@ -8,6 +8,7 @@
"merge_key": "fgbol#",
"enabled": 1,
"dest_description": "Bill of Lading Detail 6.1",
"description": "Bill-of-lading detail lines",
"columns": [
{
"source_name": "FGBOL#",

View File

@ -8,6 +8,7 @@
"merge_key": "febol#",
"enabled": 1,
"dest_description": "Bill of Lading Header 6.1",
"description": "Bill-of-lading headers",
"columns": [
{
"source_name": "FEBOL#",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Current Job Routing Details 6.1",
"description": "Current Work Order Routings",
"columns": [
{
"source_name": "EDTYPE",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Current Job Header (Work orders) 6.1",
"description": "Current Work Order Header",
"columns": [
{
"source_name": "DNJOB",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": null,
"description": "Chart-of-accounts mapping",
"columns": [
{
"source_name": "Entity",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "System Codes Master 6.1",
"description": "Code/lookup reference values",
"columns": [
{
"source_name": "A2",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "color descriptions",
"description": "Color Codes",
"columns": [
{
"source_name": "COLCODE",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Used in UPDblendr",
"description": "Colorant Resin Codes",
"columns": [
{
"source_name": "CLPLNT",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Color Tier",
"description": "Color Tiers",
"columns": [
{
"source_name": "CLTIER",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Currency Exchange Master 6.0",
"description": "Currency Translation",
"columns": [
{
"source_name": "B86COMN",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Customer Master File 6.0",
"description": "Customer master",
"columns": [
{
"source_name": "BVCOMP",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Department Master File 6.1",
"description": "Production Departments and Burden Rates",
"columns": [
{
"source_name": "AADEPT",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Discount codes file 6.0",
"description": "Discount schedule",
"columns": [
{
"source_name": "FADISC",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Master Data - currency translation rates",
"description": "Customer credit/return records",
"columns": [
{
"source_name": "FCUR",

View File

@ -8,6 +8,7 @@
"merge_key": "btid",
"enabled": 1,
"dest_description": "",
"description": "Rebuild of Production Posting GL",
"columns": [
{
"source_name": "SRCE",

View File

@ -8,6 +8,7 @@
"merge_key": "perd",
"enabled": 1,
"dest_description": "FFSBGLR1",
"description": "GL subledger detail - offline combination of subledgers",
"columns": [
{
"source_name": "MODULE",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Financial Statement account groups 6.0",
"description": "Reference/group codes",
"columns": [
{
"source_name": "BQ1COMP",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Resource equipment Master-Future costs 6.1",
"description": "Future Resource Master",
"columns": [
{
"source_name": "R9DEPT",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Future Inventory Cost - manufactured 6.0",
"description": "Future Cost - Manufactured",
"columns": [
{
"source_name": "CNPART",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Future Inventory Cost - Purchased Parts 6.0",
"description": "Future Cost - Purchased",
"columns": [
{
"source_name": "COPART",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Future Cost Master - Transferred Parts 6.0",
"description": "Future Cost - Transfered",
"columns": [
{
"source_name": "Y3PART",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "G/L Category Code 5.3",
"description": "Reference codes",
"columns": [
{
"source_name": "D35GCDE",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": null,
"description": "Dynamics GP GL account master",
"columns": [
{
"source_name": "ACTINDX",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Dynamics GP account index master",
"description": "Dynamics GP account index master",
"columns": [
{
"source_name": "ACTINDX",

View File

@ -8,6 +8,7 @@
"merge_key": "dex_row_id",
"enabled": 1,
"dest_description": null,
"description": "Dynamics GP analytical accounting balances",
"columns": [
{
"source_name": "ACTINDX",

View File

@ -8,6 +8,7 @@
"merge_key": "dex_row_id",
"enabled": 1,
"dest_description": null,
"description": "Dynamics GP analytical accounting detail",
"columns": [
{
"source_name": "ACTINDX",

View File

@ -8,6 +8,7 @@
"merge_key": "dex_row_id",
"enabled": 1,
"dest_description": null,
"description": "Dynamics GP open-year GL transactions",
"columns": [
{
"source_name": "OPENYEAR",

View File

@ -8,6 +8,7 @@
"merge_key": "dex_row_id",
"enabled": 1,
"dest_description": null,
"description": "Dynamics GP historical-year GL transactions",
"columns": [
{
"source_name": "HSTYEAR",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "G/L Consolidation Subsidiary Companies 6.0",
"description": "Company Hierarchy",
"columns": [
{
"source_name": "DW6COMN",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "G/L Consolidation Parent Companies 6.0",
"description": "Consolidation Companies",
"columns": [
{
"source_name": "DW5COMN",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "G/L Period End Dates 6.0",
"description": "GL date / fiscal calendar",
"columns": [
{
"source_name": "KPCOMP",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "G/L Period Dates Reference File 6.0",
"description": "GL date reference / fiscal-period map",
"columns": [
{
"source_name": "N1COMP",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "G/L Inventory Expense Accounts 6.1",
"description": "Inventory GL Account Code Configuration",
"columns": [
{
"source_name": "Y1PLNT",

View File

@ -8,6 +8,7 @@
"merge_key": "aj4ccyy",
"enabled": 1,
"dest_description": "G/L Chart of Accounts totals for year 6.0",
"description": "GL master/summary balances; reconciles to GL transaction detail by account/period/year",
"columns": [
{
"source_name": "AJ4COMP",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "G/L Transactions 6.1",
"description": "GL transaction detail",
"columns": [
{
"source_name": "DKACC#",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Inventory Costs - Manufactured parts 6.1",
"description": "Current Standard Cost - Manufactured",
"columns": [
{
"source_name": "CGPART",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Inventory Cost Master - Purchased Parts 6.1",
"description": "Current Standard Cost - Purchased",
"columns": [
{
"source_name": "CHPART",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Inventory Cost Master-Transferred Parts6.1",
"description": "Current Standard Cost - Transfered",
"columns": [
{
"source_name": "Y0PART",

View File

@ -8,6 +8,7 @@
"merge_key": "jhdate",
"enabled": 1,
"dest_description": "Inventory Cost Transaction Log 6.0",
"description": "Cost History",
"columns": [
{
"source_name": "JHPART",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Pricing - Price List Code Description 6.1",
"description": "Price List Codes",
"columns": [
{
"source_name": "JAPLCD",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Pricing - PriceLlist Assignment",
"description": "Customer Price List Association",
"columns": [
{
"source_name": "JBTYPE",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "HC Modified Price List Assignment",
"description": "Customer Price Level Association",
"columns": [
{
"source_name": "JBPLVL",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Price list file 6.0",
"description": "Price List Prices",
"columns": [
{
"source_name": "JCPLCD",

View File

@ -8,6 +8,7 @@
"merge_key": "tadate",
"enabled": 1,
"dest_description": "Price List Trans Log Headers 6.0",
"description": "Price List Change Log",
"columns": [
{
"source_name": "TAPLCD",

View File

@ -8,6 +8,7 @@
"merge_key": "t8date",
"enabled": 1,
"dest_description": "Price List Trans New Price Detail 6.0",
"description": "Price List Change Log - New Prices",
"columns": [
{
"source_name": "T8PLCD",

View File

@ -8,6 +8,7 @@
"merge_key": "t7date",
"enabled": 1,
"dest_description": "Price List Old Price Details 6.0",
"description": "Price List Change Log - Old Prices",
"columns": [
{
"source_name": "T7PLCD",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Inactive Reason Master File",
"description": "Inactive Reason Code Master",
"columns": [
{
"source_name": "WETYPE",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "ITEMM",
"description": "Item master; compiled on the AS/400 from UQF, so uqf must sync first",
"columns": [
{
"source_name": "ITEM",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "GP customer/salesperson/item master (broadened, migrated from /opt/sync 2026-07-21)",
"description": "Dynamics GP item master",
"columns": [
{
"source_name": "ITEMNMBR",

View File

@ -8,6 +8,7 @@
"merge_key": "dex_row_id",
"enabled": 1,
"dest_description": null,
"description": "Dynamics GP item quantity/inventory master",
"columns": [
{
"source_name": "ITEMNMBR",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": null,
"description": "Live price quotes",
"columns": [
{
"source_name": "qid",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Machine Group File",
"description": "Machine Group Master",
"columns": [
{
"source_name": "ADMACG",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Major Group Codes 6.0",
"description": "Major Group",
"columns": [
{
"source_name": "BQGRP",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Marketing Product Specs File",
"description": "Markup/pricing table",
"columns": [
{
"source_name": "M1PROD",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "G/L Chart of Accounts header 6.1",
"description": "Item/material master",
"columns": [
{
"source_name": "AZCOMP",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Dynamics GP multicurrency account setup",
"description": "Dynamics GP multicurrency account setup",
"columns": [
{
"source_name": "ACTINDX",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Method Detail - Material (M-Record) 6.0",
"description": "Bill of Materials",
"columns": [
{
"source_name": "AQTYPE",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Method Detail-Outside Service (O-Record)6.0",
"description": "Outsource Routings",
"columns": [
{
"source_name": "APTYPE",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Method Detail - Routings (R-Record) 6.1",
"description": "Machine Routings",
"columns": [
{
"source_name": "AOTYPE",

View File

@ -8,6 +8,7 @@
"merge_key": "anpart, anplnt",
"enabled": 1,
"dest_description": "Method Header File 6.0",
"description": "Method Header",
"columns": [
{
"source_name": "ANPART",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Marketing Part Group",
"description": "Market/pricing groups",
"columns": [
{
"source_name": "MAPGROUP",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Minor Group Codes 6.0",
"description": "Minor Group Codes",
"columns": [
{
"source_name": "BRMGRP",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Sales Codes Master 6.0",
"description": "Major and Minor Sales Group Codes",
"columns": [
{
"source_name": "BSMJCD",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Mold Master File",
"description": "Mold master",
"columns": [
{
"source_name": "MMMOLD",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "G/L Master Codes File 6.0",
"description": "Name/address records",
"columns": [
{
"source_name": "A7",

View File

@ -8,6 +8,7 @@
"merge_key": "dcord#",
"enabled": 1,
"dest_description": "Customer Order Header 6.1",
"description": "Customer order/quote headers",
"columns": [
{
"source_name": "DCORD#",

View File

@ -8,6 +8,7 @@
"merge_key": "ddord#",
"enabled": 1,
"dest_description": "Customer Order Item 6.1",
"description": "Order detail-item lines",
"columns": [
{
"source_name": "DDORD#",

View File

@ -8,6 +8,7 @@
"merge_key": "fford#",
"enabled": 1,
"dest_description": "Order Discounts/Charges 6.0",
"description": "Order Discounts/Charges",
"columns": [
{
"source_name": "FFORD#",

View File

@ -8,6 +8,7 @@
"merge_key": "diinv#",
"enabled": 1,
"dest_description": "Invoice detail file 6.1",
"description": "Invoice detail lines",
"columns": [
{
"source_name": "DIINV#",

View File

@ -8,6 +8,7 @@
"merge_key": "dhinv#",
"enabled": 1,
"dest_description": "Invoice Header File 6.1",
"description": "Invoice headers",
"columns": [
{
"source_name": "DHINV#",

View File

@ -8,6 +8,7 @@
"merge_key": "flinv#",
"enabled": 1,
"dest_description": "Invoice detail discount/charge 6.0",
"description": "Invoice detail discount/charge",
"columns": [
{
"source_name": "FLINV#",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Method Operation Codes 6.1",
"description": "Operation Code Master",
"columns": [
{
"source_name": "AECODE",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": null,
"description": "Annual operating plan snapshot (2027)",
"columns": [
{
"source_name": "origin_system",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": null,
"description": "OSM forecast",
"columns": [
{
"source_name": "origin_system",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Plant Master File 6.1",
"description": "Plant Code Master",
"columns": [
{
"source_name": "YAPLNT",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Dynamics GP payables vendor master",
"description": "Dynamics GP payables vendor master",
"columns": [
{
"source_name": "VENDORID",

View File

@ -8,6 +8,7 @@
"merge_key": "kapo#",
"enabled": 1,
"dest_description": "Purchase Order Header 6.1",
"description": "Purchase Order Header Rows",
"columns": [
{
"source_name": "KAPO#",

View File

@ -8,6 +8,7 @@
"merge_key": "dq0po#",
"enabled": 1,
"dest_description": "POs purged from LGDAT.POH (POHL delete log) -- drives purge cleanup of cms.poh / cms.poi",
"description": null,
"columns": [
{
"id": "c1",

View File

@ -8,6 +8,7 @@
"merge_key": "kbpo#",
"enabled": 1,
"dest_description": "Purchase Order Items 6.0",
"description": "Purchase order line items",
"columns": [
{
"source_name": "KBPO#",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Project Master 6.1",
"description": "Project Master",
"columns": [
{
"source_name": "JOPRJ#",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Part/Unit Conversion File 6.0",
"description": "Unit of Measure Conversion",
"columns": [
{
"source_name": "IHPART",

View File

@ -8,6 +8,7 @@
"merge_key": "dcord#",
"enabled": 1,
"dest_description": "Customer Order Header 6.1",
"description": "Quote Header",
"columns": [
{
"source_name": "DCORD#",

View File

@ -8,6 +8,7 @@
"merge_key": "ddord#",
"enabled": 1,
"dest_description": "Customer Order Item 6.1",
"description": "Quote Line Items",
"columns": [
{
"source_name": "DDORD#",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Order Discounts/Charges 6.0",
"description": "Quote lines discount detail",
"columns": [
{
"source_name": "FFORD#",

View File

@ -8,6 +8,7 @@
"merge_key": "ggord",
"enabled": 1,
"dest_description": "Note pad file 6.1",
"description": "Quote Line Notes",
"columns": [
{
"source_name": "GGKEY",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Resource Master File (Equipment) 6.1",
"description": "Resource Master",
"columns": [
{
"source_name": "ABTYPE",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "GP customer/salesperson/item master (broadened, migrated from /opt/sync 2026-07-21)",
"description": "Dynamics GP receivables customer master",
"columns": [
{
"source_name": "CUSTNMBR",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "GP customer/salesperson/item master (broadened, migrated from /opt/sync 2026-07-21)",
"description": "Dynamics GP receivables setup",
"columns": [
{
"source_name": "SLPRSNID",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": null,
"description": "Dynamics GP open receivables transactions",
"columns": [
{
"source_name": "CUSTNMBR",

View File

@ -8,6 +8,7 @@
"merge_key": null,
"enabled": 1,
"dest_description": "Dynamics GP open receivables apply detail",
"description": "Dynamics GP open receivables apply detail",
"columns": [
{
"source_name": "CUSTNMBR",

View File

@ -8,6 +8,7 @@
"merge_key": "docnumbr, rmdtypal",
"enabled": 1,
"dest_description": null,
"description": "Dynamics GP receivables history",
"columns": [
{
"source_name": "CUSTNMBR",

View File

@ -8,6 +8,7 @@
"merge_key": "aptodcty, aptodcnm",
"enabled": 1,
"dest_description": "Dynamics GP receivables apply history",
"description": "Dynamics GP receivables apply history",
"columns": [
{
"source_name": "CUSTNMBR",

Some files were not shown because too many files have changed in this diff Show More