[15:52:38] good morning awight! [15:53:21] I'm going to sign up for a deployment slot on Monday to put up the CN json dependency fix [15:53:58] would you be available 11-12 pacific time to back me up? [16:03:02] ejegg: mos def [16:03:09] awesome, thanks [16:03:15] Sounds fun :) [16:03:33] not too much to worry about, I hope [16:03:40] ejegg: I found this to investigate, btw https://gerrit.wikimedia.org/r/#/c/137960/ [16:03:50] are you still on the WP decimal thing? [16:03:56] if not, I'll grab that [16:04:03] i had some theories, but they didn't pan out [16:04:06] please go ahead [16:04:08] k then [16:04:23] yeah, that commit did look suspicious! [16:05:14] though I can't see how it would screw up actual WP transactions when the WP gateway doesn't have the disallow_decimals key in its order_id_meta [16:05:37] well, order_id_meta is still in its infancy... [16:06:26] baby just acting erratically, you figure? [16:07:12] Hehe we took kid to the dirtiest hippie event yesterday, an heirloom veg/hog thing [16:07:48] how'd she take to the hogs? [16:07:56] her last hurrah was both assisting and battling a 2.5-yr-old in spinning a wheel of corporate personhood exhibit [16:08:12] hogs were a fiction, fr some reason. fully verbal presentation. [16:08:22] But the rooster crowing contest, etc, were all to real [16:08:26] oo [16:08:44] aww, i had a vision of kids riding razorbacks on tiny saddles [16:08:50] ino. [16:09:12] btw I'm not sure sheep shearing is an appropriate spectator event... [16:09:19] no? [16:10:06] it has these creepy overtones of love and fear... [16:10:52] kids need to know about the sheeple [16:11:53] oof knowing is not not the half of it though. Maybe if they paid each sheep before razing... [16:12:28] not too much, mind u, just enough that it was clear who was the property... [16:12:33] heh [16:13:06] Hi. Does anyone know how to fix this? http://en.wikipedia.org/wiki/MediaWiki_talk:Monobook.css#.23coordinates [16:13:10] but yes, the hippies made me feel clean. I love them for that. [16:13:14] I can think of super evil ways [16:13:26] but I suppose there would be an easier way [16:13:50] Glaisher: it looks like you're right, the CN banner css needs fixing [16:13:57] lemme see who owns that... [16:14:27] awight: It's not limited to those banners only [16:14:38] For all banners at enwp in monobook [16:14:42] copied and pasted bugs... the finest sort [16:18:41] Glaisher: thanks for catching this. I think the best way to deal with it would be to file a bugzilla ticket in the CentralNotice component, then hopefully the code can be correct in one banner and propagated to the others. [16:20:06] hmm, also, I'm getting a 404 on the closewindow png! Might be specific to that monuments banner, though - I don't see $wgNoticeCloseButton overridden anywhere in mediawiki-config [16:22:35] ejegg: oof, which banner link specifically? [16:22:53] I get the pngs [16:23:25] The Summer of Monuments banner close src is //bits.wikimedia.org/wiki/skins/common/images/closewindow19x19.png [16:23:38] w/o a protocol? [16:23:40] rather than the one from config at upload.wm.o [16:23:59] protocol relative, so that should be ok [16:24:20] I don't see a SoM banner in that list, can you paste it? [16:24:40] trying to track it down [16:24:48] you mean the banner json? [16:24:55] erm no the wikipedia link [16:25:22] was following the link Glaisher posted, as a logged-out user [16:25:30] http://en.wikipedia.org/wiki/MediaWiki_talk:Monobook.css#.23coordinates [16:25:54] there are 3 links... maybe you're talking about a random banner you got when going to that page? [16:25:54] https://meta.wikimedia.org/wiki/Special:CentralNoticeBanners/edit/wsm_final [16:26:03] it uses one from bits [16:26:13] Glaisher: thanks! [16:26:27] ah [16:26:34] that explains the reason why there is no close button on that one [16:26:37] lemme fix that [16:26:45] oh good [16:26:48] that issue was also raised at VPT [16:27:04] //upload.wikimedia.org/wikipedia/foundation/2/20/CloseWindow19x19.png [16:27:08] if you need it [16:27:10] I was just gonna commiserate with ejegg over his not being in the centralnotice-admins group [16:27:28] ejegg: you should ask pbeaudette or jalexander about that [16:27:39] oh, i guess so! [16:28:05] you'll eventually need it... and probably during a crisis. [16:28:21] I love these first out-of-context lines in the morning. [16:28:28] * awight screws together googly eyes at K4-713 [16:28:32] :D [16:28:58] Hi there. [16:29:07] awight was just explaining why his motorcycle carries a thermonuclear bomb wired into his brain stem [16:29:19] "Low Impulse Control" [16:29:25] heh [16:29:27] well, what's left of my brain stem after the accident [16:29:56] So... totally normal Friday, then. Carry on. [16:30:06] for some reason, being a mostly cybernetic organism is not helping me with either impulse control, nor drinking problem. [16:30:24] i thought the ethanol was a power source! [16:30:44] fixed. the coordinates issue was originally raised at http://meta.wikimedia.org/wiki/Talk:CentralNotice/Calendar#Problems_with_Summer_of_Monuments_banner_and_geocoordinates_template_on_enwiki [16:32:34] awight: Oh! Let me not forget to do this, by trying to do this now: Do you remember if your WP audit nightly parser classes support refunds and chargebacks? [16:33:42] And, ah... do you remember the bit where we didn't know what, in an ideal universe, ought to happen if we get a refund on a transaction we don't know anything about yet? [16:34:04] Not... that I think we're anywhere near an ideal universe. [16:34:19] I just want to know what we all think should be more or less easy to do, later. [16:34:22] Glaisher: hrm. On a tangent, I did not realize that there were people who could edit banner content without being in the centralnotice-admins group. [16:34:50] awight: meta sysops do have the centralnotice-admin by default [16:35:09] K4-713: in theory we support refunds, but at the time of writing this note there has never been a refund in the audit logs. [16:35:27] I got a transaction ID for one last night, so I'm going to start poking at that. [16:35:47] Happily, it was before they started generating 0-byte files and nothing else. [16:35:53] Glaisher: ah interesting, thx for the info. You might want to spread the word among people who do CN work among this group, that there's a low-traffic list https://lists.wikimedia.org/mailman/listinfo/centralnotice-admins [16:36:05] K4-713: yeah. that's an infuriating [16:36:07] "feature" [16:36:26] which we are supposed to interpret as, "no money came in" [16:36:40] cos it's so hard to write a proper audit file with a zero in it. [16:36:50] Well, we know that's not exactly true, though. [16:36:52] thanks. never knew that that list existed [16:37:10] ejegg did a transaction in prod that didn't come through at all. [16:37:36] grrrr [16:38:23] Though... wait. Possibly I completely forgot that everything is a different account with them, and... unless it was on a European credit card, it was probably on the US account which doesn't have anything going on right now. [16:38:33] ...do they split that way? [16:38:36] GRR [16:38:40] I'm sure they do [16:38:44] OH RIGHT. [16:38:57] wait, what would be the worst thing they could do... [16:38:58] Now I remember why we wanted the order ID to be based on contribution tracking with them. [16:39:04] yep [16:39:15] ffffffff okay, so, that's broken right now. [16:39:38] K4-713: fwiw, I'm jabbing at that .0 issue now [16:39:44] Wonderful. [16:40:06] You have installed PHPUnit via PEAR. This installation method is no longer [16:40:09] AARGH [16:40:15] That again? [16:40:19] That... still? [16:40:27] That... forever? [16:40:33] I think it's cos payments is on a fossilized mw-core branch [16:40:54] Hmn. Is there a card for that? [16:41:01] uh no [16:41:08] we just have to update payments one day, anyway [16:41:26] Seems like something we either do nowish, or in January. [16:41:37] so, does bringing it up to date mean us re-reviewing each and every patch from 1.22 -> 1.25 ? [16:41:44] Not even. [16:41:46] hehe [16:41:48] phew [16:42:04] I think the PCI rules are, *some*body needs to have reviewed [16:42:09] Indeed. [16:42:14] And clearly, that's true. [16:42:53] ok, cool [16:43:17] Geeze, can you imagine? [16:43:30] "Everybody stop doing things and read this code for a month." [16:43:48] Can someone remind me htf to run phpunit on DI? [16:43:56] tests/phpunit$ php phpunit.php --group DonationInterface [16:43:57] fail [16:44:06] really? [16:44:16] How is it failing? [16:44:25] yah the packaged thing [16:44:25] Fatal error: require_once(): Failed opening required 'PHPUnit/Runner/Version.php' (include_path='/home/adamw/work/payments:/home/adamw/work/payments/includes:/home/adamw/work/payments/languages:.:/usr/share/php:/usr/share/pear') in /home/adamw/work/payments/tests/phpunit/phpunit.php on line 107 [16:44:46] I've worked around this so many times now... [16:44:59] I think it burned a hole in my brain and fell out the other side. [16:45:23] /srv/mw_testing/tests/phpunit$ php phpunit.php --group DonationInterface is exactly what I'm doing. [16:45:44] PHPUnit 4.0.17 by Ego Guy? [16:46:30] Incidentally, it's complaining about buildRequestXML in the amazon adapter not being compatible with the one it's overriding from the main adapter object, but otherwise the tests pass. [16:46:42] But, no. I'm all 3.7.32. [16:47:12] ohhh, because of the new encoding parameter I added. How did I not see that complaint? [16:47:20] Striiiiiiict. [16:47:24] :) [16:47:29] ejegg is so strict. [16:47:48] I'm apparently stricter. [16:47:52] odd - in the crm tests, i get tons of strict warnings [16:47:57] errors [16:47:59] lol I should spend more time in IRC [16:48:25] Duh. [16:48:40] I'm about to upgrade payment MW unless someone stops me. [16:48:41] . [16:49:14] awight: Are you... expressing intent to upgrade mediawiki core on payments, on a Friday? [16:49:19] oh, I've chipped a nail, nvm [16:49:45] Just checking. (bahaha) [16:49:51] wait, try make phpunit FLAGS="--group DonationInterface" [16:50:04] ejegg: what is your phpunit --version? [16:50:21] 3.7.28 [16:50:24] see... there's this atrocious bug that was affecting MW for muy long. [16:50:27] ah [16:50:29] Oops, meetingtime. [16:50:38] yeah, so phpunit is only packaged as a... pear archive I believe... [16:50:42] even historical versions, now. [16:50:49] I'll let 'em know upstairs that we have to upgrade in the next week or so. :) [16:50:52] and MW was twiddling internals thence incompatible [16:50:58] K4-713: oh god [16:51:03] o rly? [16:51:09] Seriously though... now or January. [16:51:10] s/thence/thus/ [16:51:26] K4-713: it's probably easier to upgrade than workaround this issue [16:51:31] aye. [16:51:32] :-/ [16:52:01] Also, something is definitely going to come up in November, and somebody is going to try to help us, and then we'll get "Why in the hell are you all the way back there? Upgrade now." [16:52:16] Go ahead and put that on the calendar. [16:52:19] grr cos we are a snowflake [16:52:22] mhm [16:52:50] I'm tired of being a snowflake. [16:53:21] The thing about snowflakes: they are *never* captured alive [16:53:37] Even if they were: What next? [16:53:42] Badness. [16:53:44] cyanide tooth [16:53:53] The baron! [16:53:53] Falling for a while, and then badness. [16:54:32] Aaaaaanyway... kbye. [17:16:04] hey ejegg... question about oanda [17:16:29] what's the question, atgo? [17:16:41] so... in the card you said you're taking the midpoint [17:17:03] but there were other options [17:17:06] yeah, they have a bunch of options [17:17:29] i think we should probably confirm with pats which is ideal, yeah? i can take that on if you'd like [17:17:49] sure, thanks! http://developer.oanda.com/exchange-rates-api/v1/rates/#input-query-parameters [17:18:04] the 'fields' parameter lets you choose which data point [17:19:01] we might want 'lows' instead of 'midpoint', and we'd read out the 'low_bid' to see the minimum rate offered [17:20:44] yeah Pats would be the authority here. fwiw, the currency conversion we do in the CRM is known/designed to barely land in the ballpark, its purpose is for comparison and rough reconciliation. [17:21:04] oh yeah, that hardcoded list [17:21:19] We're probably best keeping it the same as whatever dataset oanda has historically fed us, for consistency in banner testing [17:21:31] hardcoded list is something else and even more horrid [17:21:35] good point [17:21:40] oh right, that list is in DI [17:21:47] yah it's just for validation [17:22:39] so do you want me to follow up with ppena? [17:23:52] one sec, gonna see if I can find which we used to get [17:24:12] ah, it was definitely a 'bid' value, though low or high i'm not sure [17:25:34] so maybe average bid is the thing to get. Yeah, I suppose we should let ppena weigh in, but please mention awight's concern about historical comparison [17:26:44] PPena: we were just talking about asking for your input on something! [17:27:15] Our exchange rate provider is updating their API [17:27:40] oops, there she goes. atgo, want to follow up? [17:27:52] i will [17:31:07] awight: would anything else besides recurring payment installations might not have records in contribution_tracking? [17:31:15] oof [17:31:30] ejegg: yeah, that should almost be its own sprint [17:31:34] hah [17:31:40] i mean, spike [17:31:51] offline imports get them, right? [17:31:53] Yes, but I can't list the cases [17:31:56] they _should_ [17:32:00] cool [17:32:08] There are definitely a ton of exceptions though [17:32:58] It'll happen pretty often that we can't find the originating CT record when creating a contribution. [17:33:15] Those should be assigned a new, empty CT record I believe, but... [17:33:22] ahh, gotcha [17:34:30] select count(*) from civicrm_contribution c left join drupal.contribution_tracking t on t.contribution_id=c.id where t.id is null; [17:34:34] 725442 [17:34:52] not as common as I thought, but we should be tracking why these were not tracked :) [17:35:19] yeah, ccogdill was wondering about those in the results table - I shoulda just included the sitenotice and email rows! [17:35:52] Manual entry? [17:35:52] I think it was useful to unveil the entire picture [17:36:04] K4-713: yah definitely some of those [17:36:12] ...what happens with check imports? [17:37:22] K4-713: those are siphoned through the wmf_civicrm code which will assign a new CT record when necessary [17:37:39] k, cool. [17:37:42] select count(*), source_type [17:37:42] from civicrm_contribution c [17:37:42] inner join wmf_contribution_extra e on e.entity_id=c.id [17:37:42] left join drupal.contribution_tracking t on t.contribution_id=c.id [17:37:45] where t.id is null [17:37:47] group by source_type [17:37:52] | count(*) | source_type | [17:37:52] +----------+-------------+ [17:37:52] | 350643 | NULL | [17:37:52] | 255 | audit | [17:37:54] | 100226 | direct | [17:37:57] | 101798 | listener | [17:37:59] | 415 | payments | [17:38:20] K4-713: I was saying, let's add a spike to track down untracked contribs [17:38:45] I think I missed the bit that explains why this is coming up now. [17:39:23] how about 'spontaneous'? [17:39:53] That's usually somebody from outer space. [17:40:20] K4-713: this is about the report ejegg sent ccogdill re: dec 2013 email affect on donors [17:40:31] ah, okay. [17:40:58] ejegg: Spontaneous means somebody came in to the donation pipeline with none of the utm vars set. [17:41:12] So, they paste donate.wikimedia.org into a browser or something. [17:41:15] so if I go directly to the gateway chooser, it's 'spontaneous'? I notice if I hit ways to give, it decides i came via a sitenotice [17:41:22] yep. [17:41:22] ok, cool [17:42:04] ejegg: The sitenotice thing should be brought up with the-wub. [17:42:21] Ways to give should be "waystogive" or something. [17:42:49] "sidebar" I'd almost believe. [17:42:55] Almost. [17:43:20] But, the thing is, with a lot of these on-wiki links, they're super easy to screw up one place and nowhere else. Or everywhere. [17:43:48] Don't a lot of banners link to 'ways to give'? [17:44:13] Yeah, but we don't actually keep the campaign data when they bail out and go through WTG. [17:44:29] huh [17:44:32] Everything should link to ways to give. [17:45:16] File this, with everything else, under "stuff we could do if we had time". [17:45:18] so ways to give should really be made smart enough to check referrer or a qs var or something and pass along the original donation inspiration [17:45:30] Ways to give is never going to be "smart". [17:46:01] cookie? [17:46:02] well, i guess javascript could check a qs var if we wanted to add that to all wtg links [17:46:16] If we changed all the on-wiki links to WTG to pass in utm data through the URL, and then had all the WTG pages propagate those through... [17:46:25] But, as I said: Nobody is going to have us work on that. [17:47:16] Cookie? Argh. I don't want to have to think about when to reset that. [17:47:21] Like, ever. [17:48:05] Guess what? Up until I went nuts last year, we couldn't even track people through the static "start over" link after a single failed payment. [17:48:30] And even then, it was like "Why are you working on this?" [17:48:35] gee, you should go nuts more often! [17:48:35] K4-713: oh that reminds me. Toby is sold on your flipbook banner experiment, where u show a different banner each time [17:48:48] ejegg: +1 [17:48:55] I have a lot of ideas. [17:48:59] lol [17:49:05] Most of them are not... work-related. [17:49:14] I'll shut up now. [17:56:34] Cow tipping. Good idea. Meet me in Bakersfield tomorrow. [17:56:48] I must be emitting something. [17:56:57] more tin foil! [17:57:03] Seriously. [17:57:25] There's some stuff in there that would cause fun problems. [17:57:37] ...which I currently do not have time for. [17:58:11] * K4-713 orders more chicken wire for portable Faraday hat [17:59:13] bring on the lightning! [17:59:27] stupid deprecated Sky God... [17:59:56] awight: going to be late to major gifts [18:01:08] atgo: it's 11:30-12 today, if that helps [18:06:33] We need an example localsettings for DI stuff. [18:06:55] It shouldn't be this bewildering to develop from another machine... [18:07:14] maybe, the defaults should be to turn all the lights on. [18:07:55] awight: Ah... if the defaults were to fail open, payflowpro would be live. [18:08:00] (PS1) Ejegg: Add phpseclib and composer autoload files [wikimedia/fundraising/crm/vendor] - https://gerrit.wikimedia.org/r/160042 [18:08:06] K4-713: well, that could default to rm -rf [18:08:26] awight: I'm not really comfortable designing defaults for anything but production safety. [18:08:36] (CR) Awight: [C: 2] "Wahoo!" [wikimedia/fundraising/crm/vendor] - https://gerrit.wikimedia.org/r/160042 (owner: Ejegg) [18:08:43] (CR) Awight: [V: 2] "Wahoo!" [wikimedia/fundraising/crm/vendor] - https://gerrit.wikimedia.org/r/160042 (owner: Ejegg) [18:08:45] Which isn't to say that we shouldn't nuke that rat's nest. [18:08:49] It's awful and I hate it. [18:08:57] ty awight [18:09:03] ...but it should still fail closed in a reasonable way. [18:09:18] I could be inventing problems, though. I'm just finding things to blame for why I can't run the unit tests. [18:09:23] No tests executed! [18:09:43] awight: I have a totally other checkout of DI for running tests. [18:09:59] ...because all the things in localsettings interfere with the localsettings that come with the tests. [18:10:06] Jenkins instance has nothing. [18:10:08] So should we. [18:10:15] :-} [18:11:51] (PS3) Ejegg: Add composer config, vendor submodule, and phpseclib [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/159210 [18:14:47] (CR) Awight: [C: 2] Add composer config, vendor submodule, and phpseclib (2 comments) [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/159210 (owner: Ejegg) [18:15:22] aww yeah [18:15:41] eew yeah :p [18:16:46] Tests: 185, Assertions: 299, Failures: 22, Errors: 41. [18:16:54] on a roll! [18:17:08] Oh. I'm out of hit points. [18:17:19] skillgrind for a bit. :) [18:17:27] Maybe we have a macro for that. [18:18:02] damn. Now I'm worried that people actually say that. [18:19:19] bahaha, you guys. In a commit message: "This patch no longer contains ghosts." [18:21:59] * awight raises hackles that said commit message does not seem to exist [18:22:34] It's in CRM. [18:22:43] ah thank you, i see now you are busy blaming yourself :p [18:22:55] Something in there is totally still haunted. [18:23:07] Error: Class 'CRM_Core_DAO' not found in /srv/crm/sites/all/modules/wmf_civicrm/wmf_civicrm.module, line 1302 [18:23:13] That's clearly not the case in prod. [18:23:20] who's the jerk that... oh, i'd better scratch some sand over it [18:23:24] um. [18:23:38] yes that's a failure to call civicrm_initialize() [18:23:41] sorry it's still a thing. [18:23:49] Arghbargle [18:23:51] Okay. [18:23:52] Thanks. [18:24:10] I think you just saved a couple days of my life, actually. [18:24:40] now, 20% more time available as an undead! [18:25:56] awight: Yep, that did it. [18:29:01] ejegg awight i'm going back to ask pats that question and... honestly a little lost on what the question is. we want to use the same as we did historically, right? but wouldn't that be more visible to tech than to pats? [18:29:24] since it is not actually related to finance reconciliation? [18:31:30] atgo: historically, i know we used a 'bid', so the question is just whether to use the day's average bid or the low bid [18:32:16] sorry, maybe oanda has docs for the old interface that tell us which that was. then we don't need to bother pats [18:35:00] ejegg hi [18:35:06] hi ppena [18:35:07] ejq soryr, just out of a meeting- shoot! [18:35:16] :) [18:35:59] we're updating the way civi gets exchange rates from oanda, since they're killing the old way we got them. [18:36:42] I think the old way gave us the latest bid for the foreign currency at the time we requested [18:37:10] ejegg ok [18:37:21] the new way lets us ask for average bids, low bids, high bids, or the midpoint between avg bid and avg ask [18:37:40] oh great! [18:37:46] you wanna know whch one would be best? [18:38:06] low bid would be the most conservative [18:38:29] do you have a preference? [18:40:06] well so this info comes real time or once a day? [18:40:38] This is once a day. So avg bid might statistically differ least from the old way, if we want to avoid skewing historical comparisons for banner tests [18:40:45] Im checking with Finance to see what bid they use on their accounting system, so that could match [18:41:57] if its once a day, it is at the end of the day, at market close? [18:42:00] could you confirm? [18:42:21] not sure when the job runs - let me check [18:43:44] is it easy to change afterwards? If so, I would say lets go with average, and wait for Finance confirmation. But if its hard to changem then I would rather wait [18:44:10] I think I could make it configurable [18:45:01] I'll try that out [18:45:31] thanks! [18:45:41] ty for weighing in [18:45:42] and yeah whenever you find out when they give us this rate wuld be great [18:46:23] I thought it was real time- how can multicurrency donations get into civi throughout the day and wait until once a day to get the ccorrect converted rate? :) [18:46:28] K4-713 hi [18:46:31] K4-713 there? [18:46:34] yep! [18:46:38] PPena: What's up? [18:46:39] K4-713 WP form not working [18:46:43] orly [18:46:46] click on continue and doesnt even move [18:46:53] ...wait, this sounds familiar. [18:46:58] did we deploy the country fix? [18:47:01] ejegg: ^^ Didn't you just... ha. [18:47:04] Guess not. [18:47:39] want me to get that now? [18:47:50] Nah... [18:48:03] We're not quite to the point of Friday Deploys yet. [18:48:12] Confusingly, it's not in Mingle. [18:48:12] ah right! [18:48:20] Or, rather, not where I'd expect it to be. [18:48:22] oops, i meant to add that [18:49:05] yeah, it's in pending deployment, card 1916 [18:49:16] PPena: Okay, shoot. Yep, it's broken, but we'd rather not worry about this until Monday or we might be broken all weekend, and nobody wants that. [18:49:51] ejegg: Oh, ha. It says "world pay" instead of "worldpay" and... [18:49:58] * K4-713 looks sad [18:50:08] I see it now. [18:50:15] * K4-713 adjusts brain [18:50:25] pattern matching! [18:51:14] Apparently I was personally running in high availability / questionable accuracy mode just then. [18:51:22] heh [18:52:18] K4-713 cool-should I just forget it and try again Monday? [18:52:34] PPena: Yeah. We'll let you know when it should be ready. :) [18:52:39] Sorry about that. [18:54:02] PPena: did you see pizzzacat's question about the carte blue logo? [18:56:15] atgo nope, let me have a look [18:56:20] is it irc? [18:56:29] email [18:59:49] K4-713 Lee's? [19:00:19] I went there yesterday, but: Yes. [19:00:37] nice [19:00:43] I require a nondescript foodball that won't grab attention. [19:00:45] wooo [19:00:53] mmm fooodballll [19:02:57] * awight makes sign of cross over gruel [19:03:02] 'speed [19:42:54] (PS4) Ejegg: Add OANDA and ECB importers, update with fallthrough [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/159347 [19:44:44] (PS1) Awight: Clean up testhack [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/160072 [19:45:11] (CR) jenkins-bot: [V: -1] Clean up testhack [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/160072 (owner: Awight) [19:46:42] (PS2) Awight: Clean up testhack [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/160072 [19:48:04] K4|lunch: can you share how you found the June cutoff date for WP order_id goodness? [19:48:12] payments logs? [19:52:53] awight: I looked at WP transactions in civi. [19:52:58] Those dates come from the last two. [19:53:11] Or, at least, they were the last two yesterday. [19:53:49] We only had the one screwed up one that ejegg initiated, and the first one before that (not screwed up) was two months prior. [19:54:02] I did, however, confirm via payments logs. [19:54:42] kthx! [19:58:27] there's a clue: order_id != ctid for the screwed-up one. [20:14:01] K4-713: to get the percentage of fraudulent transactions, that's just the percentage of the payments_fraud rows with validation_action = reject, right? Or do we compare rejections to the larger number of rows in payments_initial? [20:14:24] woot! [20:14:38] awight: did you find the culprit? [20:14:41] This is a conversation we could not have had a few months ago [20:14:58] no, just happy u can actually get a percentage on fraud with just a SQL query. [20:15:07] you mean i've finally gotten up to speed :) [20:15:09] ? [20:15:19] oh, you mean the data is there! [20:15:25] yessir exactly [20:16:25] hehe, that ejegg guy, he keeps just tweaking out on really long, difficult Civi stuff, when we were hoping he'd be in more meetings and sipping by the beer cooler [20:16:49] when will he get up to speed and slack off?? [20:16:54] we can ignore payments_initial to get the fraud percent though, correct? We're only interested in fraud as a percentage of transactions that people tried to follow through, not transactions they may have abandoned. [20:17:46] good question... keep pinging K4-713 :) [20:17:56] K4-713 ^^^ [20:18:46] What kind of % fraud are you looking for, I guess? Probably the one that matters, like you're saying--number of times the processor or our filters rejected someone... [20:19:00] what are the non-rejected rows? [20:19:04] actually, I should ask Sherah [20:19:10] ie, how do we know they're fraud? [20:19:11] 'process' [20:19:29] the risk score is over the limit for the rejected ones [20:20:34] so, 'suspected fraud' would be more accurate [20:20:56] ok i see, then yeah definitely, you can't use the incomplete rows in your ratio cos we never calculated a fraud score [20:21:46] cool, fewer joins! [20:35:03] ejegg: finally, one clue: you got yr order_id from the amazon gateway and it was reused by WP [20:35:32] from the amazon gateway??? [20:35:54] Oh snap, was this just stale session data from me messing around with forms? [20:36:05] I can't prove it was you, but the same number appears a few minutes prior to yr WP attempt [20:36:08] yeah [20:36:14] payments-amazon_gateway-20140829.gz 18956202:5017225267 [20:36:30] still... that's a valid issue I believe [20:37:15] well, i hope it wasn't anybody else. that would be a bigger issue! [20:40:40] K4-713: so, where is the stuff that clears order_id if you change payment methods? [20:40:56] I see the things you added to gateway.adapter, but... [20:41:52] yeah I don't see anything special when u retry with a different gateway [20:43:18] awight ejegg K4-713 which tech area is "payments" [20:43:19] ? [20:43:38] atgo: DonationInterface... [20:43:45] hokay thanks [20:43:50] atgo: hey, I just had a panic attack about the GR-WMF checkin [20:44:07] was... anyone there? [20:44:10] me! i was there! [20:44:11] :) [20:44:18] oh wow. thank you [20:44:31] i do those weekly with them, so no big deal. [20:44:46] I still haven't given the new phase 2 cukes a technical review [20:44:57] pls be my conscience about that? [20:45:25] mmm, phase 2 cucumbers [20:45:51] I prefer the quick, briny ones [20:46:04] sound like they'd be good in a Tom Collins. Phase 2 is liquid? [20:46:21] awight: yea that would be rad if you could.. i think it's pretty good from a user perspective [20:46:23] eeew [20:46:27] but that's not the biggest chance [20:46:29] great news! [20:46:34] change* [20:46:59] Also great to hear that cucumber is working for major gifts [20:47:09] everyone - is this something we still need to deal with? looks like it's on WP side? and also not a problem... https://wikimedia.mingle.thoughtworks.com/projects/online_fundraiser/cards/1945 [20:47:15] awight yeah they realllly liked it [20:48:02] atgo: looks like ejegg closed it [20:48:18] says backlog [20:48:20] their audit file management is despicable [20:48:25] yeah... um status [20:48:38] oh right, i just updated description [20:48:54] maybe someone should pester WP before we close it? [20:48:57] Looks like the conclusion is, we owe them a peeved call [20:48:58] yeah [20:49:24] ok... i have an opportunity to talk to them in 10. [20:49:29] bah [20:49:34] 'swounds [20:49:46] so let me make sure i understand the issue. files were generated that were empty but shouldn't be? [20:50:07] that's sort of water under the bridge [20:50:21] the smoking gun however is that we made a donation 8-28 and that hasn't appeared yet. [20:50:25] But [20:50:46] There is some nonsense about settlement, which might not have happened [20:51:06] ugh. right, there needs to be a balance above some threshold before they bother to let us know they got anything at all [20:51:11] we really have to fire them. [20:51:18] ooooh ok. i'll confirm that that's the situation [20:51:23] so we made a donation 8/28 for how much? [20:51:29] $1 [20:51:36] donor's name was [20:51:37] Elliøtt [20:51:38] :p [20:52:01] ha for real? [20:52:06] testing out the encoding? [20:52:09] well... yeah [20:52:45] hey PPena can i join the WP call for a hot minute today? just one quick-ish question [20:52:47] yep [20:54:28] (PS1) Awight: Tests for WorldPay order_id generation [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/160089 [20:55:43] atgo: you have my blessing to shout a bit more about how stupid and disrespectful a zero-byte audit file is... [20:55:58] what would you prefer... something that says "this is empty"? [20:56:02] yah [20:56:33] The point I tried to make with them, months ago, is that other faceless processors such as PayPal will often generate zero-byte files when something is badly broken on their end. [20:57:00] It's much more polite to send us a file like you described: "0 records, thank you for your business" [20:58:02] mmk [21:05:42] awight: Aren't you gone yet? [21:05:45] Sorry, I was in a meeting. [21:06:06] gone? [21:06:09] Do you need me to throw some chicken bones at DonationInterface? [21:06:33] oh right. No, the patient is shoveling dirt while balanced on her remaining stump. [21:06:36] not col. [21:06:43] awight: Er... [21:06:54] Do you need to go get that? [21:07:01] erm K4-713 u might want to see this: https://wikimedia.mingle.thoughtworks.com/projects/online_fundraiser/cards/1951 [21:07:16] There doesn't seem to be an issue with WP proper, but ^ yeah [21:07:23] that will sure break it [21:07:31] * K4-713 blinks [21:07:48] This might be a different problem. [21:08:02] But... wow. [21:08:08] So... I was hoping you could clue me into how we're supposed to clear order_id between gateways [21:08:18] I thought that was the subject of a lot of logic, but cannot find anything like it [21:08:19] You know... [21:08:28] This is probably some session BS. [21:08:42] Ah. [21:08:51] I mean it's probably not helped by evil magic Elliøtt must have done with his URLs [21:09:01] I think I know why it does this with Amazon and maybe not GC / WP / not paypal. [21:09:26] that doppleganger is into some deep sorcery [21:09:39] Amazon, you hit the page and it redirects immediately... which is like a filled-out GC / whatever else form. [21:09:45] So, it takes the session data seriously. [21:09:59] I don't think we have a mechanism for half-completed payment that changes gateway. [21:10:05] Easy enough to write, though. [21:10:13] ...I think. [21:10:22] ejegg: u have encoding issues. doppelgänger [21:10:24] I haven't, in fact, looked at DI in the last 10 minutes. [21:10:43] heehee [21:10:50] K4-713: ok, good enuf of a clue, thx! [21:11:33] At one point, I wanted a concrete excuse to write a thing that says: "If the gateway where you are isn't the gateway we have for you in the session, blow it all up." [21:11:36] If I can do it while continuing to centralize orderid handling, I will buy a lottery card. [21:11:44] But, I never could find evidence that it was ever a thing, so... [21:11:59] ah. it happened. [21:12:06] doit. [21:12:32] Oh, I saw some branch magic this morning. Did you test the core upgrade locally? [21:12:34] K4-713: also. There is mounting evidence that the WP maintenance load alone is enough to kill all life in fr-tech [21:12:43] K4-713: it's hosed. I'll try again after WP [21:12:50] awight: Oh good. [21:13:24] K4-713: I'm having evil thoughts about pet PP devs, btw [21:13:41] like, reflecting the basilisk's stare somehow... [21:13:55] are we allowed to request that they fix PP itself? [21:14:06] The thing is... if we make them *want* to... [21:14:18] :D [21:14:18] ouroboros... [21:14:36] The thought had crossed my mind. [21:14:53] Because: Okay, well, clearly not evil. But demonstrably devious at times. [21:15:35] hehe, here's an awesome API you might be familiar with... please try to solve for X. [21:15:46] >_< [21:16:00] yes. singularity time. [21:16:16] As in: Remove X and replace with happy rainbow pony rides? [21:16:38] atgo: ^ we're digesting PayPal EC [21:16:51] I feel like I could hypnotize somebody on the inside into doing it for us. [21:16:57] nom [21:17:07] Malaysian... prime minister... [21:17:09] "You are getting very, veeeeery frustrated with your own documentation..." [21:17:14] @_@ [21:17:24] do it hansel, do it do it [21:18:02] I just want the chance to try. [21:18:27] Also, I'm a little bit curious to see if the docs have changed in any sizeable ways since... 1999. [21:18:39] ... [21:18:49] ...wait. I think I just admitted in public that I did this before. [21:18:54] I rematerialized on that same side of the fence after tapping into this idea that life could be something other than a string of loosely tied failures [21:19:05] oh dear [21:19:18] SLEEP. [21:19:26] * K4-713 hides behind potted plant [21:19:51] 148 million online shoppers CAN'T BE WRONG [21:24:21] asked WP the question... i'll let you know when i hear back [21:33:49] awight: K4-713 pizzzacat [21:33:57] ah, yes. [21:34:07] Of course I've just found the line number I was looking for. [21:34:47] K4-713: if you need to skip no problem :) [21:34:59] atgo: I don't *need* to, but I totally want to. [21:35:11] i leave it to your discretion :) [21:35:23] All I'm doing is working on the audit script stuff. [21:35:28] Making good headway, actually. [21:35:31] IRC standup? [21:35:36] the others are in the hangout [21:36:08] mind if I just send mine in IRC? sorry so in the middle of a thing [21:38:42] sure [21:38:43] no prob [21:45:33] ok, today I've been going through ecom and trying to figure out Megan's issue with recurring donations [21:45:44] which has been good as a refresher on how ecom works so that's cool. [21:46:41] also looked at and successfully hooked up Elliott's backend route to the front end, need to push that out for ejegg when I have a solution more substantially doing something [21:46:49] woohoo! [21:47:05] I'm working on making the backend actually do things [21:47:09] just now I was building submodules for dash so those are now available, although I'm having naming issues with node [21:47:22] in bower you can change the name of the directory but it's a little trickier in node [21:47:39] so I dunno how I want to approach that yet but am in the middle of it [21:48:23] we have to change the dir name? [21:48:44] pizzzacat: thanks for th eupdate! also FYI worldpay said the CB logo is a-ok [21:48:47] well the modules are dash_node_modules etc on github [21:49:11] pizzzacat you can use your CB logo! [21:49:12] yay [21:49:15] ah ok cool thanks [21:49:39] also hoping to get to more stuff for megan's report today but might not get to it [21:49:47] also got tickets for BERLIN [21:50:22] WOO [21:51:19] I heard the streets there are made out of candy [21:51:29] and pizza grows on trees [21:51:47] and instead of normal cab drivers, they're cats [21:52:03] wth happened while I was... not watching? [21:52:08] haha [21:52:13] just explaining Berlin to everyone [21:52:19] OOooooooh. [21:52:21] how magical it is [21:52:22] Makes sense. [21:52:30] * K4-713 squints [21:52:45] pizzzacat, I think we can add a submodule as a folder named differently than the repo [21:53:07] ah yeah so that's what I'm currently trying to figure out by the magic of google [21:53:13] Berlin? Awesome! [21:53:13] do you know off the top of your head? [21:53:40] git submodule add [21:53:58] fffuuuuuu [21:54:07] thanks :) [21:54:11] yw [22:20:33] hey guys! i'm off... see some of you IRL on monday [22:20:38] because it's been a million years :) [22:25:47] One million actual years. [22:25:55] Also, you weren't gone for long just then. [23:34:29] awight, hope all's well [23:45:47] ejegg: yes! thanks, Michelle got a jagged magic marker circle around her buboe and a sticker from the pediatrician :p