Page MenuHomePhabricator

Cannot manage base project milestones if base project has subprojects
Closed, ResolvedPublic

Assigned To
Authored By
CodeMouse92
Apr 11 2016, 9:54 PM
Tags
Referenced Files
F1214869: phabbug2_11apr16.png
Apr 11 2016, 10:15 PM
F1214863: phabbug_11apr16.png
Apr 11 2016, 10:13 PM
Tokens
"Party Time" token, awarded by CodeMouse92.

Description

Issue

I've been using Subprojects successfully for a while now, and I just started using Milestones in Projects, and I noticed that if the base project has subprojects, I cannot edit any details on a base project's milestone. I am the creator and member of the parent project, but when I go to Manage and click any option, I see:

You do not have permission to edit this object.
Users with the "Can Edit" capability:

  • Project members can take this action.

I am listed as a member of both the parent project and under Members for the milestone, but I can't edit anything. This is probably a side-effect of Milestones not having formal members. I know these features are in active development, but I didn't see this bug anywhere on the tracker (unless I just missed it.)

Steps to Reproduce

  • Create (or go to) a project that you are a member of.
  • Ensure Can Edit: is set to Members of Project and Can Join: is set to Administrators.
  • Ensure the project has at least one Subproject, with you as a member.
  • For good measure, on the Subproject, set Can Edit: to Members of Project and Can Join: to Administrators.
  • Add a new Milestone to the main project.
  • Go to the Milestone and click Manage on the menu.
  • Note that all actions are grayed out. Click any to see the error message.

Version

Event Timeline

Can you clarify the steps to reproduce, specifically the first step. This doesn't reproduce for me.

Specifically I took these steps.

  • Launch a test instance on Phacility
  • Create a New Project
  • Join Project
  • Set Edit Policy on Project to Members of Project
  • Create a Milestone
  • Click Manage
  • Edit Milestone

Oh criminey, that should have duplicated. Those are nearly exact same steps I followed on my local copy, but I get this:

phabbug_11apr16.png (614×1 px, 101 KB)

The PawLIB [Project] project this is a subproject of is one I created, am a member of, and have set edit policy to "Members of Project". I'm also listed as a user on the Milestone here.

phabbug2_11apr16.png (614×1 px, 94 KB)

Is is a mitigating factor that the PawLIB [Project] has six Subprojects? They all work correctly. I didn't think of it at the time, but maybe that has the project membership subtleties mixed up.

Also, I have two Milestones on this project, both with the same problem.

@chad, I updated the reproduction instructions. I think the project having Subprojects already before adding the Milestone might be the mitigating factor. Let me know whether that reproduces. If not, I'll dig some more until we get this thing reproducing. I swear it's there!

@CodeMouse92 consider duplicating on a phacility test instance.

@eadler, how do I do that? EDIT: Nevermind.

BINGO! We have duplication. The updated steps in the description *will* recreate the issue.

CodeMouse92 renamed this task from Cannot Manage Milestones to Cannot manage base project milestones if base project has subprojects.Apr 14 2016, 9:04 PM

@chad, I've updated the title to reflect the updated (and confirmed) duplication instructions. The specific problem is that, if a project has subprojects, then any milestones belonging to the base project cannot be modified.

Confirmed workaround: set base project edit permissions to something other than Project Members.

Confirmed workaround: set base project edit permissions to something other than Project Members.

I have encountered this problem, please describe in detail how to solve
我也遇到这个问题了,请详细描述一下如何解决

added: I milestones established after subproject created infrastructure projects have permission to modify the project members, still can not be edited
补充:我的里程碑建立在子项目之后创建的,基础项目的权限修改成 项目成员 ,仍然无法编辑

Haha, thank you, I find the modification method, you must be a member of the project name.
哈哈,谢谢,我找到修改方法,必须是项目名称的成员。

解决描述:
之所以会出现这个问题,是因为里程碑是建立在大项目中,且建立时间点是在子项目之后,凡是这样创建的里程碑都有可能遇到这个问题。

这个问题延伸出来的问题,更值得关注“项目的权限管理问题”和“子项目创建和里程碑创建的规范问题”。

项目权限管理问题:在建立项目后,创建人可以编辑项目描述,可以设置“修改描述”的权限,这次遇到问题就是这个配置是Editable By Project Members修改成 Editable By
和飞信_手机 问题解决。

这个问题出现引发的关于问题就是,如何设置这个权限才是最理想最安全?还有就是到底应该如何建立子项目及里程碑?
如果没有里程碑及子项目建立顺序的问题,就不会出现修改权限的问题,出现修改权限问题,也应该让我们更关注权限配置的问题。

eadler added a project: Restricted Project.Aug 5 2016, 5:05 PM
epriestley claimed this task.

I believe T13462 resolved this.

See https://discourse.phabricator-community.org/t/t10779-which-is-closed-is-happening-on-my-install/3458.

I'm also still able to reproduce this specific variant of things, so it looks like I was too optimistic about T13462 covering this in at least some cases.