Fix: DO-0 track frontend assets and build freshness - #693
Draft
krzysztof-causalens wants to merge 8 commits into
Draft
krzysztof-causalens wants to merge 8 commits into
krzysztof-causalens wants to merge 8 commits into
Conversation
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
from
September 9, 2026 01:43
fea24fc to
c154de6
Compare
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
3 times, most recently
from
September 9, 2026 12:11
fecf06b to
a82dff2
Compare
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
from
September 9, 2026 12:18
a82dff2 to
0deafac
Compare
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
2 times, most recently
from
September 9, 2026 12:57
604da16 to
c225f30
Compare
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
from
September 9, 2026 13:36
c225f30 to
fd0e132
Compare
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
from
September 9, 2026 13:53
fd0e132 to
606139d
Compare
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
from
September 9, 2026 14:24
606139d to
3de6791
Compare
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
2 times, most recently
from
September 9, 2026 15:17
7dbfa1b to
1dc260a
Compare
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
from
September 9, 2026 16:05
1dc260a to
c5937dc
Compare
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
from
September 9, 2026 22:04
4649c2c to
ddaa4aa
Compare
6 tasks
6 tasks
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
from
September 9, 2026 22:16
ddaa4aa to
9c71e6a
Compare
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
from
September 9, 2026 22:30
9c71e6a to
e2b95e8
Compare
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
from
September 11, 2026 09:30
e2b95e8 to
02a3ca3
Compare
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
from
September 14, 2026 13:07
02a3ca3 to
67a1cf1
Compare
krzysztof-causalens
force-pushed
the
codex/dara-assets-freshness
branch
from
September 14, 2026 16:31
67a1cf1 to
5f6fa04
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation and Context
Fifth slice of #623, stacked on #692. Static assets must update during development, and production artifacts must be detected as stale when their inputs change, including inherited configuration and sibling workspace sources. Interrupted publication keeps recoverable builds.
Implementation Description
The dev runner routes registered static changes through project revalidation, gives configuration changes precedence and reports collisions with Vite-emitted files. Static responses use
mrmimefor MIME lookup.Build markers record workspace source inventories, effective TypeScript configuration reads, Vite configuration imports, dependency settings and patches, and declared plugin inputs. Env files are runtime configuration and never make a build stale. Python startup parses the marker and compares recorded inputs, including partial workspace checkouts, without invoking JavaScript tools. A later build validates abandoned staging and backup markers before recovering or cleaning them.
Plugins declare additional files, directories and environment names through
dara()options; undeclared reads are outside the freshness guarantee. The static assets guide documentsstatic/,add_static_folder, live updates, collisions and production deployment.Any new dependencies Introduced
mrmimefor filename-to-MIME lookup.How Has This Been Tested?
PATH; a new static file appeared live and a namespace collision blocked and then restored the frontend.PR Checklist: