Tomori
INACT for Tomori. Not in the big five: a fix is ported here only when its work item asks for it. Tomori also has a separate rewrite project, see the end of this page.
At a glance
| Jira | INA12, Tomori. INA34 was a one-time space for the ADMS change request, not Tomori's main project. |
| INA05 INACT Instance value | Tomori |
| Repository | binari-digital/ina-tomori |
| Encrypted twin | binari-digital/ina-tomori-encrypted |
| INARTS GitLab | inact/inact-tomori, plus the encrypted twin |
| Permanent branches on origin | main, development. No staging. |
| Database | SQL Server |
| Production | The client's own Windows server, IIS. Releases are applied by hand from a zip. |
| Staging | none |
| Dev (QA) | inact-tomori-encrypted.bdt.dev on the Windows Server box |
TODO: production SQL Server version.
Repositories and remotes
main.php is ionCube-encoded in the encrypted twin, and the sync guards it. A further 303 encoded files are deliberately not guarded by the sync; that is a known state, not an accident.
Environments and deploy
| Push to | Script | What happens |
|---|---|---|
development | deploy/dev.sh | Producer on the Rumah box syncs plain to encrypted and pushes both. The consumer runs on the Windows Server box, whose runner carries the winserver2022 label: deploy/dev.ps1 pulls the IIS site C:\inetpub\wwwroot\inact-tomori-encrypted.bdt.dev and runs phinx migrate. The served root's origin is the INARTS GitLab over SSH, so the runner service must run as an account that holds that SSH key, not as NETWORK SERVICE. Set up 2026-09-01. |
main | deploy/prod.sh | Sync plain main to encrypted main, push to GitHub and INARTS. No consumer. The Rumah box cannot reach the production server. Production is a zip built from a tag on encrypted main with inact-release.sh, applied on site by hand. Migrations travel with the zip. |
Production runs on Windows: the app sits in C:\inetpub\wwwroot\inact, PHP is C:\php\php.exe, and phinx runs against the sqlsrv adapter on a database named DBINACT. That is from a migration log kept in the team's notes, not from the repository.
Database
| Driver | SQL Server, DB_CONNECTION=mssql |
| QA database | Not verified: the Windows Server box did not answer on 2026-09-06. |
| Test database | Host 192.168.1.110, port 1433, database inact_tomori_prod_20260821. A production snapshot from 2026-08-21. Not the shared dev DB host the other instances use. |
TODO: the QA database behind
inact-tomori-encrypted.bdt.dev.
How this fork differs from master
Measured on 2026-09-05. Tomori is the fork with the most changed files, and the changes lean towards procurement.
| Module files that differ | 178 |
| Modules with the most changes | dms_reference 19, routing 16, purchase_order 16, rfq 15, procurement_reference 12, procurement_documents 12, documents 11, spb 9 |
| Libraries that differ | InactPDO.php, additional_global_variables.inc.php, inweb.lib.php, print_template_function.inc.php, procure_function.inc.php, purchase_order_pdf.inc.php, reference_function.inc.php, tracking_function.inc.php |
| Top-level files that differ | auto_logout.php, connect.php, setting.php |
| Migrations | 428 in total. 42 only here, 45 in master not taken. Newest 2026-08-20. |
Files only in this fork
modules/adms_reference/adms_contractor.phpmodules/dms_reference/classification.phpmodules/dms_reference/contractor.phpmodules/dms_reference/division.phpmodules/dms_reference/element.phpmodules/dms_reference/project_name.phpmodules/dms_reference/subcat.phpmodules/reference/system_code.php
Two backup copies of the multi-upload handler also sit in modules/documents_master/.
Files in master that this fork lacks
modules/adms_reference/adms_reference_import.inc.phpmodules/dms_reference/autopublish_auto_folder_creation.phpmodules/dms_reference/doc_classification.phpmodules/dms_reference/function_code.phpmodules/dms_reference/system_code.phpmodules/routing/routing_handler_ready_to_return.phpmodules/routing/routing_handler_republish.php
inweb_config keys
| Keys | |
|---|---|
| Only in this fork | enable_contractor |
| Missing here | autopublish_auto_folder_creation, consolidated_routing_view, enable_doc_classification, enable_last_login_wins, enable_return_on_audit, enable_routing_overdue_notif_digest, enable_system_code, inact_operator_role, routing_return_format |
Customizations documented so far
None yet. Feature pages arrive in phase 3 of the docs plan.
The rewrite
Three repositories under binari-digital hold a Tomori rewrite: ina_tomori_rewrite_frontend, ina_tomori_rewrite_backend_php and ina_tomori_rewrite_backend_dotnet. They are a different code base and are not covered by these pages.
TODO: status of the rewrite and whether it replaces this instance.
Known gotchas
- Windows everywhere. QA and production both run on IIS. Path handling and case sensitivity differ from the Linux instances.
- A different test DB host. The snapshot lives on
192.168.1.110, not on the shared192.168.1.52. - Its own classification scheme. Tomori has
dms_reference/classification.phpwhile master hasdoc_classification.php. They are not the same feature; port with care. - No
stagingbranch at all. Do not open a[staging]PR here.