3 Commits

Author SHA1 Message Date
gsinghpal
a66cdefc01 Split 49 modules/suites into independent git repos; untrack from monorepo
Some checks failed
fusion_accounting CI / test (fusion_accounting_ai) (push) Has been cancelled
fusion_accounting CI / test (fusion_accounting_core) (push) Has been cancelled
fusion_accounting CI / test (fusion_accounting_migration) (push) Has been cancelled
Each top-level module/suite folder is now its own private repo on GitHub
(gsinghpal/<name>) and gitea (admin/<name>), with a fresh single initial
commit. The monorepo no longer tracks them (added to .gitignore + git rm
--cached); working-tree files are retained on disk and managed in their
own repos. The monorepo keeps shared root files (CLAUDE.md, docs/, scripts/,
tools/, AGENTS.md, WIP/obsolete dirs) and full history.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-07 01:54:34 -04:00
gsinghpal
8c76a16366 chore(plating): de-dash shipped code + intake-neutral customer emails
Replace em-dashes and en-dashes with hyphens across 789 shipped source
files (py/xml/js/scss) so the delivered module reads as human-written;
em-dashes had become a recognizable AI-generated tell. Internal .md dev
notes are excluded. The WO-sticker mojibake strippers keep their dash
search targets (now written — / –). No logic changes: comments
and display strings only; validated with py_compile + lxml parse.

Rewrite the 7 customer notification emails to be intake-neutral
(ship-in / drop-off / pickup) and repair-aware, and fix the Shipped
email documents line (packing slip vs bill of lading; certificate only
when issued). Subjects use a hyphen separator.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 00:16:19 -04:00
gsinghpal
5130e51941 feat(jobs): demo data — work centres + part coatings
Two follow-up seed scripts after the main demo reset:

1. seed_work_centres.py: creates one fp.work.centre per existing
   fusion.plating.work.center (matched by code), classifying kind
   from name/code keywords. Then backfills work_centre_id on every
   fp.job.step whose recipe_node has a legacy work_center_id with
   a matching native code. Plant Overview kanban now has columns
   instead of one big 'Unassigned' bucket.

2. seed_part_coatings.py: assigns existing fp.coating.config rows
   (with recipes) to up to 20 bare fp.part.catalog rows
   round-robin. Field on the part is x_fc_default_coating_config_id.
   Future SO confirms via these parts will naturally generate full
   recipe-linked steps via _generate_steps_from_recipe.

Both idempotent — re-running creates nothing new.

Run on entech: 9 native work centres created, all 234 existing
fp.job.step rows bound. Parts with coating: 2 -> 22 (28 -> 8 bare).

Part of: native job model migration (spec 2026-04-25)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 05:53:52 -04:00