ERPNext Project Access v0.1.0-alpha.2
Pre-releaseSecond alpha release of ERPNext Project Access.
The main change in alpha.2 is safer activation behavior: installing the app no longer automatically activates its Project/Task access policy on a fresh site.
What changed
- Added
ERPNext Project Access Settings. - Fresh installations start disabled.
- A System Manager must explicitly enable the access policy.
- While disabled:
- Project and Task permission hooks remain neutral.
- Native ERPNext/Frappe permissions determine visibility and access.
- Controlled Task workflow actions are not exposed.
- Direct calls to controlled Task mutation endpoints are rejected.
- Existing alpha.1 installations remain enabled when upgraded to alpha.2, avoiding an upgrade that unexpectedly broadens access.
- Settings warnings describe the consequences of saving either the enabled or disabled state.
Access model when enabled
- Project access is additionally restricted to:
- document owner, or
- an explicit user-specific share.
- Task access is independently restricted using the same owner/share model.
- An explicitly shared Task can remain accessible even when its parent Project is private.
Controlled Task workflow
Worker actions:
- Open -> Working
- Working -> Pending Review
Task-owner/reviewer actions:
- Pending Review -> Working
- Pending Review -> Completed
These actions allow a restricted worker to participate in the workflow without granting broad general Task Write permission.
Alpha.2 validation
Validated on the JSS reference deployment:
- Existing alpha.1 installation upgraded to alpha.2 and remained enabled.
- Activation setting could be disabled and re-enabled without uninstalling the app.
- Permission-query hooks were neutral while disabled.
- Controlled mutation endpoint rejected calls while disabled.
- Worker UI lost the custom action while disabled.
- Re-enabling restored the custom worker action.
- Full worker/reviewer workflow succeeded after re-enabling:
- Open -> Working
- Working -> Pending Review
- Pending Review -> Working
- Working -> Pending Review
- Pending Review -> Completed
- A separate fresh test site confirmed:
- Settings DocType exists after installation.
- Stored Enabled = 0.
- Runtime
is_enabled()= False. - Historical upgrade patch is recorded without changing the fresh-install default.
Compatibility
Validated with:
- Frappe Framework 16.29.0
- ERPNext 17.0.0-dev
- HRMS 17.0.0-dev on the reference deployment
The reference deployment is an intentionally mixed development stack and should not be interpreted as a broad compatibility guarantee.
Frappe 16.29 or newer is recommended because earlier Frappe 16 versions contain a linked-table permission-query issue that can cause an otherwise readable Task to disappear from Task List when its linked Project is inaccessible.
Upgrade note
For existing alpha.1 installations:
- Update the app.
- Run
bench migrate. - Alpha.2 preserves the enabled state.
- Review
ERPNext Project Access Settingsbefore changing activation.
For fresh alpha.2 installations, the app remains passive until explicitly enabled.
Documentation
See:
docs/HOWTO.mddocs/ROLE_SETUP.mddocs/ACTIVATION.mddocs/INSTALL.mddocs/INSTALLATION_EFFECTS.mddocs/UNINSTALLATION_EFFECTS.md
Status
Alpha-quality software. APIs, configuration, permissions behavior, and workflow behavior may still change before a stable release.