[00:00:09] I think at least three times (probably 9+ months apart), I did something similar and spent minutes shouting at my monitor. [00:00:15] heh [00:00:43] Thank you sir can I have another! [00:00:49] Oh, you got the tests too, huh? Neat. [00:00:52] I'm just going to... [00:01:48] (CR) Katie Horn: [C: 2] "YEEEEEESS." [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/156730 (owner: Ejegg) [00:02:06] (Merged) jenkins-bot: Rename GatewayForm to GatewayPage to distinguish from Gateway_Form [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/156730 (owner: Ejegg) [00:02:09] woohoo! [00:34:58] (PS13) Awight: (FR #1855) Refactor import hook to lower level [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/153376 [00:41:02] K4-713: ejegg: nudging to coordinate a payments deployment, if u haven't already discussed [00:41:13] ...now? [00:41:24] tomorrow? [00:41:44] Considering somebody has to stick around for at least an hour afterward, that seems preferable. [00:42:01] Any time in particular work for you? [00:42:13] Meh, whatever. Hopefully after 9am PST. [00:42:27] Who's taking this one? [00:42:37] I think I can do it [00:42:47] Have you done one before? [00:42:51] nope! [00:42:55] Ah, fun. [00:42:56] Okay. [00:43:03] But I have done one deploy from that cluster [00:43:07] Another exciting piece of news: check out the red/orange/green lights on the Civi PR wall: https://github.com/civicrm/civicrm-core/pulls Thanks totten! [00:43:27] Huh. [00:43:40] Oh, I get it. :) [00:43:41] oh, cool! Didn't realize github had that sort of build automation [00:44:06] Here come serious improvements in code quality! :p [00:44:19] nice [00:46:24] awight: How are you being notified about mingle changes / did you see my response? [00:46:58] sigh, I was getting emails for @me murmurs [00:47:06] ...? [00:47:09] That's it? [00:47:27] K4-713: ok I see [00:47:47] K4-713: yes I get it. And was kurious because we had talked. But the card doesn't say what we... [00:47:55] Yes it does. [00:47:56] ... [00:48:00] What do you think we decided? [00:48:16] I specifically asked you about the parsing. [00:48:21] Do you want to mention for example that this code is already written?? [00:48:36] In python. [00:48:42] If the point is to port from Python to PHP... that is something to be explicit about? [00:48:58] Why, btw would we want to do what you suggest? [00:48:59] Not sure how that helps for php, and it's sort of... already in the natural location to put the new thing. [00:49:30] ok either way. Apparently something I did not catch this morning [00:49:35] gah. Okay. Because the nightly audit workflow, that needs to share code with civi import / checking things, is in php. [00:50:12] This approach was exactly what I was... [00:50:14] OK So you want to add... log parsing. and port. and call wmf_civicrm directly rather than queueing [00:50:17] okok [00:50:26] No, not necessarily. [00:50:31] ...with the last part. [00:50:47] The point with this is to standardize on one codebase. [00:50:51] I guess we have to start somewhere. [00:51:08] Well, we need WP for france before October. So, it's here. [00:51:26] And, since I usually choose to work in a linear fashion, the first thing I have to do is parse the input. [00:51:52] Instead of "Add WorldPay nightly reconciliation file parsing ability to fr-tools repo" I would say "Port WP parsing from fr-tools to crm repo" [00:52:10] Okay, I'll change it. [00:52:15] Now that I've like triple-checked what is actually going on, I don't care what the card sez [00:52:24] I honestly wasn't thinking too hard about card names. [00:52:31] Hah you've seen the cruft I generate [00:52:34] ...because it's in conjunction with the next two. [00:52:37] Maybe I'm inspiring [00:52:58] I guess that's only obvious if you look from the spike that says "figure out WTF to do." [00:53:22] https://wikimedia.mingle.thoughtworks.com/projects/online_fundraiser/cards/1884 [00:53:30] I'll cross-link, I guess. [00:53:58] I was only thinking that if someone who was not part of our conversation sees the old card title, they will think we're snmoking it... [00:54:13] *which is not the case.* [00:54:16] :p [00:54:58] Sorry I'm all warped from dealing with Civi hooks. I just had to write two completely different types of hook implementation, cos one needed custom field values. /hara-kiri [00:55:44] You cannot get custom values from base object hooks. So I had to write a hook on the custom data (thx, eileen!) then retrieve the base object from within the hook. [00:56:23] WOOT there is really nothing at all left in queue2civicrm. [00:57:09] huh. Nothing at all? [00:57:16] Great. Now I will not know where anything is. [00:57:22] I mean, more than usual. [00:57:29] I have the way it was, like, a year ago in my head. [00:57:41] I pop open the base file and just blink at it for 7 minutes. [00:59:22] hehe. yeah it's a tiny bit of cruft we can discard, plus this line: [00:59:25] $contribution = wmf_civicrm_contribution_message_import($msg); [01:00:01] dang [01:00:03] Of course, I ended up making ^ that function way too complicated, but... temporary... I hope [01:00:16] Everything is temporary. [01:00:46] Yes but some things are built of really heavy and fragile imaginary bricks. [01:01:31] Yes. Yes they are. [01:01:34] ... [01:01:46] Wouldn't it be funny if everybody stopped using credit cards next year? [01:02:01] I mean, I'd laugh. [01:02:08] Just charge it straight to my life [01:03:58] I think the DonationInterface form situation and audit-sprawl are the last *really* bad legacy things to fix. [01:04:04] I must be dreaming. [01:04:10] Don't wake up. [01:04:14] DO NOT. [01:04:15] baahaha [01:04:16] :D [01:04:21] once I shuffle off this mortal coil [01:04:28] abre los ojos... [01:04:34] Man, it's getting weird in here. [01:04:51] * awight is sort of proud of single-handedly weirding it up [01:05:03] I'd like to think I helped a little. [01:05:17] yes as the sane foil [01:05:19] With the... you know, transience of existence type thoughts. [01:05:56] where's the 'fun' in existentialism... It's all Knight of resignation. [01:06:12] Maybe we can get the fun back in 'draising by all adopting FUNdaMENTALism [01:06:23] Or, the... mental? [01:06:27] It *must* be true. See, it's written here. [01:07:11] K4-713: Can I ask about the choice of repo? IMO we should push audit stuff into DonationInterface [01:07:28] ...really? [01:07:31] yah [01:07:35] Huh. [01:07:38] just to circle our ducks [01:07:50] I mean, that's where everything but Listeners live [01:07:51] * awight dies [01:08:01] oh oh reality is slowly coming back to me [01:08:02] So, in my head, donation interface is on a completely different planet. [01:08:02] it hurts. [01:08:11] At the very least, they are at opposite ends of the pipe. [01:08:24] But we make... API calls [01:08:30] also, DI is available to Civi [01:08:32] No we don't. [01:08:36] Not at that stage. [01:08:37] erhm [01:08:41] Nobody has one that would help us. [01:08:45] hehe yes in amazon and PP audit I believe [01:08:45] ...at that stage. [01:08:55] er... when? [01:09:00] * awight githubs [01:09:03] wat [01:09:10] Why with all the github? [01:09:13] :p [01:09:21] you want me to use that janky git.wmo site? [01:09:31] Yes? [01:09:33] :p [01:09:36] so... unnavigable [01:09:52] we have apparently not discovered... alphabetical order yet [01:10:08] and the number of repos displayed is randomly truncated at some smallish number. it's just awful [01:10:22] That's okay. I never want to see all of them anyway. [01:10:44] https://github.com/wikimedia/wikimedia-fundraising-tools/blob/master/AmazonAudit/amazon-audit.py#L49 [01:10:47] ...but that might just be the terrible ajax talking. [01:10:47] lol [01:11:12] One day they're gonna Clockwork Orange us and force us to watch films of all the bad things Fundraising has done [01:11:31] How is that not our lives already? [01:11:40] I thought that's called "bugfixes" [01:11:44] https://github.com/wikimedia/wikimedia-fundraising-tools/blob/master/audit/paypal/TrrFile.py#L158 [01:12:00] Okay, so... great. Do we know that these requests aren't costing us money? [01:12:07] blargh [01:12:12] Also, we can't be doing this now, because github. [01:12:18] * awight tries to reset so I can do evil coding again [01:12:23] eh? [01:12:37] If we can deploy from github, I missed a hell of a meeting. [01:12:41] oh [01:12:42] no [01:12:47] But this is the latest code [01:13:05] b... [01:13:15] For a lot of repos, you can even produce PRs in github and they are mirrored back into gerrit, afaik [01:13:25] s/a lot/indeterminate damage/ [01:13:43] I'm becoming extremely nervous. [01:13:52] you are right. [01:14:14] ...mostly because I haven't written a single line of code today, and this has a pretty hard deadline. [01:14:27] I love knowing where we're going. I really do. [01:14:30] * awight disappears into card 1847 [01:15:04] * awight kicks phantom of strategy meeting for special higher-ups, with no minutes published [01:15:09] <_< [01:15:10] >_> [01:15:15] ooooooooo. [01:15:26] I'm telling. [01:15:39] (I'm not. But I probably don't have to) [01:15:57] * awight considers nicks who might expect this of me [01:16:19] All I really care about though is: where was the leftovers of desert? [01:16:22] dessert. [01:16:26] FOR REAL THOUGH. [01:16:27] ah jesus [01:16:54] The homeless guy outside is asking. [01:17:05] OKOK buddy, enough beans. Where's the pie. [01:17:27] I was thinking cake soaked in alcohol. [01:18:13] * awight looks up coordinates to venue and grumbles some more [01:18:20] WHAT IS THAT CRAP [01:18:22] Also... who does fixed width reporting with PAIRS of lines? [01:18:32] OK /me dies further [01:18:33] I could just... [01:18:52] ...you know what? I'm not going to get anything else done from here today other than more grumbling. [01:18:58] Apparently not even dessert. [01:19:04] Rip. Off. [16:19:14] PPena: Hey, good morning! [16:20:03] * K4-713 waves at ejegg [16:20:10] hi K4! [16:20:43] I don't really have anything more interesting than "good morning". [16:21:14] me neither just yet [16:21:28] some time today we should deploy DonationInterface though [16:21:45] Or, as I like to say to Jeff: "Good aftermath". Takes care of timezone greeting discrepancies. :) [16:21:51] Yeah, deploying things. [16:21:52] Right. [16:21:54] I'll see if I can work out what changes to pull in [16:22:25] Okay, so... usually I just take whatever's in master, unless there's some shiny reason to pick around something. [16:22:34] I don't... *think* there is right now... [16:22:43] But always good to double-check. [16:23:01] oh, cool [16:23:13] In general, if it's not something tied to a mingle "ready to deploy" card, it's worth some follow-up questions. [16:24:44] ejegg: Have you had to deal with my irritating policy of not deploying any tests yet? [16:24:52] huh, cherry -v lists a whole lot, but it might be misleading [16:25:02] no, but that makes sense [16:25:15] reducing potential attack surface and all [16:25:58] Well, yeah, and it's less likely for us to do something abysmally stupid. [16:26:06] Mostly I'm worried about myself. :) [16:26:39] Do you want to take a look at the output of git cherry -v origin/deploy-payments_1.22 origin/master | grep + [16:26:47] and let me know what you think? [16:27:04] Some of those are pretty old and seem like they must be deployed [16:27:18] Sure, wait 1. [16:27:32] no rush [16:27:36] I've got to fetch the world and stuff. [16:28:12] ...oooh. I just remembered something. [16:28:13] righto [16:28:39] oh, i should just look at the file diff to get the real story [16:28:40] I've got some uncommitted garbage on my local because i18n changes cause translator work to happen IRL. [16:28:56] ...even if it's in an irrelevant branch. [16:29:13] oh, they don't just do master, huh? [16:29:55] So, my sanity check is usually to fetch and fast-forward everything locally, and then git diff --name-status master..deploy_payments [16:30:06] If anything but tests show up, something has been left out. [16:30:16] ah, thanks! was just trying to figure out that command line [16:30:37] 'course, the branches you reference should be the local and updated ones you use to track what's in gerrit. [16:30:48] Tabcomplete works for that, for some reason. [16:31:01] K4-713 hi! Sorry, just saw this now [16:31:17] K4-713 goooood morning :) [16:31:39] PPena: No worries! I just wanted to let you know, I sorted out the pressing Worldpay stuff with awight's help last night, so no need for a call in the near-term. [16:39:11] K4-713: so, merge in master, delete tests/, test hook & .jshint-type-stuff, revert .gitignore and .gitreview changes [16:39:18] missing any steps? [16:40:00] Huh. I don't think I had to mess with .jslint / .gitignore / .gitreview on merge before. [16:40:13] But my checkout is allegedly haunted. [16:40:13] yeah, those might be new [16:40:37] Usually I only have to kill off the tests. [16:40:42] there are a bunch of js style tweaks which I assume are related [16:40:55] Er... like what? [16:41:03] well, the jslint stuff [16:41:07] Oh, doy. [16:41:10] wait, let me see [16:41:21] It's been a while since the last payments deploy, hasn't it? [16:41:30] I think it was before I left for Ireland. [16:41:37] more than a month, yeah [16:42:09] the jschanges are mostly whitespace, some == / ===, etc [16:43:01] gitreview just points to a diff branch, and deploy gitignore ignores tests [16:43:09] aye [16:43:10] Okay. [16:43:24] Yeah, we want all the js if it's actually *in* DI. [16:43:33] cool [16:43:45] ...as opposed to, you know, git cruft. [16:43:54] right [16:55:53] K4-713 I got a call scheduled for today- do you want to be in? [16:56:09] K4-713 or do you need literally nothing from them?:) [16:56:17] I don't need anything at the moment. [16:56:38] Eventually, I will want to know if I can turn off that giant pile of reports that do not help us, *at all*. [16:56:48] ...unless I can think of some reason they would help. [16:56:54] So, I'm not even sure about that part. [16:57:06] I mean, presumably, if they're bothering to generate them, somebody finds them useful... [16:57:09] * K4-713 fidgets [17:01:28] ejegg: There's a good chance we'll need to do another payments deploy today. [17:01:35] ...once I write a patch. [17:01:43] oh, ok. [17:01:54] Should I hold off on this merge then? [17:01:55] But, don't let that stop you from getting this round out. [17:02:00] No, do it. [17:02:01] OK, cool [17:02:06] This isn't... actually that odd. [17:02:14] Well, maybe it is these days. [17:09:47] git's gotta be a little confused: "Your branch is ahead of 'origin/deploy-payments_1.22' by 1075 commits." [17:12:37] bah. git review is actually trying to push screenfuls of separate commits instead of just one merge [17:13:19] ! [17:13:30] 1075 commits, huh? [17:13:37] ...you guys were busy while I was on vacation. :p [17:14:29] hah! not that busy [17:14:59] I checked out deploy-payments_1.22 [17:15:13] did a merge -X theirs master [17:15:46] it complained of deleted/modified conflicts in tests/ but did the rest of the merge [17:16:51] I deleted tests, removed hook and reset branch in .gitreview, and committed with a plain old "git commit" [17:17:28] the comments bit of the message noted that i was likely committing a merge, and to delete MERGE_HEAD or somesuch if I didn't want to [17:17:37] but I thought that was how it was supposed to go [17:18:14] ohh man Chester McDefault [17:18:20] ejegg: I'm not sure I'm going to be tremendously helpful with the git merge advice. I have only merged master into deploy, like, once. The rest of the time I'm cherry-picking. [17:18:22] Hurm. [17:18:34] dang [17:18:39] I'm really beginning to hate Thursdays. [17:19:16] i'll see if the googles have any advice [17:19:44] ejegg this is how you feel when you cherry pick http://gph.is/1glgA2H [17:20:06] pizzzacat1: That's why I do it. [17:20:07] smoove [17:20:36] why would anyone choose any other way [17:20:48] also why does IRC always hate me [17:21:11] only 'cos after a merge git will stop being confused about which patches are still outstanding [17:22:29] ejegg: Was it seriously going to have 1000+ patch sets? [17:23:11] i ran out of scrollback [17:23:25] but yeah, looked like it [17:23:43] Any clues about what exactly it thought they all were? [17:23:55] like, everything ever [17:24:24] all the way back to "(documentation-2012-05-18-1800) Updated documentation" [17:24:24] * K4-713 squints [17:24:31] Ha, that never happened. [17:24:33] :D [17:24:47] hmph [17:28:11] (PS1) Katie Horn: Changing the default donor name to something less odd. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/156819 [17:28:34] the-wub: ...you can +2 in the crm repo, yeah? [17:29:20] I think we're going to try to see if we can simultaneously break everything. [17:30:01] http://media.tumblr.com/55e743a6c14ecf989ac7a8f744e58582/tumblr_inline_n6wr5jzuqb1s9nclc.gif [17:31:17] K4-713: yeah, IIRC I can. for some reason :P [17:31:44] * K4-713 mumbles something about payments forms, looks uncertain [17:32:34] the-wub: This one should be totally simple anyway: https://gerrit.wikimedia.org/r/156819 [17:35:55] (CR) Pcoombe: [C: 2] Changing the default donor name to something less odd. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/156819 (owner: Katie Horn) [17:36:33] K4-713: done :) [17:36:39] Okay, let me get this out. [17:36:58] ejegg: I need to deploy an emergency patch to the crm. [17:37:02] srry for the delay, my internet connection is incredibly shitty atm [17:37:13] ejegg: ...which has nothing to do with what you're doing on payments. [17:37:19] cool, that shouldn't be too crazy, right? [17:37:24] the-wub: No worries! [17:37:32] ejegg: I eat crazy for breakfast. [17:37:44] ...but I skipped it today. [17:37:48] :/ [17:38:09] speaking of insanity, i'm trying to redo the merge and see if I get different results [17:38:23] Yeah, that... helps sometimes for reasons that are maddening. [17:44:56] Okay: Here we go with a civi deploy. [17:45:00] Should be trivial... [17:46:38] Building qc to check. [17:46:54] ...no messages. [17:46:58] Somebody donate something. :p [17:47:22] Preferably with no name. [17:54:30] K4-713: Lila meeting upstairs? [17:54:42] Yeah... I'm in a good place here for the moment. [17:54:44] phooey and double phooey. I can get it down to a single patch to submit by zapping .git/MERGE_HEAD before I commit, but then the log is missing all the merged commits. Is there seriously no way to get the history synced without reviewing every single patch? [17:54:46] * pizzzacat hasn't read things blowing up [17:54:55] ok cool [17:55:08] ejegg: Oh, actually that's normal, and (for some) desired behavior. [17:55:15] As long as it's not 1000+ patches long. [17:55:25] That's an error/problem. [17:55:51] ...going to go to a thing now, though... hopefully brb unless the wireless has a seizure. [18:01:59] Woo, okay. [18:02:01] I'm here for the time being. [18:02:12] NOBODY PANIC I AM HERE. :p [18:05:32] ejegg: Yeah, so... there being a new patch for every commit in the deploy branch as well as in master, isn't actually wrong. [18:06:07] You just have to +2 the deploy stuff and say "deploy". Which is only ever okay when you're deploying. [18:06:53] OK, I was just hoping to get around having to do that 1000 times [18:07:23] 1000 is too many. [18:07:35] There should be, at most, one for each thing that wasn't already over htere. [18:08:01] OK, I think that's what I'll get if I cherry-pick in everything since the last deploy [18:08:17] let's try this a 3rd time! [18:08:31] (while I wait for the youtube stream) [18:08:48] You going to bail out on the merge? [18:08:55] ...incidentally, I'm totally fine with that. [18:10:05] awight can explain how we're both silly tomorrow. [18:16:53] ejegg: Are you totally absorbed in the meeting thingy, or are you still doing merge stuff? [18:19:12] half and half [18:20:01] Okay. I'll give you one eyeball. :) [18:38:48] ahh, we didn't merge in that maintenance mode switch simplification yet? [18:38:56] OK to do so for this deploy? [18:39:11] er... we should have. [18:39:14] Yep. [18:39:29] Just, you know: Make sure any globals you need are there. [18:39:34] ...in LocalSettings [18:39:38] or the secret one. [18:39:46] yeah, that changed re-used the same globals [18:39:56] Where is the mingle card for that one? Does it say deployed? [18:40:10] let me check. I think it wasn't even merged into master till lately [18:40:13] If so, somebody gets 10 minutes in the box. [18:40:15] Oh, ha. [18:40:23] Well, in that case, it makes sense. [18:40:41] yeah, still in the pending column [18:40:50] okay, cool. I mean: Kind of. [18:41:06] I think a lot happened, in a month. [18:41:19] Actually, the fact that it's been like a month since the last deploy, is... astonishing. [18:41:29] That never used to happen. [18:59:46] aaaargh - gerrit's complaining all the changes are closed. guess i need to regenerate change ids on each commit i cherry picked? [19:00:48] wat. OH, that. [19:01:10] er... how many of these changes have... removed tests? [19:01:26] most of the non-translation ones [19:01:37] Yeah, those you have to whack the change ID. [19:01:49] ok, here goes another round... [19:02:58] How close are you to pulling the trigger, do you think? [19:03:02] Do I have time to get food? [19:03:07] sure, go for it [19:03:16] I'd like to be around when you blast, at the very least. [19:03:29] So, you know: Wait for me to show up again. :) [19:03:33] for sure, i'll wait for your word [19:05:48] (PS1) Ejegg: Cleaning up the payments error logs [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156844 [19:05:50] (PS1) Ejegg: Fix @covers code coverage annotation [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156845 [19:05:52] (PS1) Ejegg: Move gateway form logic from execute to handleRequest [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156846 [19:05:54] (PS1) Ejegg: Simplify fundraising maintenance mode [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156847 [19:05:56] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156848 [19:05:58] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156849 [19:06:00] (PS1) Ejegg: Remove usage of deprecated Xml::escapeJsString [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156850 [19:06:02] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156851 [19:06:04] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156852 [19:06:06] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156853 [19:06:08] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156854 [19:06:10] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156855 [19:06:12] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156856 [19:06:14] (PS1) Ejegg: Add 'id' and 'for' attributes to WorldPay form labels [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156857 [19:06:16] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156858 [19:06:18] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156859 [19:06:20] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156860 [19:06:22] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156861 [19:06:24] (PS1) Ejegg: WorldPay: Put stripped email in MerchantReference2 [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156862 [19:06:26] (PS1) Ejegg: Fix @returns >> @return phpdoc [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156863 [19:06:28] (PS1) Ejegg: Use public instead of var in classes [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156864 [19:06:30] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156865 [19:06:32] (PS1) Ejegg: Transliterate Worldpay post to ISO-8859-1 [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156866 [19:06:34] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156867 [19:06:36] (PS1) Ejegg: Add a grunt linting checker for jshint, jscs, and banana and pass them [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156868 [19:06:38] (PS1) Ejegg: kill remaining calls to extract() [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156869 [19:06:40] (PS1) Ejegg: Follow-up Ib0d0f6c: Fix qqq typos [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156870 [19:06:42] (PS1) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156871 [19:06:44] (PS1) Ejegg: one more extract to yank [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156872 [19:06:46] (PS1) Ejegg: Rename GatewayForm to GatewayPage to distinguish from Gateway_Form [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156873 [19:06:50] (CR) jenkins-bot: [V: -1] Cleaning up the payments error logs [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156844 (owner: Ejegg) [19:06:52] (CR) jenkins-bot: [V: -1] Fix @covers code coverage annotation [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156845 (owner: Ejegg) [19:06:54] (CR) jenkins-bot: [V: -1] Move gateway form logic from execute to handleRequest [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156846 (owner: Ejegg) [19:06:56] (CR) jenkins-bot: [V: -1] Simplify fundraising maintenance mode [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156847 (owner: Ejegg) [19:06:58] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156848 (owner: Ejegg) [19:07:00] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156849 (owner: Ejegg) [19:07:02] (CR) jenkins-bot: [V: -1] Remove usage of deprecated Xml::escapeJsString [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156850 (owner: Ejegg) [19:07:04] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156851 (owner: Ejegg) [19:07:06] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156852 (owner: Ejegg) [19:07:08] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156853 (owner: Ejegg) [19:07:10] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156854 (owner: Ejegg) [19:07:14] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156855 (owner: Ejegg) [19:07:18] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156856 (owner: Ejegg) [19:07:20] (CR) jenkins-bot: [V: -1] Add 'id' and 'for' attributes to WorldPay form labels [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156857 (owner: Ejegg) [19:07:22] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156858 (owner: Ejegg) [19:07:24] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156859 (owner: Ejegg) [19:07:26] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156860 (owner: Ejegg) [19:07:28] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156861 (owner: Ejegg) [19:07:30] (CR) jenkins-bot: [V: -1] WorldPay: Put stripped email in MerchantReference2 [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156862 (owner: Ejegg) [19:07:33] (CR) jenkins-bot: [V: -1] Fix @returns >> @return phpdoc [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156863 (owner: Ejegg) [19:07:37] (CR) jenkins-bot: [V: -1] Use public instead of var in classes [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156864 (owner: Ejegg) [19:07:40] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156865 (owner: Ejegg) [19:07:45] (CR) jenkins-bot: [V: -1] Transliterate Worldpay post to ISO-8859-1 [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156866 (owner: Ejegg) [19:07:48] (CR) jenkins-bot: [V: -1] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156867 (owner: Ejegg) [19:08:24] aw, man. we need to make the jslink checker non-voting, at least temporarily [19:40:44] (CR) Siebrand: "Squash these next time, please." [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156848 (owner: Ejegg) [19:45:53] (PS4) Ssmith: provide models for all fredge tables [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/156334 [19:45:56] (CR) jenkins-bot: [V: -1] provide models for all fredge tables [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/156334 (owner: Ssmith) [20:07:45] (CR) Ejegg: "Just had a discussion about that, and decided to bring them all in so it's easy to tell which patches have been merged. Still need to dea" [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156848 (owner: Ejegg) [20:23:22] ejegg: Okay. Lunch accomplished. [20:23:26] How are we doing? [20:23:55] hit another roadblock :/ [20:24:05] orly. What's up? [20:24:31] the new jslint checks are rejecting all the patches from before the package.json and gruntfile were added [20:25:09] I can either submit a zuul-config patch to temporarily disable those checks, or just abandon all the individual merges and squash it all into one [20:25:20] gah. I get it. [20:25:30] That's annoying. [20:25:34] yep [20:25:40] got a preference which way to go? [20:25:45] Not really. [20:25:50] I'll leave it up to you. [20:26:13] ok. Gonna squash, since we don't have a full merge anyway [20:26:26] I guess you *could* pick them over out of order... [20:26:32] Did you try that? [20:26:37] ooh, actually, let me give that a shot [20:26:45] don't think there was a lot of other js work [20:26:57] Yeah, it should be pretty contained, I think. [20:27:13] ...for mostly the same reasons. [20:29:22] rebase flood in 3...2... [20:29:28] (PS2) Ejegg: Simplify fundraising maintenance mode [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156847 [20:29:30] (PS2) Ejegg: Move gateway form logic from execute to handleRequest [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156846 [20:29:32] (PS2) Ejegg: Fix @covers code coverage annotation [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156845 [20:29:34] (PS2) Ejegg: Cleaning up the payments error logs [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156844 [20:29:36] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156854 [20:29:38] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156855 [20:29:40] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156852 [20:29:42] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156853 [20:29:44] (PS2) Ejegg: Remove usage of deprecated Xml::escapeJsString [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156850 [20:29:46] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156851 [20:29:48] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156848 [20:29:50] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156849 [20:29:52] (PS2) Ejegg: WorldPay: Put stripped email in MerchantReference2 [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156862 [20:29:54] (PS2) Ejegg: Fix @returns >> @return phpdoc [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156863 [20:29:56] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156860 [20:29:58] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156861 [20:30:00] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156858 [20:30:02] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156859 [20:30:04] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156856 [20:30:06] (PS2) Ejegg: Add 'id' and 'for' attributes to WorldPay form labels [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156857 [20:30:08] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156865 [20:30:10] (PS2) Ejegg: Use public instead of var in classes [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156864 [20:30:12] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156867 [20:30:14] (PS2) Ejegg: Transliterate Worldpay post to ISO-8859-1 [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156866 [20:30:16] (PS2) Ejegg: kill remaining calls to extract() [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156869 [20:30:18] (PS2) Ejegg: Add a grunt linting checker for jshint, jscs, and banana and pass them [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156868 [20:30:20] (PS2) Ejegg: Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156871 [20:30:22] (PS2) Ejegg: Follow-up Ib0d0f6c: Fix qqq typos [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156870 [20:30:24] (PS2) Ejegg: Rename GatewayForm to GatewayPage to distinguish from Gateway_Form [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156873 [20:30:26] (PS2) Ejegg: one more extract to yank [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156872 [20:31:09] Yow! [20:31:25] and now for some self-merge spam! [20:31:43] (CR) Ejegg: [C: 2] Add a grunt linting checker for jshint, jscs, and banana and pass them [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156868 (owner: Ejegg) [20:31:56] (CR) Ejegg: [C: 2] Cleaning up the payments error logs [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156844 (owner: Ejegg) [20:32:07] (CR) Ejegg: [C: 2] Fix @covers code coverage annotation [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156845 (owner: Ejegg) [20:32:22] (CR) Ejegg: [C: 2] Move gateway form logic from execute to handleRequest [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156846 (owner: Ejegg) [20:32:32] (CR) Ejegg: [C: 2] Simplify fundraising maintenance mode [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156847 (owner: Ejegg) [20:32:42] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156848 (owner: Ejegg) [20:33:14] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156849 (owner: Ejegg) [20:33:25] (CR) Ejegg: [C: 2] Remove usage of deprecated Xml::escapeJsString [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156850 (owner: Ejegg) [20:33:35] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156851 (owner: Ejegg) [20:33:46] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156852 (owner: Ejegg) [20:34:00] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156853 (owner: Ejegg) [20:34:09] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156854 (owner: Ejegg) [20:34:18] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156855 (owner: Ejegg) [20:34:31] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156856 (owner: Ejegg) [20:34:44] (CR) Ejegg: [C: 2] Add 'id' and 'for' attributes to WorldPay form labels [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156857 (owner: Ejegg) [20:34:54] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156858 (owner: Ejegg) [20:35:04] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156859 (owner: Ejegg) [20:35:12] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156860 (owner: Ejegg) [20:35:20] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156861 (owner: Ejegg) [20:35:30] (CR) Ejegg: [C: 2] WorldPay: Put stripped email in MerchantReference2 [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156862 (owner: Ejegg) [20:35:38] (CR) Ejegg: [C: 2] Fix @returns >> @return phpdoc [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156863 (owner: Ejegg) [20:35:43] Oh hey: That seems to be working. :) [20:35:46] (CR) Ejegg: [C: 2] Use public instead of var in classes [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156864 (owner: Ejegg) [20:36:02] yeah, good call on the re-order [20:36:15] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156865 (owner: Ejegg) [20:36:23] I'm just glad it was relatively self-contained. [20:36:24] (CR) Ejegg: [C: 2] Transliterate Worldpay post to ISO-8859-1 [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156866 (owner: Ejegg) [20:36:32] Or, you know: Completely. [20:36:34] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156867 (owner: Ejegg) [20:36:41] whew! [20:36:57] (CR) Ejegg: [C: 2] kill remaining calls to extract() [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156869 (owner: Ejegg) [20:37:07] (CR) Ejegg: [C: 2] Follow-up Ib0d0f6c: Fix qqq typos [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156870 (owner: Ejegg) [20:37:13] (CR) Ejegg: [C: 2] Localisation updates from https://translatewiki.net. [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156871 (owner: Ejegg) [20:37:22] (CR) Ejegg: [C: 2] one more extract to yank [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156872 (owner: Ejegg) [20:37:33] (CR) Ejegg: [C: 2] Rename GatewayForm to GatewayPage to distinguish from Gateway_Form [extensions/DonationInterface] (deploy-payments_1.22) - https://gerrit.wikimedia.org/r/156873 (owner: Ejegg) [20:38:11] ok, let me try this locally for a few minutes to make sure it's not totally busted [20:39:04] All merged in now, yeah? [20:39:09] yep [20:39:35] * K4-713 pokes repo a bit [20:40:23] Looks good from my end. :) [20:42:31] Gah. payments.error log is... hm. [20:42:48] That's an awful lot of people donating from Ways to Give in one patch. [20:44:01] oh? what's up there? [20:44:09] All the same ctid. [20:44:16] ...somebody is being special with us. [20:44:50] ccogdill: Ready for your daily fraud scramble? [20:44:57] uh oh [20:45:20] do you have anything I can look at? any chance it’s our same guy? [20:45:24] Looks to be ongoing. [20:45:25] he made 10 more donations this morning [20:45:43] This seems to be somebody else. [20:45:46] Maybe not... [20:45:55] hmm [20:46:03] where can I see it? what gateway? [20:46:23] I'm... coming at it from the most difficult way to diagnose all those things. [20:46:30] Give me a second to figure it out... [20:47:14] GC. [20:47:33] 4059976546 [20:47:44] ^^ order_id [20:47:50] That's just the last one. [20:47:53] There are probably more... [20:47:57] okay thanks! [20:48:02] Large amounts. [20:48:03] cc [20:48:19] ohh that’s the one I canceled! [20:48:25] OOOOO. [20:48:30] the good news is it’s obvious fraud [20:48:32] Exploding high-five. :) [20:48:37] How did you find it? [20:48:52] And: Would you like more order IDs that look to be the same fraudster? [20:48:53] the emails civi sends Rosie and me when we get a 500+ donation [20:48:56] yes please [20:48:58] oho [20:49:08] but yeah it took me all of 10 seconds to realize it was fraud [20:49:16] what with the gibberish name and all that [20:49:23] I didn't even get to the name. [20:49:46] it’s fghj [20:49:50] or some variety of that [20:49:53] They were just clearly trying to fuzz URLs. [20:50:07] looks like Michael has caught a bunch today too. [20:50:17] This is making me pretty happy. [20:50:29] I see 9 today from the same cc. 6 were canceled at 800 by us, 2 at are 600, 1 at 800 [20:50:35] which I’ll cancel now :) [20:51:28] ...I can use fredge for this. [20:51:33] O_O [20:52:32] ccogdill: There were 26 of them. [20:52:38] uf [20:52:45] okay so they’re using more than 1 card [20:52:51] can you send me another one? [20:52:59] I can send you all of them. [20:53:33] awesome [20:54:14] sent! [20:54:29] I didn't spend much time on the formatting, so let me know if it's... you know: Unreadable. [20:54:41] haha [20:55:10] Actually: Oooh, I just realized, a lot of these are duplicates. [20:55:30] yeah I see that already [20:55:33] Yeah, okay: Only nine. [20:55:45] ohh good! so we got them all [20:55:52] Oh man. [20:56:27] haha whew [20:56:30] how did you find these? [20:56:53] FYI you can see them all canceled here if you want to check https://docs.google.com/a/wikimedia.org/spreadsheet/ccc?key=0AtXB8bnAN7xVdDZILXVjcllrQVpNRk1nWWVLRUhhRVE&usp=drive_web#gid=0 [21:01:08] ccogdill: I did manage to find a few more, actually. [21:01:14] shoot [21:01:21] 24 in total. [21:01:31] :( [21:01:45] Hang on, let me make this easier to digest. [21:04:13] So, I made sure these are all distinct. And while all the others were based on one contribution_tracking id, these are all from the same IP address... and they all have very similar fraud scores. [21:05:51] I'm sad that most of these were not caught. [21:06:06] Time to tweak my nets, I guess. [21:06:55] that’s okay. that’s why Michael and I are around [21:07:01] on a call but I’ll jump on these right after! [21:07:21] No particular rush. [21:07:24] Thanks. :) [21:07:44] ejegg: How's it going over there? [21:09:32] i thought I broke sofort, but it doesn't seem to be working locally in master either [21:09:58] just want to see what's up with that, then I'm ready to pull the trigger [21:10:04] Oh, we haven't run sofort in... ever? [21:10:09] Possibly ever. [21:10:29] What's actually wrong with it? [21:10:43] 'unable to find a donation form matching your parameters' [21:10:44] Also, are you coming in through the office? [21:10:58] Ha. That's because it's disabled. [21:11:18] At least, that's what it says when it's disabled... [21:11:20] ah, I had it in my list of test links, so I thought I had turned it on... [21:11:48] Wait, what params were you providing? [21:12:06] And, are you using prod's DonationInterfaceFormSettings? [21:12:07] title=Special:GlobalCollectGateway&ffname=rtbt-sofo&payment_method=rtbt_sofortuberweisung&language=nl&country=BE&returnto=Thank_You%2Fen&amountGiven=¤cy_code=EUR&frequency=onetime&amount=200&uselang=nl [21:13:09] Hummmmm. [21:13:23] I take it back: That should work. [21:13:33] no prod's, but I do have rtbt-sofo enabled (I think) [21:14:40] Seems to be working on my local. [21:15:18] And I've got this setup for testing both prod's form settings and either master or deploy in DonationInterface. [21:15:47] i must just have screwed up something else. I'll take it working for you as good enough [21:16:10] Yeah, looks good to me. [21:16:47] ok, getting on to the deployment box [21:16:57] oh wait, should I do staging first? [21:17:00] Are you tailing the error log? [21:17:09] i should do that too... [21:17:19] Usually helps. :) [21:19:02] Oh, but hang on. [21:19:23] Did you... push the submodule update to the fundraising branch of core? [21:23:02] (PS2) AndyRussG: WIP Pager for campaigns on campaigns and banner pages [extensions/CentralNotice] - https://gerrit.wikimedia.org/r/156140 [21:24:18] pizzzacat, ejegg, AndyRussG: Something tells me that this deploy should trump standup. Any objections to the email version today? [21:24:49] I will never object to email standups [21:25:07] I used to feel that way too. [21:25:20] standups bum me out cuz they break up my day [21:25:28] Then I got bit by the meeting monster. [21:25:51] Now, every time there's a full moon, I... fill up everybody's calendars with event invites in the night. [21:26:00] awoooo [21:26:17] It's actually pretty scary. [21:26:42] np with e-mail standup [21:27:30] I like meetings 'cause it's an excuse to pry mind-numbing devices from my children (so they don't eat up bandwidth) [21:27:43] But since I already did that, e-mail is fine 8p [21:28:08] (we place a limit on how many My Little Pony videos they should watch per day) [21:28:54] * AndyRussG ducks and runs from MLP fans [21:31:00] But... dude. Friendship is less magical that way. :D [21:31:50] This was a suspiciously popular topic at wikimania. [21:32:17] Sadly, after too many hours it becomes a magical friendship virus that destroys motor neurons [21:32:32] I never said it was happy magic. [21:32:37] heheh [21:32:38] * AndyRussG also ducks and runs from promoters of chilrens' rights to illimited tablet usage [21:33:03] Yeah actually Rainbow Dash can be downright mean sometimes [21:33:07] * K4-713 goes moderately cross-eyed at fraud data [21:33:15] How do I catch this person. [21:33:24] honeypot? [21:33:39] (I have no idea of the details of the context...) [21:33:52] And, it doesn't matter: Rainbow Dash is awesome enough to get some minor behavioral concessions. [21:34:34] They have clearly figured out what the cool-off period is on velocity filtering. [21:34:44] ...the fraudster. Not Rainbow Dash. [21:34:49] :| [21:40:25] bah, submodule update got V-1 from phpunit-parser [21:40:45] I swear I didn't break the parser! [21:41:43] filesize(): stat failed for /var/lib/jenkins-slave/tmpfs/mediawiki-core-phpunit-parser/Foobar.svg [21:41:58] definitely not my fault. Just try to +2 it again? [21:42:08] oh dear. [21:42:23] Let me have a look... [21:42:31] Foobar.svg indeed [21:43:02] https://gerrit.wikimedia.org/r/#/c/156963/ [21:43:08] ha, thanks. [21:45:09] ...I haven't had to do that in a while. [21:45:23] Probably will get in trouble for it. [21:45:31] ooh, naughty [21:47:18] meanwhile, back on the deployment box, it appears to still be thinking it's update DonationInterface to master [21:47:59] What project are you updating? [21:48:08] oh wait, i actually want to do payments-wiki, not DonationInterface [21:48:13] Exactly. :) [21:48:23] and should probably do payments-wiki-staging first [21:48:28] yep [21:48:55] And while that project is currently a bit of a misnomer, it's running the orphan slayer every seven minutes. [21:49:19] fake-slaying real orphans? [21:49:19] I usually like to push to that and wait for cron to kick one off. [21:49:34] It's... complicated. [21:49:41] (bahaha) [21:49:59] Did I explain about the bit with the messages and antimessages? [21:50:08] yeah [21:50:31] That's the only thing that "staging" ever really does anymore. [21:50:40] oh, gotcha [21:50:58] OK, updated the checkout. now to sync it [21:51:04] Okay. [21:51:15] It's a good idea... to keep the treeish of the last known good pretty close by. [21:51:29] If the error logs start freaking out, revert to that. [21:51:29] good call [21:52:09] can do that with =rollback too right? [21:52:18] Er. [21:52:21] I don't know about that. [21:52:23] or so claims the -h [21:52:31] Huh. [21:52:36] anyway, I have the old revision [21:52:42] I've probably been doing it the old hard way. [21:52:58] cool. [21:53:59] ok, synced staging [21:54:34] can I look at that online, or is it strictly slaing orphans? [21:54:48] *slaying [21:54:52] Sadly, we lost the ability to actually look at it. [21:54:55] ok [21:55:00] But. [21:55:07] ...er. [21:55:18] There are ways to monitor. [21:55:28] oh? [21:56:18] * K4-713 reveals secrets, secretly [21:59:13] ejegg: It's gone once already, but if we wait like two minutes, it'll go again. [21:59:34] so, I'll update the code for the non-staging and be ready to sync [21:59:43] Cool. [22:00:41] You're good. :) [22:00:47] Fire when ready. [22:01:32] to those about to rock, we salute you [22:01:45] synced [22:02:01] Aaaaand, nothing is happening. [22:02:05] At all. [22:02:15] Should I hit it? [22:02:29] sure [22:02:53] I'll try a few clicks too, to make sure the forms load [22:03:03] Somebody's doing something. [22:03:13] Looks good to me. :) [22:03:52] woohoo! [22:13:34] Weird. [22:13:40] ejegg: Did you just hit up Worldpay? [22:13:52] yeah [22:14:03] ...whew. [22:14:06] Had to go straight to the special page [22:14:07] Carry on. [22:14:17] I was worried that was in a banner or something. [22:14:40] oh yeah [22:15:33] still not sure what data I'm actually seeing in the Worldpay console. I tried a slightly different range of characters this time [22:16:01] but as before, I see a much different interface than the screenshots pats sent, with no data since april [22:17:09] I think you need to be in... [22:17:14] ...er... [22:17:39] Payment Trust? [22:17:50] Do those two words make sense together? [22:17:59] yeah, let me see if I can get there [22:18:53] ejegg: Oh, guess what? [22:18:58] what's up? [22:19:09] Since you just deployed some stuff, you get to move some cards around. [22:19:16] oh right! [22:19:17] yay. [22:19:49] I think this means there are only two things left in pending. [22:20:11] was 'block dd on the backend' part of what I just did? [22:20:25] Yep [22:20:43] Well... either that or I did it and got hijacked before... [22:20:50] ...mentioning it. [22:21:14] oh right, that was the form settings change [22:21:49] ka-blammo! [22:22:00] Woo, look at our velocity graph! [22:22:17] It... fills in that slump behind it. :) [22:22:26] heh, nice [22:50:58] Okay guys, I'm going in for fraud filter adjustments. [22:51:18] ccogdill: ^^ [22:51:31] Please do let me know if we start seeing people complain that they can't donate. [22:51:33] K4-713: think I'm good to step away from the machine for a bit? [22:51:37] yep! [22:51:37] okay [22:51:41] I'll take it from here. :) [22:51:47] I’ll keep an eye out for a crazy amount of 600s :) [22:51:52] thanks Katie! [22:51:57] ejegg: I'm going to need to monitor after my fraud changes, anyway. :) [22:52:05] So far hae only seen some 'ffname'' is invalid [22:52:16] Yeah, and that's an amazon bug. [22:52:25] There are *so many* of those in the error log. [22:52:33] rockin. will be watching email in case anything arises [22:52:44] Perfect. Thanks! [23:27:07] !log Updated fraud filters on payments [23:27:16] Logged the message, Master [23:27:24] ccogdill: There it went. [23:27:29] Fraud filters are updated. [23:28:24] woot! [23:28:35] are you just trying to catch pesky IPs more? [23:28:52] Actually, I'm trying to stay away from IP filtering. [23:28:57] ohh [23:29:02] At least, specific ones. [23:29:15] I did alter the velocity filters, though... [23:29:32] ahh okay. I guess that can do the same thing as far as most of these are concerned [23:29:50] Would it help you, if I made a human-readable log of what I changed, on collab or something? [23:30:12] ummmmm [23:30:21] Yeah, actually... blocking one or a range of specific IPs will only buy you a few minutes, usually. [23:30:22] I guess I’m not totally sure how we’d use it [23:30:40] because if it seems like there’s a gap, we’re still going to tell you what needs to be changed [23:31:02] Well, if you suddenly get a bunch of complaints from people, it might make it easier to track down the issue? [23:31:09] sure [23:31:14] I won’t say no to more info! [23:31:29] I could swear somebody floated this idea last time we had to turn some knobs in a hurry. [23:31:50] mmm sounds like that could be an Anne thing [23:31:58] Cooooould be. [23:32:14] but yeah! especially if you weren’t around, that would be extra helpful [23:32:38] Yeah, I mean... sometimes it's helpful to be able to remember what the heck we were trying to do last time. [23:32:56] The nature of these things is that they're difficult to pull out one reason for anything. [23:33:28] So, even a ton of code comments isn't usually sufficient. [23:34:04] Okay, I'm just going to assume that Anne told me to, and do it. :) [23:35:12] haha there we go [23:35:37] let me know when it’s up and I’ll see if I can make sense of ti [23:35:39] *it [23:48:00] ccogdill: Done. [23:48:14] https://collab.wikimedia.org/wiki/Fundraising/Engineering/Antifraud_Filters [23:49:04] I can't even describe how much nicer this is with fredge. [23:49:24] ..."SO MUCH" seems like an understatement. [23:49:34] awesome, thanks! so it’s basically a scoring system? [23:49:36] makes sense to me [23:49:39] Yep! [23:50:01] I don’t know much about fredge, but I like it [23:50:07] The trick, is picking what to add points for, that won't put regular people over the edge. [23:50:40] It's usually a bad idea to rail one of the things we check. [23:52:03] yeah [23:52:31] but I can see where you were going with taking away extra points from GB [23:52:47] this wasn’t the first case I’ve seen of a Russian IP using GB as their location [23:52:50] can’t say why [23:54:50] ha... careful, though. Public. [23:55:11] cough [23:55:14] haha [23:55:14] :D [23:55:43] No, it's... like the fraudsters in the usual places just pick a country to pretend to be from. [23:55:51] They'll do that as long as it works. [23:56:01] it makes sense [23:56:13] yeah. [23:56:42] Some days I think we should vary the fraud score numbers by some tiny fraction. [23:56:49] Like, automatically. [23:57:04] as a test? or you mean depending on where we’re fundraising? [23:57:16] No, I mean more or less randomly... within reason. [23:57:35] I'd want to come up with antirules at that... point... holy crap. [23:57:38] That's actually a good idea. [23:57:53] haha breakthrough? [23:58:03] Just stack a bunch of rules for things that *should* work instead of punishing... [23:58:22] Oooooooooo. [23:58:53] can’t say I see where you’re going but it sounds promising [23:58:55] I need to think about this. [23:58:58] some days I feel like I don't know how to computer anymore [23:59:06] DOES NOT COMPUTER. [23:59:13] loal [23:59:41] If I had rules and antirules... [23:59:51] ...it's just algebra at that point.