Page MenuHomePhorge

20after4 (Mukunda Modell)
ContributorAdministrator

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Sunday

  • Clear sailing ahead.

User Details

User Since
Jun 12 2021, 22:11 (49 w, 5 d)
Roles
Administrator
Availability
Available

Phabricator, Phorge.it & Me

I started working with Phabricator in 2013 and I've been a contributor to the open source project since 2014. When Phacility announced the end of active maintenance for Phabricator, I was involved in organizing a group of interested parties to take over community support of the project. Ultimately that effort has evolved into this project that you are currently viewing.

See L1 Phorge Vision Statement for the project vision statement.

Employment

Currently:

  • Senior Engineer at play.co.

Previously:

Disclaimer & Disclosure

Any opinions that I express do not necessarily represent those of current or previous employers. My participation in the phorge community is in a personal capacity and not as part of my employment.

Recent Activity

Sat, May 14

20after4 awarded T15098: Disabled required fields in subtypes should neither block creation of a task nor be displayed in the frontend a Like token.
Sat, May 14, 16:26

Sun, May 1

20after4 added a comment to T15096: Discuss Arcanist as a barrier to adoption of Phorge and how to address the underlying issues..
In T15096#2233, @speck wrote:

Thank you for these write-ups, I'll need more time to review however I noticed Evan recently started a task in the upstream where it looks like he's investigating compiling PHP to a library for use with a custom native entrypoint which would allow distributing arcanist as a single binary (he estimates ~10mb in size).
https://secure.phabricator.com/T13675

Sun, May 1, 21:38 · Phorge General/Unknown, Arcanist
20after4 updated the task description for T15096: Discuss Arcanist as a barrier to adoption of Phorge and how to address the underlying issues..
Sun, May 1, 21:28 · Phorge General/Unknown, Arcanist

Wed, Apr 27

20after4 added a comment to D25021: Added cross-platform default fonts.

This seems sensible to me, FWIW

Wed, Apr 27, 15:59
20after4 added a comment to T15096: Discuss Arcanist as a barrier to adoption of Phorge and how to address the underlying issues..

@micax: Good points and it's helpful to hear another perspective on this. From my past experience using Phabricator on a corporate team I definitely think that arcanist helped keep everyone's workflow consistent and simple.

Wed, Apr 27, 15:54 · Phorge General/Unknown, Arcanist

Apr 25 2022

20after4 edited the content of April 19, 2022.
Apr 25 2022, 07:42 · Governance
20after4 created T15096: Discuss Arcanist as a barrier to adoption of Phorge and how to address the underlying issues..
Apr 25 2022, 07:39 · Phorge General/Unknown, Arcanist

Apr 24 2022

20after4 awarded D25034: support language highlighting for GFM-style code blocks a Mountain of Wealth token.
Apr 24 2022, 18:50
20after4 added Q11: upgrade phabricator to phorge (Answer 3).
Apr 24 2022, 18:45
20after4 added a task to D25037: Hide the "hidden" fields on custom form previews: T15081: Figure out if there are patches from Wikimedia's fork that are desirable to upstream in Phorge.
Apr 24 2022, 18:39
20after4 added a task to D25038: Add Status, sequence and isDefault to the conduit api results for column.search: T15081: Figure out if there are patches from Wikimedia's fork that are desirable to upstream in Phorge.
Apr 24 2022, 18:39
20after4 added revisions to T15081: Figure out if there are patches from Wikimedia's fork that are desirable to upstream in Phorge: D25038: Add Status, sequence and isDefault to the conduit api results for column.search, D25037: Hide the "hidden" fields on custom form previews.
Apr 24 2022, 18:39 · Phorge Upstream
20after4 updated the diff for D25038: Add Status, sequence and isDefault to the conduit api results for column.search.

Fix line length

Apr 24 2022, 18:36
20after4 retitled D25038: Add Status, sequence and isDefault to the conduit api results for column.search from Add column sequence to the conduit api results for column.search to Add Status, sequence and isDefault to the conduit api results for column.search.
Apr 24 2022, 18:34
20after4 updated the diff for D25038: Add Status, sequence and isDefault to the conduit api results for column.search.

celerity map

Apr 24 2022, 18:30
20after4 requested review of D25038: Add Status, sequence and isDefault to the conduit api results for column.search.
Apr 24 2022, 18:29
20after4 requested review of D25037: Hide the "hidden" fields on custom form previews.
Apr 24 2022, 18:19
20after4 added a comment to T15048: Allow awarding Tokens to individual Comments.

Does anyone else feel that this is not a good idea? Seems like the consensus here is that it's at least acceptable if not desirable to have.

Apr 24 2022, 17:58 · Tokens
20after4 added a comment to T15048: Allow awarding Tokens to individual Comments.

I did a bit of digging through the source code and it looks like tokens are implemented in an incredibly generic way, such that it wouldn't be at all difficult to add tokens to comments. I think the hardest part will be integrating it with the UI.

Apr 24 2022, 17:55 · Tokens
20after4 added a comment to T15090: CVE-2022-24765 - Multi-user Git Privilege Escalation.
In T15090#2141, @avivey wrote:

@avivey Would it make sense to add a public announcement to Diviner or Phiction? Or perhaps we use Phame for this use case (Create a "Security Incidents" blog)? I always think of a task as an actionable item, whereas we would want this to exist forever.

Yes, probably. "Announcements"-style thing

Apr 24 2022, 17:51 · Phorge General/Unknown, Restricted Project
20after4 created T15095: Setup an announcements blog with Phame.
Apr 24 2022, 17:51 · Phorge Upstream

Apr 11 2022

20after4 added a comment to T15084: Discussion: Maniphest vs Ponder for user support.

I'm setting the "Moderate" policy on Ponder to Trusted Contributors and I'll add a link to Ponder from the default home page.

Apr 11 2022, 17:17 · Phorge Upstream
20after4 changed the Moderate Policy policy for application Ponder from Administrators to Trusted Contributors (Project).
Apr 11 2022, 17:16
20after4 awarded T15084: Discussion: Maniphest vs Ponder for user support a Mountain of Wealth token.
Apr 11 2022, 17:15 · Phorge Upstream

Apr 6 2022

20after4 awarded April 5, 2022 a Mountain of Wealth token.
Apr 6 2022, 16:59 · Governance

Mar 31 2022

20after4 added a comment to T15082: Consider allowing milestone columns to be ordered arbitrarily on workboards.

epriestley was very much against this idea but wikimedia's users loved it.

Do we have epristley's reasoning as to why he was against this? Might help in deciding about including this patch in Phorge.

Mar 31 2022, 23:55 · Projects

Mar 25 2022

20after4 added a subtask for T15081: Figure out if there are patches from Wikimedia's fork that are desirable to upstream in Phorge: T15082: Consider allowing milestone columns to be ordered arbitrarily on workboards.
Mar 25 2022, 13:18 · Phorge Upstream
20after4 added a parent task for T15082: Consider allowing milestone columns to be ordered arbitrarily on workboards: T15081: Figure out if there are patches from Wikimedia's fork that are desirable to upstream in Phorge.
Mar 25 2022, 13:18 · Projects
20after4 added a project to T15082: Consider allowing milestone columns to be ordered arbitrarily on workboards: Projects.
Mar 25 2022, 13:17 · Projects
20after4 created T15082: Consider allowing milestone columns to be ordered arbitrarily on workboards.
Mar 25 2022, 13:17 · Projects
20after4 added a comment to T15081: Figure out if there are patches from Wikimedia's fork that are desirable to upstream in Phorge.
  • e95157e39bf5 Show matching context from the document body in ferret search results
    • This is not perfect but it generally works - display a snippet from the matched document and highlight the matched words - kind standard and expected from any full-text search engine. Probably not my best work as far as code quality / it's a bit hacky and performance may not be stellar, however, it's been in use at wikimedia for quite some time without any major issues that I'm aware of.
  • bba62cf52435 Hide the "hidden" fields on custom form previews.
    • This is a single line change to css that makes things a lot cleaner when you have a lot of custom forms with a lot of custom fields.
    • submitted as D25037
  • 9191d4838278 Make "task type" and date-type custom fields work in herald.
  • 3d33d1cceac7 Implement Atom/RSS discovery on Phame blog pages
  • ebfe30890b52 Add column sequence to the conduit api results for column.search
    • This seems like an obvious omission from the conduit api for columns and the change is straightforward.
    • submitted as D25038
  • 893664bd44b8 EditEngine: 'Duplicate Form' action to create new forms from existing config.
    • This makes it much easier to clutter up your custom forms with 100 variations of your forms. It also makes it much easier to make a new form vs. starting from scratch every time. It's sort of a hack and the custom form management UI needs a lot of improvement generally, this was just the minimum change I could implement to make life slightly easier for myself and fellow Wikimedia phab admins. Not sure it's a good idea in the upstream without further changes to go with it.
  • 44a94dc04b3f Fix validation of "column" transaction type in "maniphest.edit"
Mar 25 2022, 08:20 · Phorge Upstream
20after4 created T15081: Figure out if there are patches from Wikimedia's fork that are desirable to upstream in Phorge.
Mar 25 2022, 07:52 · Phorge Upstream
20after4 created P3 Wikimedia patches.
Mar 25 2022, 07:50
20after4 added a comment to D25035: Hide the blurb of a user when that user is disabled.

fwiw, this is how I handled it in the wikimedia fork:

Mar 25 2022, 04:45

Mar 15 2022

20after4 updated the task description for T15071: Setup recurring Core meeting.
Mar 15 2022, 22:23 · Governance

Mar 14 2022

20after4 added a comment to T15030: Support a Phorge Extensions ecosystem.

@MacFan4000 the mediawiki auth is in core afaik. There is some custom stuff for the wikimedia ldap setup but the oauth part was merged upstream ages ago.

Mar 14 2022, 05:02 · Phorge
20after4 added a comment to T15069: Disable spammers.

Yeah admittedly what I did was just a hack because I didn't want to implement storage and UI for a new "hidden" boolean flag.

Mar 14 2022, 05:00 · Upstream General/Unknown

Mar 13 2022

20after4 added a comment to T15069: Disable spammers.

On Wikipedia’s phabricator instance I implemented a patch that hides the profile text on disabled accounts which helps (slightly) to disincentivize spammers.

Mar 13 2022, 00:13 · Upstream General/Unknown

Mar 12 2022

20after4 updated the task description for T15071: Setup recurring Core meeting.
Mar 12 2022, 05:09 · Governance

Feb 25 2022

20after4 updated 20after4.
Feb 25 2022, 21:07
20after4 updated 20after4.
Feb 25 2022, 21:06

Feb 1 2022

20after4 updated subscribers of T15055: Import translations from translatewiki.net.
Feb 1 2022, 20:20 · Phorge

Dec 5 2021

20after4 added a parent task for T15006: Re-brand Phorge: T15055: Import translations from translatewiki.net.
Dec 5 2021, 19:40 · Phorge
20after4 added a subtask for T15055: Import translations from translatewiki.net: T15006: Re-brand Phorge.
Dec 5 2021, 19:40 · Phorge
20after4 added a comment to T15055: Import translations from translatewiki.net.

Once the rebranding is complete we can send updated strings to translatewiki so that everything remains in sync.

Dec 5 2021, 19:39 · Phorge

Nov 27 2021

20after4 added a comment to T15043: Automatically move tasks between columns on project boards.

I didn't know columns could be deleted... I thought they were only ever hidden.

Nov 27 2021, 15:35 · Projects
20after4 awarded T15062: Introducing Phixator 2 a Mountain of Wealth token.
Nov 27 2021, 15:31 · Phrequent, Phorge General/Unknown, Dashboards, Governance, Maniphest

Oct 15 2021

20after4 renamed T15055: Import translations from translatewiki.net from Import translations from translate wiki.net to Import translations from translatewiki.net.
Oct 15 2021, 17:11 · Phorge
20after4 created T15055: Import translations from translatewiki.net.
Oct 15 2021, 17:11 · Phorge

Sep 30 2021

20after4 added a comment to T15048: Allow awarding Tokens to individual Comments.
In T15048#1311, @Leon95 wrote:

^^ Awarding a Token to a "... awarded a token." Message would be a weird case. But what about removing this Message completely? (or add the Option to hide them) It bloats the history of some Objects imensely and is not that usefull in my opinion.

Sep 30 2021, 13:59 · Tokens
20after4 awarded T15048: Allow awarding Tokens to individual Comments a Love token.
Sep 30 2021, 13:55 · Tokens

Sep 14 2021

20after4 updated 20after4.
Sep 14 2021, 12:38
20after4 updated 20after4.
Sep 14 2021, 12:38

Sep 10 2021

20after4 added a comment to T15043: Automatically move tasks between columns on project boards.

Just having a dropdown here would be enough, I guess?

image.png (666×1 px, 84 KB)

Indeed.

Sep 10 2021, 14:33 · Projects
20after4 added a comment to T15043: Automatically move tasks between columns on project boards.

@TitanNano: One way to store the type, without changing any schema, would be to drop it into the metadata json blob which columns already use for recording which column is the 'default'. Unfortunately that isn't the most convenient thing to query, however, it's not that bad thanks to mysql's json functions.

Sep 10 2021, 14:32 · Projects

Sep 9 2021

20after4 added a comment to T15043: Automatically move tasks between columns on project boards.

It wouldn't be too hard to add a type to columns but we'd need a way to set the type from the UI somehow.

Sep 9 2021, 23:56 · Projects

Sep 5 2021

20after4 added a comment to T15043: Automatically move tasks between columns on project boards.

I also agree that #3 seems promising. FWIW it's incredibly easy to develop new herald actions and as long as the current herald rules do the thing you want to do then the action would be very straightforward. Maybe the usability would be improved by exposing the rules that affect a board through the workboard UI instead of having them scattered around random and disorganized herald rules in the herald ui?

Sep 5 2021, 02:09 · Projects

Aug 22 2021

20after4 awarded D25018: Add conduit endpoints for querying legalpad a Like token.
Aug 22 2021, 23:15
20after4 added a comment to D25018: Add conduit endpoints for querying legalpad.

Ok my implementation had a couple of additional search constraints which are missing here. Otherwise this looks good to me and is more complete. I'll probably abandon my patch and apply this one if you don't mind including the additional search constraints. (See suggested edits.)

Aug 22 2021, 23:14
20after4 added a comment to D25018: Add conduit endpoints for querying legalpad.

FWIW here is my implementation which overlaps somewhat:

Aug 22 2021, 22:58

Aug 18 2021

20after4 added a comment to D25018: Add conduit endpoints for querying legalpad.

Wow, this is something I developed for wikimedia but not nearly as extensive! I'll try to give some code review when I have a few minutes to look this over.

Aug 18 2021, 18:09
20after4 added a comment to D25015: Show confirmation dialog when closing a modal if form contents have been changed.

+1 this has bitten me before.

Aug 18 2021, 18:08 · Maniphest

Jul 29 2021

20after4 created T15037: Should we support oauth login via github/google/etc?.
Jul 29 2021, 21:53 · Auth
20after4 added a comment to T15014: Develop a Phorge Release Process.

I can help out with upstream merges. I've been doing it on a regular basis for Wikimedia for a long time now. It's rarely been a problem but I'm been careful to make sure that Wikimedia's fork doesn't drift too far away from upstream.

Jul 29 2021, 21:33 · Phorge

Jul 19 2021

20after4 added a comment to T15030: Support a Phorge Extensions ecosystem.

regarding a monorepo, I'm not sure if there is an advantage to that, I'm fine with individual repos. I currently maintain most of Wikimedia's extensions in a single monorepo but I'd consider splitting them out into individual repos if any one them were candidates for upstreaming.

Jul 19 2021, 03:57 · Phorge
20after4 added a comment to T15030: Support a Phorge Extensions ecosystem.

I'd like to host https://github.com/wikimedia/phabricator-antivandalism here, perhaps under a new name.

Jul 19 2021, 03:55 · Phorge

Jul 14 2021

bfs awarded T15030: Support a Phorge Extensions ecosystem a Cup of Joe token.
Jul 14 2021, 09:26 · Phorge

Jul 12 2021

brennen awarded T15030: Support a Phorge Extensions ecosystem a Like token.
Jul 12 2021, 19:38 · Phorge
20after4 created T15030: Support a Phorge Extensions ecosystem.
Jul 12 2021, 18:08 · Phorge
20after4 added a comment to D25013: Use the 2020/2021 MediaWiki Logo.

I landed this upstream.

Jul 12 2021, 01:29

Jul 3 2021

20after4 added a comment to T15011: Build a Phorge Developer Environment.

@willson556: phorge-devcontainer looks awesome. I'll try it out asap. I may be able to contribute as well, I've got a bit of experience building reusable development environments.

Jul 3 2021, 18:41 · Phorge General/Unknown

Jun 22 2021

20after4 added a comment to T15004: Decide who has admin/commit/security access.
In T15004#100, @speck wrote:

On the topic of increasing community involvement we will also want to produce documentation for setting up development environments as well as the steps to submit changes upstream (like a quality checklist). To make development environments even easier we might want to consider supporting something like a vagrantfile so people can get started with very few steps.

Jun 22 2021, 13:12 · Governance, Phorge

Jun 20 2021

20after4 added a comment to T15014: Develop a Phorge Release Process.

fwiw the old upstream workflow has been very easy to follow as a downstream fork maintainer so I like keeping it mostly unchanged.

Jun 20 2021, 12:28 · Phorge
20after4 accepted D25009: Update arcanist readme to reference Phorge.

Shouldn't we also think about changing the name of arcanist or does it make sense to have a fork with the same name?

Jun 20 2021, 12:24

Jun 13 2021

20after4 awarded T15007: Extends access to part of phorge to logged out users a Like token.
Jun 13 2021, 01:59 · Upstream General/Unknown

Jun 12 2021

chris empowered 20after4 as an administrator.
Jun 12 2021, 23:12
20after4 updated 20after4.
Jun 12 2021, 22:17