Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AIP-38 | Migrate to new UI #43712

Open
bbovenzi opened this issue Nov 5, 2024 · 5 comments
Open

AIP-38 | Migrate to new UI #43712

bbovenzi opened this issue Nov 5, 2024 · 5 comments
Labels
AIP-38 Modern Web Application area:UI Related to UI/UX. For Frontend Developers. kind:meta High-level information important to the community

Comments

@bbovenzi
Copy link
Contributor

bbovenzi commented Nov 5, 2024

Meta epic to track all legacy UI pages we need to migrate over to the new UI

See here for designs: #42371

Feature complete with Legacy UI

General

  • Dags List
    • Dag Card to show last and next runs and a chart of recent runs
    • Pause/unpause Dag
    • Trigger dag run AIP-38 | Connect Trigger form to rest API #44857
    • Filter dags by last dag run state, paused, and tags
    • Sort dag list by display name, latest run, next run,
    • Search for a dag by dag_id or dag_display_name
    • Dag import errors
  • Dag Details
  • Dag Visualizations
    • Graph
      • Show the nodes and edges of a graph
      • Filter by upstream/downstream of a task id
      • Toggle Dag Dependencies (sensors, triggers, data assets with conditions)
      • Show a specific dag run in the graph with each node filled with task instance or asset event info
      • Click on a task to select it as a task or task instance
    • Grid
      • Filter by run type, or state
      • Explore use of icons for each state to be more accessible. And how to balance that with run_type, try_number and has a note functionality
    • Gantt chart
    • Dropdown selector on each viz to change between dag runs
    • Side drawer on the full page modal to show a condensed Task Instance details view with all TI actions
    • Calendar view (do we keep it?)
  • Auto refresh AIP-38 | Add auto-refreshing to new UI #46129
  • Task Details
    • List task instances
    • Task instance duration chart
    • Audit Log events filtered by TaskId
  • Dag Run Details
    • List task instances
    • Manually mark dag run as failed or success
    • Clear a dag run
    • Audit Log events filtered by dag run id
  • Task Instance Details
  • Dag Runs list
    • List runs across all dags
    • Search, filter and sort
    • Clear and mark state
  • Task Instances list
    • List task instances across all dags
    • Search, filter and sort
    • Clear and mark state
  • Dashboard (formerly known as Cluster Activity)
  • Assets (formerly known as Datasets)
    • List assets
    • List all asset events
    • Asset Details
      • Show dependency graph of assets
      • List events
  • User Profile
    • Toggle dark/light mode
    • Change default timezone
  • Docs
    • Link to API, docs, and github
  • Admin
    • List Plugins
    • Connections
    • Show config
    • List Providers
    • Variables
    • Pools
      • List all pools
      • Edit Pool
      • Delete Pool
      • Create Pool
    • Browse
    • Events
      • List all Audit Log Events
      • Sort list
      • Filter list
      • Search list
    • XComs
      • List all xcoms
  • Plugins
    • Show legacy plugins in an iFrame
  • Authentication & Permissions
    • Show user management and security in a plugin or natively
    • Show or hide UI elements based on user permissions
  • UI Customizations
  • #46874

New Features

  • General
  • Dashboard
    • Scope out other helpful summaries
  • Dags List
    • Advanced search
  • Dag Details
    • Overview
      • Quick stats on recent failed runs and task instances
      • Total dag run summary chart
      • Dag run success rate chart
      • Add graph minimap quick link
      • Links to most recent failed task logs
      • Figure out if we can do failed task log previews
      • Scope out other helpful summaries
    • List all tasks
      • Nest list rows based on task groups that expand and collapse like the grid view
    • Task Details
      • Quick stats on failed and retried task instances
      • Total task instance summary chart
      • TI success rate chart
      • Scope out other helpful summaries
  • Assets
    • Show summaries of asset events with their upstream/downstreams
    • Dependency graph
      • Select an asset event and see all other related events on the graph
    • Auto refresh Asset pages
    • Show Asset Queue
  • Backfills
  • Versioning
    • Show version on dag/dagrun/task/task instance
    • When viewing an older dag run, fetch the dag code for that version
    • Fetch the dag structure for an older version or give an alert that the structure has changed
  • Plugins
    • React-based to replace menu items
    • React-based for specific sub views (inside dashboard, dag overview, etc)
    • Dev Tools to aid plugin development
      • Give an iframe template
      • CLI to generate boilerplate plugin
@bbovenzi bbovenzi converted this from a draft issue Nov 5, 2024
@bbovenzi bbovenzi added kind:meta High-level information important to the community AIP-38 Modern Web Application labels Nov 5, 2024
@dosubot dosubot bot added the area:UI Related to UI/UX. For Frontend Developers. label Nov 5, 2024
@bbovenzi bbovenzi changed the title AIP-38 | Migrate legacy UI views to new UI AIP-38 | Migrate to new UI Nov 5, 2024
@hterik
Copy link
Contributor

hterik commented Nov 25, 2024

Filter by tags #43715

This appears to link to something else.

@bbovenzi
Copy link
Contributor Author

Filter by tags #43715

This appears to link to something else.

Good catch. Fixed.

@pierrejeambrun
Copy link
Member

I feel like we have everything from the backend perspective. (or planned such as asset dependencies).

The only points I'm not so sure are:

  • Include task group information (I'm not sure we have this)
  • Show dag import errors on dag list level (I am not sure how we want to display them, as in the legacy we can put them at the top of the dag list, but I don't think we can group them by dag_id there's not really a relation there in the db model)

@bbovenzi
Copy link
Contributor Author

I feel like we have everything from the backend perspective. (or planned such as asset dependencies).

The only points I'm not so sure are:

  • Include task group information (I'm not sure we have this)
  • Show dag import errors on dag list level (I am not sure how we want to display them, as in the legacy we can put them at the top of the dag list, but I don't think we can group them by dag_id there's not really a relation there in the db model)
  • I think almost all Task Group information is handled by grid_data and structure endpoints
  • We literally just need to copy the component from the home page and also show it at the top of the page on the dags list

@pierrejeambrun
Copy link
Member

I'll work on the mark as.... (failed/success) etc. For dagruns and tasks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
AIP-38 Modern Web Application area:UI Related to UI/UX. For Frontend Developers. kind:meta High-level information important to the community
Projects
Development

No branches or pull requests

3 participants