HomePhabricator

Introduce "bridged" objects

Description

Introduce "bridged" objects

Summary:
Ref T10537. These are objects which are bound to some external object, like a Maniphest task which is a representation of a GitHub issue.

This doesn't do much yet and may change, but my thinking is:

  • I'm putting these on-object instead of on edges because I think we want to actively change the UI for them (e.g., clearly call out that the object is bridged) but don't want every page to need to do extra queries in the common case where zero bridged objects exist anywhere in the system.
  • I'm making these one-to-one, more or less: an issue can't be bridged to a bunch of tasks, nor can a bunch of tasks be bridged to a single issue. Pretty sure this makes sense? I can't come up with any reasonable, realistic cases where you want a single GitHub issue to publish to multiple different tasks in Maniphest.
  • Technically, one type of each bridgable object could be bridged, but I expect this to never actually occur. Hopefully.

Test Plan: Ran storage upgrade, loaded some pages.

Reviewers: chad

Reviewed By: chad

Subscribers: Luke081515.2

Maniphest Tasks: T10537

Differential Revision: https://secure.phabricator.com/D15502

Details

Provenance
epriestleyAuthored on Mar 9 2016, 4:40 PM
epriestleyPushed on Mar 22 2016, 10:06 PM
Reviewer
chad
Differential Revision
D15502: Introduce "bridged" objects
Parents
rP44c3f06ab96d: Fix Phortune cart fatal
Branches
Unknown
Tags
Unknown
Tasks
T10537: Nuance Infrastructure
Build Status
Buildable 11252
Build 13976: Run Core Tests