16:01:33 #startmeeting Storyboard 16:01:34 Meeting started Mon Dec 8 16:01:33 2014 UTC and is due to finish in 60 minutes. The chair is krotscheck. Information about MeetBot at http://wiki.debian.org/MeetBot. 16:01:35 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 16:01:37 The meeting name has been set to 'storyboard' 16:01:52 Agenda: https://wiki.openstack.org/wiki/StoryBoard#Agenda 16:02:03 #topic Actions from Last week 16:02:14 Most of these things are mine, so I’ll go through them. 16:02:29 Pester Fungi: Not yet done. 16:02:38 File stories: Should all be in there now. 16:02:51 hi there 16:02:56 yeah, pester me 16:02:56 o/ 16:03:02 o/ 16:03:09 success 16:03:09 Oh look, people! 16:03:39 rcarrilocruz isn’t here, we’ll assume he’s off doing awesome things. 16:03:41 hiya 16:03:50 krotscheck, is national holiday in Spain 16:03:54 Oh! 16:04:00 Well then, that explains it. 16:04:05 Do we have a bank holiday in Britain? 16:04:08 we should all take the day off! ;) 16:04:11 (Because of jedimike) 16:04:16 not today krotscheck 16:04:24 It's not even a hholiday in France. 16:04:24 Gotcha. 16:04:30 ttx: That’s rare. 16:04:31 :D 16:04:39 Indeed, I thought we had all holidays 16:04:52 * ttx goes on strike to protest 16:05:00 o/ 16:05:07 jedimike: How’s that paging spec? 16:05:50 krotscheck, submitted at https://review.openstack.org/#/c/139638/ , yolanda left a comment and there's some typos to fix, going to wait for more feedback before i submit an updated version though 16:06:28 Awesome! 16:06:51 Ok, so we’ve got stories filed, a new spec, and a holiday. Moving on! 16:06:56 #topic User Feedback 16:06:58 #link paging spec https://review.openstack.org/#/c/139638/ 16:07:09 Has anyone received direct user feedback over the last week? 16:07:45 i think clarkb mentioned that having 'merged' ~= 'resolved' was feeling weird in some cases 16:08:40 That kindof starts to work into the workflow discussion, no? 16:08:48 * krotscheck agrees. 16:09:04 we could have non-code-backed projects use a different word. 16:09:10 i think i may have been logged out unexpectedly, but i haven't really collected enough data on that 16:09:32 ttx: i'm assuming this is related to a code-backend project; i didn't have a chance to follow up with him though so i don't know the full details 16:09:32 ttx: I like that idea 16:09:36 Well, the refresh token fix went in mid last week, so I hope that’ll be a less frequent occurrence. 16:09:39 code-backed 16:10:15 krotscheck: okay, good to know -- what is the expectation? like: if a user is active at least every N minutes, they will not be logged out? 16:10:19 This suggests that we have different project types that trigger different status groups. 16:10:53 jeblair: The expectation is that as long as your client has both an access token and a refresh token, you will never be logged out. 16:10:54 krotscheck: not necessarily. 16:11:03 krotscheck: ack, thx 16:11:15 krotscheck: one of my specs proposes to add a "code repo" field to projects 16:11:40 so you can recognize that without having to introduce project types 16:12:17 frankly, different status groups would rseult in a bit of a mess for data analysis across openstack projects 16:12:39 ttx: Yeah, but the tradeoff is that we have to special case things based on a complex state machine in the frontend. 16:12:43 but if it's just about translating "merged" into somethign that makes more sense... 16:13:02 why don't i follow up with clarkb and find out what circumstance made him feel it was inappropriate 16:13:11 If A and B but not C show merged, else show resolved, etc etc. 16:13:56 Works for me. 16:14:06 jeblair: Can you capture that conversation in a story? 16:15:00 CTtpollard: Anything from your end of things? 16:15:44 krotscheck: ack 16:16:33 Ok, let’s move on. 16:16:40 #topic Urgent Items 16:16:46 Nothing on the agenda, anything new? 16:17:10 nothing from my side 16:17:22 nothing urgent no from me 16:17:25 tried to ping mbitard several times for the login issue, but no answer 16:17:34 any other known way of contact? 16:17:58 I got nothing, sorry :/ 16:18:13 nope 16:18:18 Ok, moving on! 16:18:26 #topic Discussion: Documentation (persia) 16:18:32 persia: You around? 16:19:15 Ok, nothing there. 16:19:48 I’m going to skip rainya’s piece as well, it’s been a month since the summit and neither of them have shown up to meetings. 16:20:21 #action krotscheck Contact persia and rainya about their agenda items being dropped. 16:20:33 #topic Discussion: Branch Support (ttx) 16:21:04 o/ 16:21:11 So I pushed two spec drafts 16:21:26 First one about task branch: https://review.openstack.org/#/c/139613/ 16:21:37 #link https://review.openstack.org/#/c/139626/ 16:21:42 It actually introdices a "project area" concept that can also be used on non-code projects 16:21:45 #link https://review.openstack.org/#/c/139613/ 16:22:00 but we can rename it branch if everyone finds that confusing 16:22:29 What does “project area” mean to you? Is there a nuance you want to highlight? 16:22:30 One idea is to optimize UI in case a single area is defined 16:23:33 krotscheck: the idea is to let non-code-backed projects also have something like branches to separate their work into multiple categories 16:24:07 But if there is no real use case for it, we can just rename everything "branch" 16:24:19 anyway, the rationale is decribed in the spec draft 16:24:23 +s 16:24:36 The second draft is about milestones 16:24:38 So, much like the different task groups that the Win The Enterprise group is using? 16:24:56 krotscheck: probably yes, haven't dived into their use case yet 16:25:05 https://review.openstack.org/#/c/139626/ 16:25:32 describes how we can track which milestone a given task was completed in 16:25:47 for feature parity with some of the Launchpad "milestone" concept 16:26:05 So please have a look and give me early feedback, I can iterate on that 16:26:25 Then once we made progress, I'll rewrite the storytypes stuff on top of that 16:26:59 area/milestone map to branch and tags in a code-backed repo 16:27:03 Alright, so that’s pretty high priority. 16:28:04 I’d like everyone to take a look at those two specs this week so we can get that work moving forward and ready for dev. 16:28:39 sure, i'll take a look at that tomorrow 16:28:51 will do 16:28:57 krotscheck: there is a bit about setting all the tasks "milestone" column when you push a tag that will probably brush your REST hair in the wrong direction 16:28:59 sure 16:29:14 ttx: That’s ok, I got a haircut on saturday 16:29:20 * krotscheck feels that’s relate.d 16:29:26 Anwyay, next: 16:29:34 #topic Discussion: API Paging. 16:29:48 jedimike: You pushed a spec, any comments on that? 16:30:01 so https://review.openstack.org/#/c/139638/ is the Ultimate Pagination Solution (tm) spec 16:30:10 it's pretty long, goes through UI interaction too 16:30:25 all comments, questions, feedback welcome 16:30:50 Cool, anything you want to highlight? 16:31:09 well the snapshot system is how i've implemented it before, backed by a database 16:31:26 if anyone has other suggestions that might work and aren't db backed, i'd be interested in that 16:31:53 but really for now I want to know that it makes sense 16:31:56 I’ve seen redis-based implementation. 16:32:11 because I've implemented this a few times and you know what it's like, writing docs for a system you're familiar with :) 16:33:19 Righto. So let’s push discussion to the spec from this point forward and check in next week. 16:33:36 #topic InProgress: Email 16:33:43 New patch on the cron workers. 16:33:56 I still need to write some tests for it. 16:34:11 But this iteration actually allows us to have the cron plugin declare its own schedule. 16:34:51 #topic InProgress: User Auth Token 16:34:59 No progress. Endpoint landed, UI still coming. 16:35:05 #topic Caching Update 16:35:09 Done. Merged. 16:35:19 #topic Tags (NikitaKonovalov ) 16:35:22 You here? 16:36:09 Nope, ok. 16:36:26 #topic InProgress: Dashboard Updates. 16:36:32 yolanda: Looks like that one merged? 16:36:36 krotscheck, yes 16:36:45 Awesome. 16:36:49 Also, OMG Dashboard is useufl. 16:36:52 *useful 16:37:10 i'd like that to have configurable widgets 16:37:40 Yeah, I feel like we’d all like that. 16:37:49 Also, the ability to replace it with a kanban board? 16:38:03 krotscheck that will be awesome but tons of work 16:38:07 The possibilities are endless. 16:38:18 * ttx would like to be able to clear all "recent events" 16:38:30 * ttx files story 16:38:39 * krotscheck actually has been adapting the kanban code drop to fit into storyboard... 16:38:57 That came from CTtpollard’s team… I _think_. 16:39:04 krotscheck that will be awesome 16:39:08 indeed. 16:39:46 i actually don't think that will be awesome 16:40:14 there's a lot of more awesome things that i'm looking forward to first :) 16:40:23 jeblair: Like email? :) 16:40:45 like tags 16:41:11 * krotscheck sighs. 16:41:14 Apologies on all of those. I’ve been doing a few internal HP things that are thankfully over now. 16:42:11 jedimike: Next thing is paging. I feel like we’ve already covered that so I’m goign to skip it. 16:42:17 * ttx hadn't really noticed a drop in krotscheck's activity 16:42:20 Unless you’ve got something? 16:42:20 okeydokey 16:42:28 nope, all in the spec :) 16:42:33 #topic InProgress: Anything new? 16:42:43 Anything new out there? 16:43:04 Oh yeah, configurable statuses! 16:43:17 #topic InProgress: Configurable Task Status (yolanda) 16:43:33 krotscheck, working on the grouping of tasks dynamically now 16:43:41 Awesome. 16:43:55 there are comments from ttx about the fixed signature / variable signature on the api 16:44:09 so i grouped all the counts on one field, because i prefer the idea of the API signature being fixed 16:44:14 any opinions? 16:44:26 I agree with the way you did that. 16:44:31 It also greatly simplifies that query. 16:44:32 i agree with keeping the sig fixed 16:44:57 link ? 16:45:09 * ttx doesn't remember such comment, but then... 16:45:23 That change is going to break downstream third party UI’s, but it’s a simple enough update for them to dig into the subobject. 16:45:34 looking 16:45:50 ttx: https://review.openstack.org/#/c/139100/1/storyboard/db/models.py 16:46:28 Basically, instead of a story_summary having explicit fields for its task statuses, it’s now going to have a task_statuses field that’s a map of counts by status. 16:46:29 ttx, i may be confused with your comment then... https://review.openstack.org/#/c/139100/ 16:46:54 yolanda: I don't think I commented there :) 16:47:07 yes, it's another review, sorry 16:47:21 So instead of { todo: 4, merged:10…} It’s now going to be { tasks_statuses: { ‘custom_status_1’:10, ‘custom_status_2’: 22}} 16:47:43 i don't think we need to worry about breaking downstreams yet; we should retain our flexibility until we're much further along 16:47:51 oh, you mean my earlier comment about analysis across projects 16:48:29 ttx, was confused with comment on that https://review.openstack.org/#/c/138389/2/src/app/services/resource/task_statuses.js ...my fault as i read all reviews in my email quite fast today 16:48:34 jeblair, agreed 16:49:00 krotscheck, so yes, it will be breaking downstream for a while, and i need to update code in the frontend to properly consume it 16:49:05 yolanda: ok 16:50:09 krotscheck so i'll add some tests there 16:50:40 Well, we can just coordinate the merges. That way the client impact will be minimal. 16:51:02 ++ 16:51:22 i'll grab some time this week to work on both sides 16:51:41 cool. 16:51:52 Anyone else working on something in secret? 16:52:14 krotscheck, working on the backend preferences 16:52:18 Right! 16:52:28 #topic InProgress: Backend Preferences (yolanda) 16:52:42 so problem is that double async, you first need to asynchronously grab the client, then grab the preferences 16:53:15 We can chain promises for that though, can’t we? 16:53:48 the way i did they are chained, first it resolves the client then it resolves the preferences 16:55:54 so according with your comments you think that the approach is fine for pagination, events... only comment is with the way to retrieve that in the user preferences section, right? 16:56:42 and you also commented that the preferences should be cached, maybe we can try angular-data or some similar approach? 16:56:49 Urm… well, no. User preferences is one of those things I feel that the application needs at initialization, becuase it’s something that can drive pretty much anything at any level. 16:56:58 Dashboard initialization, etc. 16:57:08 Well, we’ve already put angular-cache in place :) 16:57:53 then this should be loaded either when the user logins, or when the user starts the app and he/she is already logged in 16:58:18 The way we’re doing logins right now, the app is refreshed once a new auth token shows up. 16:58:22 So on init should be fine. 16:58:34 (Low on time) 16:58:46 ok, i'll update the approach to use angular-cache 16:58:51 kk 16:58:57 this could be applied also to task statusse 16:58:59 statuses 16:59:00 Yep. 16:59:18 ok, tons of work for this week 16:59:24 Yep. 16:59:45 Alright, we’re out of time. Thanks everyone! 16:59:57 * krotscheck needs to make more time for open discussion :/ 17:00:06 #endmeeting