You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat: sync and reference Very Good Engineering content #6
Pull the latest published FFCA standard from Very Good Engineering at session start, and have skills and the auditor read that cache instead of the bundled copy in references/ffca_architecture.md.
Why
references/ffca_architecture.md is a hand-maintained mirror of the FFCA page, and scripts/sync_reference.dart is still a stub. Every change to the standard needs a manual edit plus a plugin release, and plugins are not updated reliably on local machines. The mirror drifts as soon as the source changes. Same approach as VeryGoodOpenSource/vgv-ai-flutter-plugin#158.
How
A SessionStart hook runs a sync script before any work begins.
The script compares the locally cached VGE version against the published one.
Minor difference: download and overwrite the cache.
Major difference: keep the cached copy and wait for a plugin release, since renamed or new sections may need skills rewired. Skills cite sections by name, such as Dependency Graph Rules and Naming Conventions (Enforced).
The cache lives outside the plugin directory so it survives reinstalls.
The bundled references/ffca_architecture.md stays as the fallback when no cache exists.
Sync must fail open. A network failure, a slow response, or an offline machine cannot block the session or the hook's time budget.
Sections
FFCA architecture. Layered Architecture too, since the skills defer to it for non-FFCA repos.
Tasks
Add the sync script and wire it to SessionStart in hooks/hooks.json
Pin the VGE version this plugin was built against
Hold on a major difference, sync on a minor one
Fail open on any network or parse error
Point skills and ffca-layer-auditor at the cache, falling back to the bundled reference
Replace or remove the scripts/sync_reference.dart stub
Check whether validate_layers.dart rules need to follow the synced standard
Blocked
Waiting on Very Good Engineering to publish FFCA and to ship versioned, downloadable bundles. Nothing here is implementable until that lands.
This issue predates #4 and describes the repo as it was before it. Suggest updating it to match the current layout before anyone picks it up:
references/ffca_architecture.md no longer exists. The reference is now references/ffca/, a byte mirror of the VGV Engineering FFCA section with one file per page and a README.md manifest.
scripts/sync_reference.dart is no longer a stub. It regenerates references/ffca/ from VGV Engineering, and --check reports drift.
A weekly reference_drift workflow already fails when the mirror is stale.
The section names cited under How (Dependency Graph Rules, Naming Conventions (Enforced)) have changed. Skills now cite the mirrored headings, for example Dependency rules and Naming conventions in project_structure.md.
What remains open is the runtime part: a SessionStart hook that refreshes a cache outside the plugin directory, holds on a major version difference, and fails open. The tasks could be rewritten around sync_reference.dart as the sync step, with references/ffca/ as the bundled fallback.
Activity
Statyk7 commentedon Oct 15, 2026
This issue predates #4 and describes the repo as it was before it. Suggest updating it to match the current layout before anyone picks it up:
references/ffca_architecture.mdno longer exists. The reference is nowreferences/ffca/, a byte mirror of the VGV Engineering FFCA section with one file per page and aREADME.mdmanifest.scripts/sync_reference.dartis no longer a stub. It regeneratesreferences/ffca/from VGV Engineering, and--checkreports drift.reference_driftworkflow already fails when the mirror is stale.project_structure.md.What remains open is the runtime part: a
SessionStarthook that refreshes a cache outside the plugin directory, holds on a major version difference, and fails open. The tasks could be rewritten aroundsync_reference.dartas the sync step, withreferences/ffca/as the bundled fallback.