Merged
Conversation
don't group campaigns by production in campaigns page show config dicts in collapsible panels to save space display config dicts in tables for readability campaign last updated is the newest of creation and modification dates. display it in campaign card change how step name is retrieved and displayed in the step card tidy campaign card layout first attempt at adding a new entry to collections using htmx, just adding the new form inputs, not there yet make saving new entries work better allow adding new collections, editing the values of existing ones not the keys some tweaks and ui improvements to edit collections dialog allow adding new entries in edit data dialog allow adding new entries in edit child config dialog check for collection prefix based on element type change how WMS task progress is calculated add missing import add token link lint and mypy remove unused template
- upgrade dependencies
- use py3.12 generic type for AnyAsynSession - apply consistent type to uses of AsyncSession - refactor typevar and typealias
- Refactor typealiases in router wrapper module - Remove "list" from spec_alias fields - Refactor typing in test modules - Update types in router tests - remove default values for TypeAliases
- removes "prod_area" from scope of campaign configuration, set via application config instead. - fixes #187
…me regex. [skip ci]
- pin testcontainers to last good release
feat(db): Extend v2 model fields with pydantic aliases
bugfix(manifests): correct manifest name determination chore(tests): Implement tests for manifest routes feat(api): Extend and update v2 manifest routes
- add state machine db model - rearrange shared types and serde helpers - support arbitrary table schema in new db models and tests - Refactor validation function for enum fields - Add FK relations to model fields
feat(api): Refactor campaign and node routes
feat(api): Refactor node and edge models
- add crtime to element metadata - add manifests route for campaigns
- move campaign test fixture to module conftest - scope campaign test fixture to function - add auto fixture for patched config
- Implement Campaign/Node FSM using pytransitions - Establish daemon v2 iteration loop - Establish E2E FSM and Daemon tests - machines get their own sessions - add config flags for daemon v2 campaign/node processing
- validate graph and affect status update in background task - update fastapi session override in tests - add activity log route for campaigns - implement campaign status updates via PATCH and FSM
- chore: refactor test fixtures - fix: improve session hygiene in tests - chore: denormalize timestamp columns for activitylog - fix: FSM finalize based on activitylog finished_at instead of detail - fix: handle full lifecycle of session in session factory - feat(daemon): refactor task callbacks as modular callables - fix(daemon): set submitted_at and finished_at for tasks instead of deleting - fix(graph): use session.get() instead of select() - fix: allow null node in activty log
- rename "session manager" class as "database manager" - replace "get_async_session" function with calls to sessionmaker().
- use "uuid" instead of "id" in graph node simple mode - require namespace when GET node by name - include additional links in campaign response header - campaign post returns existing campaign on duplicate - improve consistency in route parameter naming - delegate more route typing to pydantic models - use sorting in activity log route
04d6d7a to
451c5e5
Compare
DM-51979 Web-UI: Allow adding new items to collections, data and child config
ctslater
approved these changes
Aug 7, 2025
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.
Includes fixes for #186, #187, #194, #195
Includes already-reviewed PRs for
DM-51364
DM-51396
DM-51397
DM-51488
DM-51505
DM-51738
DM-51979