← Back to sign in

Changelog

Every user-visible change merged to pencorOS, newest first. Generated from git log.

622 entries

September 2026

  • v0.3480Sep 26, 2026Added9819784

    procurement:the Procurement page adds a Subcontracts & POs status row with donut and a Master Buyout Log — every subcontract/PO on jobs in Construction with buyout budget vs contract value, Buyout Needed By (Required On Job minus lead time, manual or schedule-linked like submittals), past-due tracking and a Waiting on Sub Signature filter (#452)

  • v0.3479Sep 26, 2026Added16306d2

    procurement:submittals can link Required On Job and Lead Time to schedule activities — Required On Job follows the activity's start, lead time follows its duration (remaining once started) in working days and edits push back into the schedule with a full recalculation, and the Procurement page's float uses the schedule's own calendar (#451)

  • v0.3478Sep 25, 2026Added7aebab2

    procurement:a new company-wide Procurement page tracks every submittal on jobs in Construction — six status boxes with a donut chart, the most critical (least-float) submittal, project cards ranked by overdue items then float, and a groupable, filterable Master Submittal List; submittals gain Required On Job Date and Lead Time (#449)

  • v0.3477Sep 25, 2026Fixede5c0af8

    bug-reports:the bug tracker's Closed status filter shows closed reports again — the page loaded only the first 100 reports and closed ones sort last, so once open + resolved passed 100 the Closed filter came up empty; the tracker now loads every report (#448)

  • v0.3476Sep 24, 2026Addedaa1cb8b

    costs:the Costs page can now group by division (the cost code's 00–19 prefix), add a second-level "then by" grouping with the same options, and expand or collapse every group from a caret at the far left of the table header — PDF and Excel exports follow the same nesting (#447)

  • v0.3475Sep 24, 2026Fixedd442364

    ci:the per-run test-schema cleanup on the preview database no longer dies on its first stale schema — each DROP runs in its own transaction with the statement timeout lifted, a failed schema is logged and skipped, and the step ends with a summary plus a workflow warning (#446)

  • v0.3474Sep 24, 2026Added6ecb1e5

    costs:groups on the Costs page now collapse and expand (per group, plus Collapse all / Expand all), and the filter bar gains a Vendors multi-select alongside cost code, type, source and subcontract

  • v0.3473Sep 24, 2026Added0bcebbd

    costs:the Costs page can now group its transactions by vendor, cost code, cost type or subcontract / PO with a subtotal per group, sort by description, show / hide / reorder columns from a Columns editor, and export exactly the current view — same filters, sort, grouping and columns — as a landscape PDF or an Excel workbook with group subtotals and a grand total

  • v0.3472Sep 24, 2026Added07e4530

    costs:Import Costs From Foundation — the Agave connector pulls a job's posted job-cost ledger into a new Costs page (every transaction, sorted by cost code, multi-filter + sortable) and the budget's Job to Date column, with the JTD amount click-through to the itemized detail and subcontractor invoices applied to the matching subcontract / PO

  • v0.3471Sep 24, 2026Fixedd9ee24a

    cost-codes:the cost code picker's Project Budget section now shows each code's description as it reads on the project budget (the renamed, project-specific text) instead of the master list description; the UnBudgeted section still shows the master descriptions (BUG-258) (#442)

  • v0.3470Sep 24, 2026Added75eabf9

    change-orders:a project manager can now re-code the cost code on a line of an executed subcontract or owner change order straight from the order page — the amount stays locked, the dollars move to the new budget row, and the change is recorded in the order's history (BUG-257) (#441)

  • v0.3469Sep 24, 2026Fixedbc6933f

    budget:clicking a committed-cost amount on one of the budget's UnBudgeted rows — a cost code with subcontract or change-order dollars but no budget line, shown as "no budget set" — now opens the subcontract breakdown like any other row instead of a dialog that only said "No breakdown key provided", and each change order listed in that dialog now links through to the change order so a mis-coded line can be found and re-coded (BUG-256) (#440)

  • v0.3468Sep 23, 2026Fixedc315954

    budget:an executed subcontract change order coded to a cost code the project never budgeted now shows on the budget's UnBudgeted rows instead of disappearing — a credit change order was leaving total committed costs overstated while the committed-cost drill-down still showed it (BUG-253) (#438)

  • v0.3467Sep 23, 2026Fixed01dad8f

    drawings:the Disciplines dropdown on the drawings page now lets you pick several disciplines at once, and the sheet list and its PDF log put the title sheet and sheet index first whenever they are in the selection, so a batch opens on the cover instead of whichever sheet number sorts first (BUG-248) (#437)

  • v0.3466Sep 23, 2026Fixedc5f42cc

    oco:an approved owner change order no longer shows a Ball in Court — nothing is pending once everyone has signed — and its workflow card shows the executed document in that spot instead (the DocuSign signed PDF, or the wet-signed copy); Executed by Email now takes that signed copy as an upload, and it can also be added from the card afterwards (BUG-254) (#439)

  • v0.3465Sep 23, 2026Fixedfbe0e43

    submittals:the document preview on a submittal now opens with the whole page fitted to the window instead of at 100%, so a large shop drawing no longer shows just its top-left corner; zooming still works and a new Fit page button returns to the fitted view (BUG-247) (#436)

  • v0.3464Sep 23, 2026Fixed92327b5

    subcontracts:a Purchase Order no longer asks for insurance — a material vendor has no onsite crew, so a PO shows no smiley or bomb on the Subcontract/PO list, no Onsite or insurance answer, no Approve/Reject Insurance step once it is executed, and it no longer lands on the Insurance Admin's list waiting for a COI that was never coming (BUG-244) (#435)

  • v0.3463Sep 23, 2026Fixed634358d

    change-items:ACRE is now one of the Unit of Measurement options on a change item's cost lines, alongside the other area units (BUG-243) (#434)

  • v0.3462Sep 23, 2026Added09b1e09

    submittals:a reviewer who emails their review back can now be recorded on their own row — each pending reviewer has an Upload Response button next to Remind (submittal manager only) taking the response, notes and the reviewed files, so the manual entry lines up with the reviewer instead of sitting at the bottom of the page; the saved answer shows who entered it on whose behalf, and Manager Manual Answer can attach files too (BUG-241, BUG-242) (#433)

  • v0.3461Sep 23, 2026Fixedd319b13

    schedule:an activity marked finished from a daily log now shows the same date in the schedule that the log named, instead of a day earlier, and a milestone in a daily log is offered only the one mark that applies to it (#432)

  • v0.3460Sep 23, 2026Fixedf7300fd

    schedule:a milestone's late dates now read the same working day its early dates do — a start milestone (and any zero-day activity) is scheduled on the next available day after its predecessor finishes, so at zero float its Late Start matches its Start instead of showing the weekend boundary before it, while a finish milestone still lands exactly on the finish of the work it marks (BUG-255 follow-up) (#431)

  • v0.3459Sep 23, 2026Fixed0c3c82f

    schedule:an activity set to Start Milestone or Finish Milestone is now the zero-day event it is meant to be — it schedules as an instant whatever duration the row was carrying, a start milestone no longer pushes its successor a day and shows no finish date, and a finish milestone lands on the same date as the work it marks instead of a day after it, showing no start date (BUG-255) (#430)

  • v0.3458Sep 23, 2026Fixed40b9e42

    rfis:cost impact and schedule impact can now be edited on the RFI detail page, so a draft can be corrected before it is sent instead of voided and recreated

  • v0.3457Sep 21, 2026Added63e6884

    drawings:the Send dialog in the sheet viewer now offers Current Set, the current-set link can include the team's published markups burned into every sheet, and published markups carry forward onto a sheet's new revision when it is replaced (BUG-251) (#428)

  • v0.3456Sep 21, 2026Fixed466b096

    drawings:the drawings PDF button now offers a Current Drawing Log (sheet number, title, and current revision date) or an Audit Log that adds the original issue date and every revision with its set name (BUG-250 follow-up) (#427)

  • v0.3455Sep 21, 2026Fixed68580e0

    specifications:cancelling a specification book upload after it has been parsed now really deletes the PDF and its parsed page text, as the dialog promises (#426)

  • v0.3454Sep 21, 2026Fixed895b719

    storage:every remaining attachment commit accepts only an upload issued for that exact record and not already attached to anything else (#425)

  • v0.3453Sep 21, 2026Fixeddba1f93

    specifications:finishing a specification book upload now checks your access and that the uploaded PDF belongs to the same project before the file is read (#424)

  • v0.3452Sep 21, 2026Fixede1f9101

    storage:a photo, logo or spec upload can no longer be pointed at a file that belongs to something else and then deleted to destroy it (#423)

  • v0.3451Sep 21, 2026Fixedb65ae60

    specifications:a specification book — or any file — with a very long name can now be uploaded, and the spec parser's page-text file can no longer land on top of the PDF (#422)

  • v0.3450Sep 21, 2026Fixedb449db4

    storage:the five local-development upload endpoints can no longer be used in production to overwrite a stored file (#421)

  • v0.3449Sep 21, 2026Addedc91dd16

    drawings:a Current Set button on the drawings page emails one link that downloads every sheet at its current revision as a single PDF, with the title sheet and index first (BUG-249) (#420)

  • v0.3448Sep 21, 2026Fixed9b35a8e

    drawings:the drawings list PDF shows each sheet's current revision and that revision's date, instead of a running list of every revision with the original issue date (BUG-250) (#419)

  • v0.3447Sep 16, 2026Added3c5182c

    meetings:type @ in meeting minutes to tag a person and create an action item for them (BUG-239) (#417)

  • v0.3446Sep 16, 2026Fixed002f420

    timecards:PTO requests go only to the reviewers named under Timecards → Settings (up to two), who alone see the PTO queue and can approve or deny, and Pencor Administrators are no longer PTO approvers by role (BUG-238) (#418)

  • v0.3445Sep 16, 2026Fixed86edb80

    oco:changing the Architect checkbox in Owner Change Order Settings now updates every order that can still be sent instead of only orders created afterwards, and an order's pricing-backup attachments go out with the DocuSign envelope as a separate backup document, with a "PDF + attachments" button on the order page (BUG-240) (#416)

  • v0.3444Sep 14, 2026Fixed80d4b4d

    submittals:the New Submittal dialog pre-fills the next sequential number after each create, so creating several submittals in a row no longer needs a page refresh (BUG-237) (#415)

  • v0.3443Sep 14, 2026Fixed90f9549

    contracts:sending for signature with "Auto-place from document tags" on a PDF without pencorOS signature tags now says which tags are missing and to use manual placement, instead of DocuSign's raw ANCHOR_TAB_STRING_NOT_FOUND error (BUG-235) (#414)

  • v0.3442Sep 11, 2026Fixedbc02da1

    owner-contracts:moving a sent owner contract back to Contract Final voids its open DocuSign envelope, and the signature card gets a Void Envelope button (BUG-236) (#413)

  • v0.3441Sep 10, 2026Fixedc3d41d5

    budget:an Export CSV button on the budget page downloads the current budget as cost code, description, and revised amount (BUG-234) (#412)

  • v0.3440Sep 8, 2026Fixed325892a

    schedule:the company Schedule module's project picker no longer lists projects in the Warranty phase (BUG-232)

  • v0.3439Sep 8, 2026Fixedb2c7f98

    change-items:Request Pricing no longer offers or emails subcontractors whose subcontract is Void or Cancelled (BUG-231)

  • v0.3438Sep 7, 2026Fixed72fb459

    projects:a Show warranty switch on the project list hides Warranty-status projects in one click (BUG-230)

  • v0.3437Sep 4, 2026Fixedf2f9397

    timecards:Pencor Administrators can enter PTO on an employee's behalf (BUG-229)

  • v0.3436Sep 4, 2026Fixedd373b78

    oco:a change item's time-extension days carry onto the Owner Change Order it rolls into (BUG-228)

  • v0.3435Sep 4, 2026Fixede32f621

    contracts:clearing a subcontract's firm clears its firm-scoped people, and a stale contact can be cleared (BUG-226)

  • v0.3434Sep 4, 2026Fixedda77ee7

    contracts:DocuSign Title field is a plain text box the signer fills in (BUG-223)

  • v0.3433Sep 4, 2026Fixed1106a1f

    budget:Forecast to Complete cells are color-coded by forecast type (BUG-225)

  • v0.3432Sep 4, 2026Fixedb2c2fc6

    rfis:reviewer rounds are reorderable across all three workflow surfaces (BUG-222)

  • v0.3431Sep 4, 2026Fixedb02b58d

    budget:negative Change Item lines flow into the budget instead of being silently dropped (BUG-219, BUG-220)

  • v0.3430Sep 4, 2026Fixed0522151

    projects:Status filter on the Projects list is a multi-select (BUG-218)

  • v0.3429Sep 4, 2026Fixed29256fb

    projects:Permits card is editable — per-permit entries with notes, phone, weblink, and a QR code (BUG-216)

  • v0.3428Sep 4, 2026Fixedc9f26f9

    meetings:live-meeting note submits no longer produce phantom 404s (BUG-215)

  • v0.3427Sep 4, 2026Fixed7ce958a

    meetings:meeting note rows get a soft blue outline on hover (BUG-214)

  • v0.3426Sep 4, 2026Fixed3fef932

    schedule:Undo button + Ctrl+Z step back the last schedule edit in the scheduler (BUG-207)

August 2026

  • v0.3425Aug 31, 2026Fixed812cc14

    drawings:published markups always show in the sheet viewer, even with the markup layer off (BUG-213)

  • v0.3424Aug 31, 2026Fixed66e741e

    bug-reports:the 'Report sent' screen closes immediately instead of freezing (BUG-212)

  • v0.3423Aug 31, 2026Fixeda8954a9

    projects:project top-nav no longer sticks as a collapsed dropdown after opening a drawing sheet (BUG-211)

  • v0.3422Aug 31, 2026Fixedab6d324

    drawings:sheet viewer filmstrip stops glitching and downloading full PDFs; stuck thumbnail backlog drains itself (BUG-208)

  • v0.3421Aug 28, 2026Fixedee4e86e

    change-items:Void CIs hidden from the list by default with a Show Void toggle (BUG-202, BUG-203) (#391)

  • v0.3420Aug 28, 2026Fixed5b4ff75

    daily-logs:subcontract-party firms appear in the Manpower pickers without needing a portal user (BUG-205) (#392)

  • v0.3419Aug 28, 2026Fixed66e1aea

    team:Team page columns are sortable/filterable/dynamic and Add Member searches by company (BUG-206) (#390)

  • v0.3418Aug 28, 2026Fixeda4499d3

    oco:markup rows stay under all cost line items as more CIs are added (BUG-204) (#389)

  • v0.3417Aug 28, 2026Fixed5ac1940

    contracts:a draft subcontract's firm can be cleared back to unassigned (#388)

  • v0.3416Aug 28, 2026Fixedd41bb16

    contracts:remove the Sub Signer QR card from the subcontract sidebar (#387)

  • v0.3415Aug 28, 2026Fixed2f40c19

    rfis:the RFI list shows a new RFI immediately after create (BUG-201) (#386)

  • v0.3414Aug 28, 2026Fixedc95e120

    directory:duplicate-email errors say who already holds the email (BUG-199) (#385)

  • v0.3413Aug 28, 2026Fixed3fe2440

    sco:sub-signer dropdown shows every user until you type, and Add User joins the sub's firm (BUG-198) (#384)

  • v0.3412Aug 26, 2026Addeddaad766

    change-items:dynamic list columns — sort, toggle/reorder, and multi-select filters on every column (CI list) (#382)

  • v0.3411Aug 25, 2026Fixed5422eea

    budget:division group headers read as headers on the grouped budget (BUG-191) (#379)

  • v0.3410Aug 25, 2026Fixed5ce4559

    safety:Safety Documents opens the project Documents library instead of a 404 (BUG-188) (#378)

  • v0.3409Aug 25, 2026Fixeda8da5b6

    contracts:Title column on the Subcontract/PO list can be dragged narrower (BUG-187) (#377)

  • v0.3408Aug 25, 2026Fixedbdf83c6

    bug-reports:Still broken — send it back on the fix-verification page (BUG-186) (#376)

  • v0.3407Aug 25, 2026Fixed279e5de

    daily-logs:the list shows a new daily log immediately after create (BUG-197) (#381)

  • v0.3406Aug 25, 2026Fixede462d3d

    contracts:subcontract labels de-duplicated — Scope of Work + Notes (BUG-192) (#380)

  • v0.3405Aug 25, 2026Fixed37baa88

    owner-contracts:Contract Date + Original Contract Completion Date editable inline — the OCO signature gate is fixable in place (BUG-195, BUG-196) (#375)

  • v0.3404Aug 25, 2026Fixedbef4544

    contracts:change the Sub Signer at any subcontract status — Edit dialog saves no longer reject after Scope Final (BUG-185) (#374)

  • v0.3403Aug 19, 2026Added0f0ff37

    change-items:New Subcontract/PO pull on the cost-line toolbar — buy out new owner-change scope as a fresh draft agreement (#373)

  • v0.3402Aug 19, 2026Added5f60ad6

    oco:markup-line budget mapping + auto-persisting settings editor (#372)

  • v0.3401Aug 19, 2026Addedf31046a

    oco:Send back to Draft from Final Draft on OCP + OCO workflow cards (#371)

  • v0.3400Aug 19, 2026Added17db7b2

    change-orders:Pending Amount column on the OCO, OCP, and SCO list pages (#370)

  • v0.3399Aug 19, 2026Added59449bf

    oco:labeled multi-line standard CO markup — settings lines + editable markup line items on new orders (#369)

  • v0.3398Aug 19, 2026Addedac9adf1

    change-orders:list-page controls — search, multi-filters, sort, column picker + Approved/Executed Amount columns on OCO/OCP/SCO lists (#368)

  • v0.3397Aug 19, 2026Added112e739

    change-orders:Void/Cancel tool — Change Status menu on SCO/OCP/OCO cards; executed orders void with financial reversal (#367)

  • v0.3396Aug 18, 2026Fixed2de4521

    oco:one send path in Final Draft — manual Sent/Executed become Subcontract-style footer links on OCO/OCP workflow cards (BUG-193) (#366)

  • v0.3395Aug 17, 2026Fixed043c9dd

    oco:DocuSign send from Final Draft — envelope drives the Sent legs and the signature card appears (BUG-189) (#365)

  • v0.3394Aug 17, 2026Fixed9693389

    contracts:each sub change order has its own Sub CO Signer, pre-filled from the subcontract (BUG-185) (#364)

  • v0.3393Aug 14, 2026Fixed5aea848

    schedule:assign real calendars on template schedules by bootstrapping an empty company calendar catalog (#363)

  • v0.3392Aug 14, 2026Fixedac645f4

    submittals:Send button retries the page refresh and reloads if it never lands (BUG-177) (#362)

  • v0.3391Aug 14, 2026Fixed002dc60

    contracts:legacy imported change orders count toward the revised contract amount (BUG-183) (#361)

  • v0.3390Aug 14, 2026Addedc50ed01

    projects:star projects to pin them to the top of the list, per user (BUG-181) (#360)

  • v0.3389Aug 14, 2026Fixedef11e5a

    timecards:each week block's row total sums that week, not the whole period (BUG-180) (#359)

  • v0.3388Aug 14, 2026Fixed21fb2c6

    oco:configured signers render on OCO, OCP, and SCO PDFs (BUG-178, BUG-179) (#358)

  • v0.3387Aug 14, 2026Fixedeadbbc4

    submittals:Send button hidden when the server would refuse it + Assign BIC refreshes the list (#357)

  • v0.3386Aug 14, 2026Fixedc67f607

    daily-logs:weather comes from observed station readings instead of the forecast (BUG-182) (#355)

  • v0.3385Aug 13, 2026Fixedc19ba0d

    projects:contract value and budget hidden from everyone outside Pencor (BUG-184) (#354)

  • v0.3384Aug 9, 2026Fixedea86324

    submittals:audit trail on the submittal detail page - creation recorded + history card always visible (BUG-176) (#353)

  • v0.3383Aug 9, 2026Fixed228629c

    budget:forecast cell opens the forecast editor on click, yellow auto-calc indicator + auto-calc toggles (BUG-175) (#352)

  • v0.3382Aug 8, 2026Added988aa13

    rfis:RFI PDF embeds attachments as sheets + linked filenames (#351)

  • v0.3381Aug 8, 2026Fixedd0ce4b9

    pdf:Pencor LLC letterhead — RFI/Submittal branded headers + all document logo lines (#349)

  • v0.3380Aug 8, 2026Fixed9551330

    security:editor-gate directory party pickers + project-scope reference resolvers (#348)

  • v0.3379Aug 8, 2026Fixed32cc0be

    security:project-wide tenant gate in project layout + cross-project detail-page asserts (#347)

  • v0.3378Aug 8, 2026Fixed79935f9

    photos,submittals,daily-logs,change-items,sco,rfis:bug-triage batch — photo nav, multi-spec submittals, locked-view comments, CI cost-line fixes + bulk reopen/void, visible SCO overrides (#346)

  • v0.3377Aug 7, 2026Addedb1d69dc

    schedule:five-column company-standard view — ID, Name, Dur, Start, Finish for all users (#345)

  • v0.3376Aug 6, 2026Fixed6d9cd43

    change-items:Estimate Only flag beside Quantity, working Finalize, Final Quantity on OCP/OCO (#344)

  • v0.3375Aug 6, 2026Added41e8e01

    schedule:schedule templates with project import, template apply + pencorTrak menu (#343)

  • v0.3374Aug 5, 2026Fixedec3ad8f

    schedule:light theme no longer renders white text on light backgrounds (#342)

  • v0.3373Aug 4, 2026Added3fef0eb

    schedule:P6-parity CPM fixes, company-standard view defaults, project categories (#341)

  • v0.3372Aug 4, 2026Added18759e4

    timecards:New Timecard opens the period still needing submission (#340)

  • v0.3371Aug 3, 2026Added3954149

    directory:team-page Add User reuses the directory dialog with the project pre-checked (#339)

  • v0.3370Aug 3, 2026Fixed9b54d7f

    schedule:snap vertical sight lines to timescale boundaries (#338)

  • v0.3369Aug 3, 2026Fixed53caa6a

    schedule:walk Longest Path through finish milestones (#337)

  • v0.3368Aug 3, 2026Fixed3699c92

    schedule:horizontal sight lines respect the every-N-rows interval (#336)

  • v0.3367Aug 3, 2026Fixedd14cf74

    schedule:let the Name column shrink on the Relationships panel (#335)

  • v0.3366Aug 3, 2026Added8948e93

    schedule:stamp critical from the driving chain, not total float (#334)

  • v0.3365Aug 2, 2026Added89f2c7a

    schedule:drag-resizable columns on the Relationships third panel (#333)

  • v0.3364Aug 2, 2026Added10bf6ba

    schedule:name the three Relationships-panel lenses for what they measure (#332)

  • v0.3363Aug 2, 2026Added41a9224

    schedule:Longest Path mode on the Relationships tab (#331)

  • v0.3362Aug 2, 2026Addede78f213

    workflow:Pencor-only Manager on RFIs, Submittals + Change Items (#330)

  • v0.3361Aug 1, 2026Fixedfa1eaf3

    bugs:video playback, RFI notification delivery, schedule persistence + critical path (#329)

July 2026

  • v0.3360Jul 30, 2026Fixed1e515ae

    markup:distinct rect-shaped icon for the drag revision cloud (#328)

  • v0.3359Jul 30, 2026Added904cb51

    drawings:WEBP thumbnails + active-job nightly sweep so the filmstrip stops rasterizing PDFs (#327)

  • v0.3358Jul 30, 2026Added12c9f01

    markup:polygon cloud tool behind a Cloud variant flyout (#326)

  • v0.3357Jul 30, 2026Added8f1b3bd

    meetings:letterhead minutes PDF — logo header, left date column, old/new note distinction (#325)

  • v0.3356Jul 30, 2026Fixed5d268c7

    markup:port the inverse-op undo stack into the wired sheet viewer (#324)

  • v0.3355Jul 30, 2026Fixedfb810d4

    markup:replace tail-pop undo with an inverse-op undo stack (#319)

  • v0.3354Jul 30, 2026Added37b90c0

    markup:plain polyline + polygon tools, toolbar icon fixes, hyperlinks visible during markup (#323)

  • v0.3353Jul 30, 2026Fixed258c252

    pdf:refuse password-secured PDFs in split/merge paths instead of emitting corrupt output (#318)

  • v0.3352Jul 30, 2026Fixed10aa899

    drawings:gate module entry on drawings.view (lender loses access) (#322)

  • v0.3351Jul 30, 2026Fixed7552089

    markup:all markup authority rides drawings.markup — retire the drawings.manage gate (#321)

  • v0.3350Jul 30, 2026Addedfc46119

    markup:drawings-viewer markup — per-user persistence + Publish (drawings.manage) (#320)

  • v0.3349Jul 29, 2026Addeddfbb87d

    markup:PDF markup + measurement module (pen, shapes, dimensions, counts — sandbox port) (#317)

  • v0.3348Jul 28, 2026Added67f7d70

    meetings:WPR in-meeting editing — banner notes toggle, line rename, note edit/delete, 3-person nav icon (#316)

  • v0.3347Jul 28, 2026Added5820806

    daily-logs:PDF export (list + date-range detail), man-hours + incident columns (#315)

  • v0.3346Jul 28, 2026Added3c6456c

    photos:lightbox zoom controls, fullscreen toggle, shared viewer on daily logs (#314)

  • v0.3345Jul 27, 2026Improved97a7fc9

    query-dedup:share cached matrix + budgeted-code reads; close owner-contract neither-key holes (#313)

  • v0.3344Jul 27, 2026Fixed86ee5a4

    drawings:land sheet jumps at fit-page and stop the blank page past ~350% zoom (#312)

  • v0.3343Jul 25, 2026Fixed610f86b

    bugs:photo zoom + faster uploads, sent-status CO PDFs, CI description carry, next-orientation button (#311)

  • v0.3342Jul 25, 2026Added91db6eb

    ui:navy rail sidebar with pencorOS wordmark (#310)

  • v0.3341Jul 24, 2026Addedaa861af

    safety:company-wide safety director briefing, construction jobs only (#309)

  • v0.3340Jul 24, 2026Added0c01d16

    orientations:move operator-training question to documentation section (#308)

  • v0.3339Jul 24, 2026Addeda10cea6

    directory:clickable company link in the user detail header (#307)

  • v0.3338Jul 24, 2026Added19311d7

    oco:totals row on the OCO list page proposals + orders tables (#306)

  • v0.3337Jul 24, 2026Added2ccaa79

    ui:company combobox everywhere + fuzzy ranked search (#305)

  • v0.3336Jul 23, 2026Added2f75b1c

    change-orders:direct owner change order to change item link (#304)

  • v0.3335Jul 23, 2026Added8cc13c5

    safety:company-level safety module in the sidebar (#303)

  • v0.3334Jul 23, 2026Addedfe40408

    safety:orientation questions UX — rules-first layout, one-click Yes/No, training-complete signing gate (#302)

  • v0.3333Jul 23, 2026Added951ff43

    safety:previous daily summaries log on the safety hub (#301)

  • v0.3332Jul 23, 2026Addedb3c997b

    safety:incident classifications rework + hub card polish (#300)

  • v0.3331Jul 23, 2026Addeda40f040

    safety:required documentation checklist on the safety hub (#299)

  • v0.3330Jul 23, 2026Added3248b38

    safety:incidents module — merged report + investigation form (#298)

  • v0.3329Jul 23, 2026Added39981f1

    safety:orientations module + safety director daily briefing (#297)

  • v0.3328Jul 22, 2026Added88a5a84

    safety:first aid log + kit inventory module (#296)

  • v0.3327Jul 22, 2026Fixed77e800b

    tests:pin a canonical epoch-dated Pencor company — kills the shared-schema FK flake (#295)

  • v0.3326Jul 22, 2026Fixed9f3ebcd

    shell:tab + bookmark icon is now the login page's OS chip (#293)

  • v0.3325Jul 22, 2026Addeda380d5e

    shell:pencorOS tab icon on every page + complete tab titles (#291)

  • v0.3324Jul 22, 2026Fixed399a1df

    punch-lists:stop revalidatePath-during-render on the seeding first visit (#290)

  • v0.3323Jul 22, 2026Added60613ac

    bug-reports:'Resolved — not sent' status filter for the verification send-queue (#289)

  • v0.3322Jul 22, 2026Fixed1d6fe8f

    changelog:regenerate at Vercel build time — custom buildCommand bypassed the prebuild hook (#288)

  • v0.3321Jul 22, 2026Fixed9aba2dc

    photos:file photos by EXIF capture date — wire the dormant takenAt column (#286)

  • v0.3320Jul 22, 2026Added45cb5cc

    schedule:bulk calendar assign for selected activities (#285)

  • v0.3319Jul 22, 2026Fixed8834274

    submittals:stop column clipping on narrow screens — scrollable list with a min-width floor (RFI list too) (#283)

  • v0.3318Jul 22, 2026Fixed78f6e66

    punch-lists:iOS-tappable native selects in New Punch Item + assignee photo-attach carve-outs (#282)

  • v0.3317Jul 22, 2026Fixedd23e362

    change-items:CI list Budget/Cost columns walk the derivation ladder, matching the detail grid (#281)

  • v0.3316Jul 22, 2026Fixed4e29462

    subcontracts:list + PDF revised amounts derive from executed SCOs, not the dead denormalized column (#280)

  • v0.3315Jul 22, 2026Fixed287104e

    subcontracts:hide doomed Send CTA on stranded envelopes + auto-reconcile stuck DocuSign drafts (#279)

  • v0.3314Jul 22, 2026Fixedcc7224a

    action-items:advance to next item on complete, stop double-refresh hang, preserve punch source links (#278)

  • v0.3313Jul 22, 2026Fixed88761a9

    meetings:WPR warranty exit, custom-row close + show-all last week, Add-Row gating, note draft autosave (#276)

  • v0.3312Jul 22, 2026Fixed08ba957

    specifications:restore spec PDF opening — dedicated file-route branch for SpecSectionRevision (#277)

  • v0.3311Jul 20, 2026Fixed65bdbec

    drawings:stop viewer pan shake/lock when the whole sheet is visible (#275)

  • v0.3310Jul 19, 2026Fixedae32c27

    drawings:no-blank viewer — single fit raster, smooth zoom, ref-driven pan (#274)

  • v0.3309Jul 19, 2026Fixed2e9d00f

    drawings:callout accuracy — stacked-bubble links, circle hotspots, table filter + viewer load priority (#273)

  • v0.3308Jul 19, 2026Addedc46e8d9

    drawings:sheet-number hyperlinks — detect callouts, clickable viewer hotspots + backfill (#272)

  • v0.3307Jul 19, 2026Added6bed975

    drawings:revision compare (overlay difference + side-by-side) (#271)

  • v0.3306Jul 19, 2026Added9cacd7e

    drawings:flush-right mobile viewer header + recently-viewed Back button (#270)

  • v0.3305Jul 18, 2026Addedfa8213d

    drawings:combined-set PDF download/send, touch viewer, bulk-upload hardening (#269)

  • v0.3304Jul 17, 2026Fixed06adde5

    schedule:persist remaining duration + editable Dur/Rem Dur inputs + grid keyboard nav (BUG-124) (#268)

  • v0.3303Jul 17, 2026Fixed653189b

    storage,daily-logs:stop cold-start bucket-create log noise + restore deleted daily-log drafts on recreate (#267)

  • v0.3302Jul 17, 2026Fixed9fd14aa

    rfis:null history actor on token answers + token loophole hardening (#266)

  • v0.3301Jul 16, 2026Fixed4b68a3c

    oco:drop Field Change / Paid in Full from OCP details card, taller description box (#265)

  • v0.3300Jul 16, 2026Fixedecc8e7e

    submittals:auto-advance to Reviewed after workflow edits + manager email (#264)

  • v0.3299Jul 16, 2026Added5ede402

    sco:DocuSign-driven workflow (Draft -> Final Draft -> Sent -> Executed) (#263)

  • v0.3298Jul 16, 2026Added79ed927

    timecards:copy prior-period rows into new cards, add-row dialog, iOS submit fix (#262)

  • v0.3297Jul 16, 2026Fixed3c66e8e

    numbering:retry concurrent number collisions in CIs, OCPs/OCOs, SCOs, daily-log spawns (#260)

  • v0.3296Jul 16, 2026Fixed0facca5

    meetings:serialize meeting-number assignment with a per-scope advisory lock (#259)

  • v0.3295Jul 16, 2026Fixed4c8a76e

    change-items:edit the CI manager at any status (#258)

  • v0.3294Jul 16, 2026Fixed8b7aca3

    meetings:edit details, renumber, make one-offs recurring, delete voided (#257)

  • v0.3293Jul 15, 2026Added1bff102

    rfis:reviewer workflow editing parity with submittals (#256)

  • v0.3292Jul 15, 2026Fixed8985d5e

    submittals:delete a clean review round from Edit Workflow (#255)

  • v0.3291Jul 15, 2026Fixedbb18379

    owner-contracts:edit standard CO markup inline on the contract overview (#254)

  • v0.3290Jul 15, 2026Added7c45fd3

    change-management:editable-until-sent gates, budget source rules, CI Proceeding reorder, estimated-quantity lines, reopen flows (#253)

  • v0.3289Jul 15, 2026Fixed1a0e87a

    subcontracts:reconcile dead DocuSign envelopes in void + refresh (BUG-121) (#251)

  • v0.3288Jul 15, 2026Fixed828ec7b

    subcontracts:void signature request no longer clobbers a completed-webhook race winner (#250)

  • v0.3287Jul 15, 2026Added7e23d73

    oco:Owner Change Settings — signature config, OCPs-off direct pull, DocuSign envelope management (#252)

  • v0.3286Jul 14, 2026Fixed54d96b7

    action-items:typeable person pickers + app-wide combobox sweep (#248)

  • v0.3285Jul 14, 2026Added6d07de1

    meetings:close out WPR custom line items in place (#247)

  • v0.3284Jul 14, 2026Added53facc5

    action-items:bulk assign firm / person / due date from the list (#246)

  • v0.3283Jul 14, 2026Fixed67692b2

    api:mirror page-level carve-out scoping on record-serving API routes (#244)

  • v0.3282Jul 14, 2026Fixeda0af94e

    oco:entering Edit on the proposal Details card crashed the page (#245)

  • v0.3281Jul 14, 2026Fixed59ecd11

    drawings:OCR fallback no longer crashes the parse function on Vercel (#243)

  • v0.3280Jul 14, 2026Fixed7c0dba5

    permissions:matrix CSV — subs hold subview, not view-all (#242)

  • v0.3279Jul 14, 2026Fixed017a385

    drawings:revive sheet detection in production + cleaner titles (#241)

  • v0.3278Jul 14, 2026Fixedbd0b1f4

    rfis:export every matching row in the RFI list PDF (#240)

  • v0.3277Jul 14, 2026Added543e19f

    action-items:printable PDF export of the filtered list (#237)

  • v0.3276Jul 14, 2026Fixedcf052d3

    change-items:editable Details card on the change item detail page (#236)

  • v0.3275Jul 14, 2026Fixed130425a

    drawings:preselect the set when bulk-uploading from a set's menu (#235)

  • v0.3274Jul 11, 2026Addedb371c0d

    photos:MP4/MOV video upload with size limits in the gallery (#234)

  • v0.3273Jul 11, 2026Addedc630657

    action-items:Previous/Next stepping through the filtered list from the detail page (#233)

  • v0.3272Jul 11, 2026Fixed63629a0

    submittals:removable/replaceable primary file + editable All/Any reviewer mode post-create (#232)

  • v0.3271Jul 11, 2026Added0fb6896

    bug-reports:edit a report's description from the tracker detail dialog (#231)

  • v0.3270Jul 11, 2026Fixed480cab9

    safety:daily inspection — member picker maps to action item, N/A counts as reviewed, pinned summary banner (#230)

  • v0.3269Jul 10, 2026Addede888c35

    submittals:one-click Distribute & Create Revision on R&R/Rejected outcomes (#229)

  • v0.3268Jul 10, 2026Fixed3b619c9

    time-off:await PTO notification emails so serverless freeze can't drop them (#228)

  • v0.3267Jul 10, 2026Added33b373f

    team:curated Team roster with multiple Super/PM leads, decoupled from permissions (#227)

  • v0.3266Jul 9, 2026Fixed4abf37c

    scheduler:in-progress predecessors drive SS/SF off their actual start; render started bars from the actual start (#226)

  • v0.3265Jul 9, 2026Added4498f12

    team:leadership header + hide general Pencor staff + subcontract parties on roster (#225)

  • v0.3264Jul 9, 2026Added40dbef7

    team:gate Pencor roles to Pencor employees + add search-by-company to Add Member (#224)

  • v0.3263Jul 9, 2026Addede455bf6

    subcontracts:change sub signer / manager post-send — void + reopen to Contract Final (#222)

  • v0.3262Jul 9, 2026Added591176b

    submittals:Edit Workflow available in Draft & Final Draft (#221)

  • v0.3261Jul 9, 2026Added27dc7ca

    uploads:observation & action-item document files direct-to-Supabase (#220)

  • v0.3260Jul 9, 2026Added8b9edea

    uploads:direct-to-Supabase for all user files; imports to 4.5MB routes (#219)

  • v0.3259Jul 8, 2026Addedaeba51e

    bulk status edit + camera photos + budget builder tools + Brandon bug fixes (#217)

  • v0.3258Jul 8, 2026Added3cab9c1

    DocuSign envelope management + timecard leave rows + insurance/subcontract UX (#216)

  • v0.3257Jul 8, 2026Fixed3a5ca8e

    meetings:make company meeting-type cards fully clickable with a basic hover (#215)

  • v0.3256Jul 8, 2026Added78485fb

    projects:Pencor-only date chips + budget over/under chip on project cards (#214)

  • v0.3255Jul 7, 2026Fixed67e0aac

    schedule:redefine overdue (3 checks vs current date), fix stale-data-date lookahead divergence, Delays button in both schedule modules (#213)

  • v0.3254Jul 7, 2026Addedd7c2bac

    schedule:schedule enhancements — Daily Log column, overdue tracking, editable actuals & delay register (#212)

  • v0.3253Jul 7, 2026Addedd68c3d1

    submittals:parallel-safe reviewer answers, Edit Workflow, PDF download, viewer file access (#211)

  • v0.3252Jul 7, 2026Addedce10d39

    punch-lists:default the assignee from the responsible company (sub → field contact, Pencor → superintendent) (#210)

  • v0.3251Jul 7, 2026Added0ebb54a

    schedule:Daily Log write-back review fixes, "Daily Log Direct Update" rename, Act Start/Finish columns (#209)

  • v0.3250Jul 7, 2026Added78d088e

    schedule:tri-state Daily Log write-back — Off / Email approval / On (direct actuals, no reschedule) (#208)

  • v0.3249Jul 6, 2026Added5994f14

    schedule:per-activity Daily Log column — filters which activities the super reports on (#207)

  • v0.3248Jul 6, 2026Added8999eff

    schedule:per-project Daily Log schedule-reporting toggle in the Project dialog (#206)

  • v0.3247Jul 6, 2026Fixedcdcfe8f

    bugs:batch 4 — PO insurance-not-required, photo picker, safety button, team contact cards (#205)

  • v0.3246Jul 6, 2026Fixed38167f6

    docusign:resend signature reminder via the recipients collection endpoint (#204)

  • v0.3245Jul 6, 2026Fixed69a3633

    auth:verify reset & invite tokens on submit, not on the link GET (#203)

  • v0.3244Jul 6, 2026Fixedcfbfdf9

    submittals:reviewer attachment uploads go direct-to-storage (both internal & external) (#202)

  • v0.3243Jul 6, 2026Added8d9b701

    action-items:optional Contract reference — link a Subcontract or Owner Contract with a clickable number—title chip (#201)

  • v0.3242Jul 6, 2026Fixedbd8d8ec

    budget:pinning the Description column no longer rescales every column (#200)

  • v0.3241Jul 5, 2026Improvedeb34ba6

    auth:request-cache permission & Pencor lookups — ~45→~13 queries per page load (#199)

  • v0.3240Jul 4, 2026Fixedee2fc18

    budget,bugs:column separators, committed-cost contract summary, bug-filter count (#198)

  • v0.3239Jul 4, 2026Addeded260c0

    budget:user-resizable columns with per-user, per-project persistence (#197)

  • v0.3238Jul 4, 2026Fixed24612f1

    bugs:batch 2 — submittal register uploads + submitter autofill, trade optional at SENT, draft-OAC meeting delete (#195)

  • v0.3237Jul 4, 2026Fixedc0936c5

    bugs:batch 1 — RFI attachments direct-to-storage, sortable subcontract list, photo lightbox arrows, wider budget description (#194)

  • v0.3236Jul 4, 2026Added26af345

    subcontracts:per-signer DocuSign resend while out for signature (#193)

  • v0.3235Jul 4, 2026Addedc408c32

    photos:daily-log photos live in the gallery (Daily Log album) + drag-and-drop upload (#192)

  • v0.3234Jul 4, 2026Added29d1c27

    projects:sortable projects list + sticky header on the company People & Project Access matrix (#191)

  • v0.3233Jul 3, 2026Added2228449

    meetings:WPR flow upgrades — publish-review note context, one-click next-draft, attendee & line-item carry across the series boundary, line-item stage moves, all lanes always visible (#188)

  • v0.3232Jul 3, 2026Addedfe7ae4a

    meetings:WPR close-out tracks one line item per project — single-thread rows, full-width agenda, collapsed nav rail (#187)

  • v0.3231Jul 3, 2026Added0a7f7e4

    timecards:admin reminder roster - per-employee opt-out of biweekly reminder emails on the settings page (timecards.settings gated) (#186)

  • v0.3230Jul 3, 2026Addedc24ce69

    documents:drawing & spec parsing on the vendored pencorDocs engine — sheet/section auto-detection (#184)

  • v0.3229Jul 3, 2026Added63a836d

    timecards:biweekly reminder emails at 4pm ET on period-end Friday - missing-days reminder or thank-you per employee, secret-guarded cron (#185)

  • v0.3228Jul 3, 2026Addedf8c0ebc

    meetings:WPR line items carry week-to-week — series auto-attach, add/remove line rows, test-project exclusion (#183)

  • v0.3227Jul 3, 2026Fixedbc5c783

    projects:admin assignments save reliably — read-only Selects truly disabled + cycle-free BIC notification import (#182)

  • v0.3226Jul 3, 2026Added1129f70

    meetings:WPR grouped ledger — status-driven stage groups, sticky banner stack, dense rows, live status chips + line action items (#181)

  • v0.3225Jul 2, 2026Fixed7129001

    action-items:validate source links by direct lookup, not first-20 search scan (#179)

  • v0.3224Jul 2, 2026Fixed9714eb8

    action-items:automated items show provenance, project, and clickable source links (#178)

  • v0.3223Jul 2, 2026Addedf5ec150

    meetings:delete open meetings + fix hub type-filter links (#177)

  • v0.3222Jul 2, 2026Added6c3060f

    contracts:Mark Sent (outside pencorOS) override + pencorOS casing (#176)

  • v0.3221Jul 2, 2026Added6ca535b

    docusign:full e-signature — owner contracts, subcontracts, SCO/OCP/OCO with AIA documents + anchor tags (#175)

  • v0.3220Jul 1, 2026Fixed647a6c2

    subcontracts:route FieldContactCard through the shared hardened vCard builder (#174)

  • v0.3219Jul 1, 2026Added6e72b9a

    directory:user contact card (QR + save + email) and team Company/Phone columns (#173)

  • v0.3218Jul 1, 2026Fixede37f1e0

    submittals:validate uploadedFiles handles with Zod before create (#172)

  • v0.3217Jul 1, 2026Fixedd01d709

    submittals:upload attachments via directUpload to bypass 4.5 MB limit (#171)

  • v0.3216Jul 1, 2026Fixed6960dac

    directory,submittals,subcontracts:BUG-47/54/55 (#169)

  • v0.3215Jul 1, 2026Fixedd45507a

    subcontracts,directory:BUG-57/58 workflow + BUG-59 company dedup (#168)

  • v0.3214Jul 1, 2026Added0cc30da

    bug-tracker:bulk list actions + reassign reporter (#167)

  • v0.3213Jul 1, 2026Fixeddf8aa12

    bug-tracker:sequential BUG-# IDs + openable screenshot attachments (#166)

  • v0.3212Jul 1, 2026Fixeddf39924

    owner-contracts:direct-upload the contract draft (bypass 4.5 MB limit) (#165)

June 2026

  • v0.3211Jun 29, 2026Added96c311f

    account:profile menu + external-member project visibility fix (#164)

  • v0.3210Jun 29, 2026Addedfb35708

    subcontracts:reactivate DocuSign e-signature (#163)

  • v0.3209Jun 27, 2026Fixed1d3694a

    bell:wire the notification bell on company pages (#161)

  • v0.3208Jun 27, 2026Fixed2d4da63

    bugs:v5 batch — header/bell, upload crashes, budget fit, My Work (#160)

  • v0.3207Jun 27, 2026Added7423635

    email:branded layout standardization + RFQ attachments + bug-verify fix (#159)

  • v0.3206Jun 26, 2026Fixedfd0df46

    email:escape user input in timecard-reject + pricing-received emails (#158)

  • v0.3205Jun 26, 2026Fixed3fd84e0

    subcontracts:bottom buffer under the subcontracts list (#157)

  • v0.3204Jun 26, 2026Added038971a

    insurance:subcontract status + critical lens on the insurance hub (#156)

  • v0.3203Jun 26, 2026Fixedeb2fd32

    email:never dispatch to reserved/test domains + mock Resend in tests (#155)

  • v0.3202Jun 26, 2026Fixedac3699d

    projects:stop edit-form Save from silently re-activating a project (#154)

  • v0.3201Jun 26, 2026Fixed3e71ada

    change-items:route $0 and credit (negative) cost lines to Owner/Sub COs (#153)

  • v0.3200Jun 26, 2026Addedabdc9c0

    action-items:subcontract link shows firm+project; insurance items typed Insurance (#152)

  • v0.3199Jun 26, 2026Added0615219

    action-items:searchable company/responsible/project filters (#151)

  • v0.3198Jun 26, 2026Addedf238b84

    insurance:immediate reconcile on cert upload / expiration entry (#150)

  • v0.3197Jun 26, 2026Addeddb15b97

    insurance:link subcontractor names on the insurance hub to their company page (#148)

  • v0.3196Jun 26, 2026Addede2abfb2

    insurance:inline COI expiration field under the COI on Company Details (#146)

  • v0.3195Jun 26, 2026Addedc3dec6e

    subcontracts:link the subcontractor name to its company directory page (#145)

  • v0.3194Jun 26, 2026Addedd0bf7eb

    insurance:compliance hub, auto-approval, daily expiry scan + cascade (#144)

  • v0.3193Jun 26, 2026Fixed57ec2b0

    subcontracts:number regen on type change, combobox scrollbar + list scroll (#143)

  • v0.3192Jun 25, 2026Added50d49d0

    budget:drag-to-reorder column editor + table readability (#142)

  • v0.3191Jun 25, 2026Addedb5b7518

    subcontracts:show a paperclip document chip on the workflow stepper (#141)

  • v0.3190Jun 25, 2026Added12d18e7

    subcontracts:notify Contract/Insurance Admin (or the pool) when they become Ball in Court (#140)

  • v0.3189Jun 25, 2026Fixed4efc889

    subcontracts:show all attached files on the Documents tab + separate the executed contract (#139)

  • v0.3188Jun 25, 2026Fixed1d144ee

    auth:raise invite & magic-link expiry to the 24h Supabase maximum (#138)

  • v0.3187Jun 25, 2026Addeddccaa9c

    directory:external users can view their own company roster (OS-26) (#134)

  • v0.3186Jun 24, 2026Addedf5f2b9d

    contracts:PO PDF export, status step-back, sub-PM card, whole-dollar money inputs (OS-23/24/25/27) (#133)

  • v0.3185Jun 24, 2026Added0df63a8

    subcontracts:buyout-template bulk-create (OS-10) + draft/final-draft delete (#132)

  • v0.3184Jun 24, 2026Addede1a1b96

    cost-codes:searchable cost-code picker across CI/SCO/OCO grids + owner SOV (OS-09 PR 3/3) (#131)

  • v0.3183Jun 24, 2026Addeda9599a2

    cost-codes:searchable cost-code picker — shared component + Budget migration (OS-09 PR 1/3) (#129)

  • v0.3182Jun 24, 2026Added376e0e8

    bug-reports:sortable tracker columns + reporter self-close via tokenized email (OS-22) (#128)

  • v0.3181Jun 24, 2026Added8b57e2f

    company Abbreviated Name field + Closeouts route stub (OS-16, OS-18) (#127)

  • v0.3180Jun 23, 2026Addedb031fa4

    owner-contracts:wet-signed Draft→Executed, whole-dollar values, and OCP/OCO audit fixes (OS-19/20/21) (#126)

  • v0.3179Jun 23, 2026Fixed9b5814b

    PTO approvals tab + committed-cost, draft-edit, and date-display defects (OS-01/02/03/06/08) (#125)

  • v0.3178Jun 23, 2026Addedaf5b7d6

    bug-reports:dev-only bug tracker — status/priority triage, verify-fix email, manual entry (#124)

  • v0.3177Jun 23, 2026Fixed1d2a930

    projects:inherit default role on project-create + permission-filter the project nav (#123)

  • v0.3176Jun 23, 2026Addedacf70b2

    punch-list:server-rendered PDF print (filter/sort-aware, 3 items/page with photos) (#122)

  • v0.3175Jun 23, 2026Added029f6a7

    punch-list:mobile-first punch list module — 3 phase-lists, photos, each item an action item (#121)

  • v0.3174Jun 22, 2026Addedf29903e

    budget:budgeted/unbudgeted cost-code pickers on Budget Transfer From/To (#120)

  • v0.3173Jun 22, 2026Addedf57db3c

    directory:bulk user role edit + import default role Viewer (not Project Engineer) (#118)

  • v0.3172Jun 22, 2026Addedb3cec9e

    directory:Procore CSV user import + merge/replace resolution, company search, change-history audit (#117)

  • v0.3171Jun 22, 2026Fixede9ce044

    directory:show 0-contact firms in By-Company view + hide toggle (#116)

  • v0.3170Jun 22, 2026Added424c1c0

    companies:bulk company import from CSV with merge/ignore/replace (directory.admin) (#115)

  • v0.3169Jun 22, 2026Added583b9f7

    meetings:meetings module (project + company) — agendas, carry-forward minutes, action items, recurring series (#113)

  • v0.3168Jun 20, 2026Added29eb183

    photos:per-photo tags + description editing, and a tag filter box (#110)

  • v0.3167Jun 20, 2026Addedfc0b9cd

    photos:project photo gallery — albums, date tree, camera/upload, thumbnails (#109)

  • v0.3166Jun 20, 2026Added3dd64d9

    timecards:PTO permission model, auto-open pay periods, anchor fix + UI cleanup (#108)

  • v0.3165Jun 20, 2026Fixede1599da

    land Inspections, Timecards & PTO onto main (#104/#105/#106 mis-merged into stacked bases) (#107)

  • v0.3164Jun 20, 2026Addedb1059ce

    daily-logs:Daily Log module — activities, delays, manpower, weather, schedule-update approval (#103)

  • v0.3163Jun 19, 2026Added897d6dc

    projects:assign Superintendent + Project Manager (create dialog + editable detail card) (#102)

  • v0.3162Jun 19, 2026Addeda1657d6

    safety:daily-safety U items create action items in REVIEW status (#101)

  • v0.3161Jun 19, 2026Fixed76f6c1e

    safety:show real numbers on the Safety hub (drop placeholder counts) (#100)

  • v0.3160Jun 19, 2026Fixed4d98038

    submittals:widen the New Submittal dialog to match New RFI (#99)

  • v0.3159Jun 19, 2026Fixedc47a935

    submittals:scrollable token respond page + Current Reviews card (#98)

  • v0.3158Jun 19, 2026Addedadd42e0

    safety:show the inspector (performing user) on daily safety inspections (#97)

  • v0.3157Jun 19, 2026Added5765bcb

    safety:Daily Safety Inspections module (checklist, action items, photos) (#96)

  • v0.3156Jun 19, 2026Fixedafee384

    safety:Incident Reports card metric shows open count (#95)

  • v0.3155Jun 19, 2026Added758993f

    safety:Safety module hub page (Field Docs) (#94)

  • v0.3154Jun 18, 2026Added2bba685

    ui:responsive project header nav + view-only schedule polish (#92)

  • v0.3153Jun 18, 2026Added50d9852

    observations:Observations module — groups action items, PDF packet + print-to-email, settings (#89)

  • v0.3152Jun 18, 2026Added2bcf2e7

    action-items:priority field + full-field create dialog (photos/files) (#87)

  • v0.3151Jun 18, 2026Added639497e

    action-items:new Action Items module — project + company surfaces, cross-module spawn API (#86)

  • v0.3150Jun 17, 2026Fixedaa6200b

    schedule:fit keeps row height; consolidate column views into the Columns dialog (#85)

  • v0.3149Jun 17, 2026Added5bc43f2

    schedule:add per-user date format selector in the Columns dialog (#84)

  • v0.3148Jun 17, 2026Addedd41a044

    schedule:persist user theme per-account (follows across devices/sessions/projects) (#83)

  • v0.3147Jun 17, 2026Fixed2f748f5

    schedule:per-user view (incl. header height) persists in read-only view mode (#82)

  • v0.3146Jun 17, 2026Added9ac64e5

    schedule:add header band-height option (transfers to PDF) (#81)

  • v0.3145Jun 17, 2026Fixed59948da

    schedule:PDF header shows Data Date + Current Date (M/D/YYYY) (#80)

  • v0.3144Jun 17, 2026Added6a2977b

    schedule:company-global calendars + group categories, per-user-per-project views, copy-calendar + chips fix (#79)

  • v0.3143Jun 16, 2026Added3f77568

    schedule:add header text size + bold; gate gantt row-line on sight-lines toggle (#78)

  • v0.3142Jun 16, 2026Fixed9445ff7

    schedule:correct print/PDF rendering — colors, row height, window, dots, sight lines, logo (#77)

  • v0.3141Jun 16, 2026Fixed8fe5726

    drawings:sync thumbnail pan/zoom on the upload labeling page + pre-fill name on revisions (#76)

  • v0.3140Jun 16, 2026Fixed5c8a112

    schedule:re-tie the .xer import to the save schema; fix lite panel resize + header overlap (#75)

  • v0.3139Jun 15, 2026Fixed2ad6d90

    directory:inherit the user's default role when adding them to a project (#74)

  • v0.3138Jun 15, 2026Addedaeb156a

    profile:header initials chip linking to self profile, help chip, and self-edit (#73)

  • v0.3137Jun 15, 2026Addedb2b3271

    projects:add Due Diligence, Entitlement & Design statuses (#72)

  • v0.3136Jun 15, 2026Fixed88ab28f

    directory:require a valid email before enabling Add User (#71)

  • v0.3135Jun 15, 2026Fixed6dae6f1

    schedule:scale PDF bar-label font to the print row pitch (was oversized) (#70)

  • v0.3134Jun 14, 2026Added3be5f9b

    schedule:Gantt header color pickers, Schedule Guide tab, wheel-to-scroll (Ctrl+wheel zoom), light-theme button fixes (#69)

  • v0.3133Jun 14, 2026Fixeda1926e3

    schedule:data-date drag tracks the cursor 1:1 + re-draggable proposed line; topbar polish (badge by save-status, black Run) (#68)

  • v0.3132Jun 14, 2026Addedecd28c3

    schedule:PDF renderer overhaul (full style transfer + header/footer/legend), table-only group bands, unselectable gantt, current-date chip (#67)

  • v0.3131Jun 14, 2026Addeddabeae3

    schedule:gantt UX batch — category bar labels, past-fit zoom, group-inherit add, arrow cell nav, non-work shade toggle (#66)

  • v0.3130Jun 14, 2026Addede3a2e8f

    schedule:reorderable group categories/values + group-label options (#64)

  • v0.3129Jun 14, 2026Addedd4038e9

    schedule:Enter on a selected activity edits its name (#63)

  • v0.3128Jun 14, 2026Fixedd890fd8

    schedule:restore three-zone topbar so center buttons never shift (#62)

  • v0.3127Jun 14, 2026Fixed92af19b

    schedule:timescale fills the pane when zoomed out (no blank gutter) (#61)

  • v0.3126Jun 14, 2026Addedaaa38dc

    schedule:keyboard add/delete, hover relationship ports + drag-to-link, single DD label (#60)

  • v0.3125Jun 14, 2026Fixed2153abf

    schedule:pin the save-status chip width so the toolbar stops shifting (#59)

  • v0.3124Jun 14, 2026Fixedf7d046d

    schedule:embed UX + stuck-saving hardening (follow-ups to #57) (#58)

  • v0.3123Jun 14, 2026Added1413a66

    schedule:embed pencorTrak as the pencorOS schedule module (#57)

  • v0.3122Jun 11, 2026Added4a4eeac

    rfis:reviewer respond-flow fixes + Responsible Contractor on RFI & Submittal (#56)

  • v0.3121Jun 11, 2026Addedf8abb80

    ui:Pencor Design System + DetailPageShell — SCO is the first migrated module (#55)

  • v0.3120Jun 10, 2026Fixedba931b7

    change-items:subcontract number inline after the subcontractor name — clickable, wraps (#54)

  • v0.3119Jun 10, 2026Fixed7e2fdd8

    auth:close missing permission gates found by the full-repo role-gate audit (#53)

  • v0.3118Jun 10, 2026Fixed106a3b5

    change-items:right-align Link column + center Xfer/Fcst flag checkboxes (#52)

  • v0.3117Jun 10, 2026Added1e598da

    change-items:ROM holds the line amount — auto-fills from qty × rate, Subtotals column removed (#51)

  • v0.3116Jun 10, 2026Fixed4b7c632

    oco:markup flows contract→OCP→OCO + Pending OCO advance rolls into a real order (#50)

  • v0.3115Jun 10, 2026Added2725110

    change-orders:end-to-end change-order lifecycle — detail-page parity, budget drill-downs, contract rollups (#49)

  • v0.3114Jun 10, 2026Addedc093d63

    change-items:double-row cost-lines grid (Budget/Costs stacked rows) (#48)

  • v0.3113Jun 9, 2026Fixed993bd70

    change-items:compact cost-lines grid + drop RFI-header New Change Item stub (#47)

  • v0.3112Jun 9, 2026Fixed11db631

    team:project roles are read-only on the Team page — edit via Directory only (#46)

  • v0.3111Jun 9, 2026Fixede41b766

    directory:persist the Add User dialog's Default role as the user's defaultProjectRole (#45)

  • v0.3110Jun 9, 2026Fixed1163dad

    budget:lock freezes only the Original Budget column — forecasting stays available (#44)

  • v0.3109Jun 9, 2026Addedb0dc337

    oco-sco:2-column detail pages for OCP, OCO, and SCO; CI grid number input polish (#43)

  • v0.3108Jun 9, 2026Added1545523

    change-items:CI detail page rework — 2-col layout, edit-mode grid, Type-gated Open, forecast record view (#42)

  • v0.3107Jun 8, 2026Addeddd1518d

    budget:budget transfers permanently lock the budget (edits frozen, transfers stay open) (#41)

  • v0.3106Jun 8, 2026Addedc01402e

    change-items:CI/OCP detail refinements — stepper, real budget tools, OCP PCO fields, attachments (#40)

  • v0.3105Jun 8, 2026Added9260071

    change-items:pull-based provenance breakout + cost-line grid + OCO batch (#39)

  • v0.3104Jun 8, 2026Fixedaf9d85d

    change-items:show subcontractor name in Add Cost Line subcontract picker (#37)

  • v0.3103Jun 8, 2026Added1338b43

    owner-contracts:use UserCombobox for signers in Send Contract dialog (#36)

  • v0.3102Jun 8, 2026Fixedbe2b2d4

    subcontracts:Send-for-Signature in stepper header + contract-PDF upload at Contract Final (#35)

  • v0.3101Jun 8, 2026Fixed769a900

    owner-contracts:add contract-draft upload at Final Draft; drop 'scope sheet' wording (#34)

  • v0.3100Jun 7, 2026Added0d35f17

    users:bulk import users from .xlsx (Project/Pencor Admin only) (#33)

  • v0.3099Jun 7, 2026Fixed11a4bd6

    projects:relax admin id validators from .cuid() to .min(1) (#32)

  • v0.3098Jun 7, 2026Addedf4d3978

    users:add an 'Add User (No email)' option to the create-user dialog (#30)

  • v0.3097Jun 7, 2026Fixed517123b

    subcontracts:show the signed-copy PDF drag box at SENT for any editor (#28)

  • v0.3096Jun 7, 2026Added42f63fa

    change-items:DRAFT-only row delete for change items, OCOs, SCOs (#27)

  • v0.3095Jun 7, 2026Addedeb08624

    budget:Budget Transfer tool (Change Item Management target #4) (#26)

  • v0.3094Jun 6, 2026Addedcb81557

    change-items:CI-locked forecast / Proceeding flow (target #3.5) (#25)

  • v0.3093Jun 6, 2026Added8140215

    sco:build the Subcontract Change Orders module (target #3) (#24)

  • v0.3092Jun 6, 2026Addedc5af3dc

    oco:build the Owner Change Orders module (target #2) (#23)

  • v0.3091Jun 6, 2026Added2a7d206

    change-items:build the Change Items module (target #1) (#22)

  • v0.3090Jun 5, 2026Added3bd010c

    nav:Timecards company module + company side tools for all Pencor staff (#18)

  • v0.3089Jun 5, 2026Added883066f

    permissions:company-level access, derivative financials nav + RBAC consolidation (#17)

  • v0.3088Jun 5, 2026Fixedb022a85

    auth:repair invite & reset links via server-side token_hash verifyOtp

  • v0.3087Jun 2, 2026Added3642d24

    drawings:void sheets via hard-delete + append-only audit log (#12)

  • v0.3086Jun 2, 2026Addedf259b58

    security:finish auth/permission hardening — gate all built-module privileged actions (#11)

  • v0.3085Jun 2, 2026Added218543b

    drawings:void = hard-delete sheet + append-only VoidedDrawingLog

  • v0.3084Jun 1, 2026Fixed8dd6690

    email:resolve outbound link origin via getAppUrl() so links are always live (#10)

May 2026

  • v0.3083May 31, 2026Added43c03da

    users:edit-lock User Details + Resend Invitation in header

  • v0.3082May 31, 2026Addedeeff999

    users:strict-outrank rule for active toggle + Pencor Dev guard

  • v0.3081May 31, 2026Fixed504f9b2

    users:fall back to magiclink when invite-type rejects existing auth users

  • v0.3080May 31, 2026Fixed917f6f6

    directory:make Add Company button blue (default variant)

  • v0.3079May 31, 2026Added93e08b1

    directory:Add Company button next to Add User

  • v0.3078May 31, 2026Fixed4de875d

    companies:drop redundant Building2 icon next to company name

  • v0.3077May 31, 2026Addedacb65df

    companies:drag-and-drop logo frame left of the company title

  • v0.3076May 31, 2026Fixed5328b14

    companies:hide required-* on locked Company Basic Info

  • v0.3075May 31, 2026Added14c2ab3

    companies:collapse whitespace between users and project columns

  • v0.3074May 31, 2026Addedee05480

    companies:left-justify cells in the user×project matrix

  • v0.3073May 31, 2026Addeddd17017

    companies:tighten project access matrix — narrower columns, 2-line role labels

  • v0.3072May 31, 2026Added201d6ec

    companies:user×project access matrix + read-only-by-default Basic Info

  • v0.3071May 31, 2026Added393b47c

    users:rebuild Add User dialog + Resend-based invite + per-company Add-User entry

  • v0.3070May 31, 2026Fixedf589211

    lint:drop unused imports and dead vars blocking docs-centralization merge

  • v0.3069May 31, 2026Fixed8564eb8

    lint:drop unused imports and dead vars blocking docs-centralization merge

  • v0.3068May 31, 2026Added61a0d74

    projects:show owner-contract dates + full address on project cards

  • v0.3067May 31, 2026Addedb0f8319

    in-app bug reporter with screenshot upload + email

  • v0.3066May 31, 2026Addedf043d74

    changelog panel on login + /changelog public page

  • v0.3065May 31, 2026Addeda7afd54

    large-file uploads, drawing viewer Back-to control, spec set management

  • v0.3064May 31, 2026Fixed109e156

    meta:lowercase browser title to "pencorOS"

  • v0.3063May 31, 2026Fixed7b03c40

    ci:add DIRECT_URL env var for Prisma migrate deploy

  • v0.3062May 31, 2026Fixed6da0be7

    ci:reword "Contact" in custom-login README to pass docs linter

  • v0.3061May 31, 2026Fixed4b78b6d

    login:update tagline to "the operating system for Pencor Construction"

  • v0.3060May 31, 2026Fixedb9bc722

    login:wrap "//"-prefixed tagline as a string expression

  • v0.3059May 31, 2026Added99a054f

    login:redesign sign-in screen to cover + roadmap design

  • v0.3058May 30, 2026Fixedba07819

    ci:unbreak ESLint flat config under Node 24 / ESLint 9.39

  • v0.3057May 30, 2026Fixed3932046

    auth:hard-navigate after login/set-password + allow /auth callback unauthenticated (fixes Supabase login bounce)

  • v0.3056May 30, 2026Fixed591d422

    build:exclude .next/cache + public/uploads from serverless tracing

  • v0.3055May 30, 2026Fixed210ddbd

    owner-contracts:make getPencorCompanyId deterministic + pin test contractor to own company (kills shared-DB flake)

  • v0.3054May 30, 2026Fixeda9749e3

    build:force-dynamic on (dashboard) layout so auth-gated pages aren't prerendered

  • v0.3053May 30, 2026Fixed277e9d0

    build:rename useSupabaseStorage off the use* prefix (rules-of-hooks) + prefer-const in company test

  • v0.3052May 30, 2026Fixeda6436d4

    rfis:add key to sendButton in EditableQuestion to silence React key warning

  • v0.3051May 30, 2026Fixedfbae609

    rfis:widen New RFI dialog to prevent horizontal scroll from long attachment names

  • v0.3050May 30, 2026Added2012279

    permissions:gate directory pages/nav (view + carve-outs) + matrix editor

  • v0.3049May 29, 2026Added1645e39

    permissions:gate directory company actions + admin roster

  • v0.3048May 29, 2026Addeda7a1326

    permissions:gate directory user actions + role-assignment ladder

  • v0.3047May 29, 2026Addede8f9f4a

    permissions:UI gates for drawings/specs detail actions

  • v0.3046May 29, 2026Addeda4e0b66

    permissions:gate submittal create/edit/settings (+ rfi.settings)

  • v0.3045May 29, 2026Addedf191cae

    permissions:gate drawing-set delete (drawings.void)

  • v0.3044May 29, 2026Addedd5cec18

    permissions:gate specifications upload/edit/delete

  • v0.3043May 29, 2026Added7935223

    permissions:gate drawings upload/edit (drawings.upload / drawings.edit)

  • v0.3042May 29, 2026Added6956b8a

    permissions:gate subcontract create/edit (subcontract.create / .manage)

  • v0.3041May 29, 2026Addedb2de862

    permissions:gate project settings edit (project.settings)

  • v0.3040May 29, 2026Added120fd5a

    permissions:gate project settings edit (project.settings)

  • v0.3039May 29, 2026Added889ae06

    permissions:gate project settings edit (project.settings)

  • v0.3038May 29, 2026Added8dd2d70

    permissions:gate owner-contract create/edit (ownerContract.create / .manage)

  • v0.3037May 29, 2026Added11267b6

    permissions:gate RFI create/edit (rfi.create / rfi.edit)

  • v0.3036May 29, 2026Addedcf50e61

    permissions:gate contract terminal transitions (owner/subcontract .manage)

  • v0.3035May 29, 2026Added881d277

    permissions:gate budget settings (budget.settings)

  • v0.3034May 29, 2026Added86f771a

    permissions:gate budget lock/admin + edits (budget.admin/manage)

  • v0.3033May 29, 2026Added02b7582

    permissions:gate owner-contract execution/signature (ownerContract.sign)

  • v0.3032May 29, 2026Addedc32d806

    permissions:gate SSOV submit/approve (subcontract.subview/manage)

  • v0.3031May 29, 2026Addedd56e290

    permissions:gate subcontract SENT/EXECUTED (subcontract.sign)

  • v0.3030May 29, 2026Fixed12e2214

    perms:creator may delete own DRAFT (RFI + submittal)

  • v0.3029May 29, 2026Added2c4c0ee

    permissions:gate RFI + Submittal void/distribute

  • v0.3028May 29, 2026Added2f30f70

    auth:Pencor Dev capability + dev-mode toggle (replaces NODE_ENV gate)

  • v0.3027May 29, 2026Added77ffd36

    auth:membership-based requireProjectAccess + creator membership

  • v0.3026May 29, 2026Addedb5efd74

    permissions:companyRole + hasPermission (Option A, isPencor gate + carve-outs)

  • v0.3025May 29, 2026Added847eef5

    permissions:rebuild role matrix (16 roles · 143 keys · 30 modules)

  • v0.3024May 29, 2026Fixeda03d14c

    seed:correct name of internal user "Jared Phillips" to "Jared Penny" in seed data

  • v0.3023May 29, 2026Addedd215160

    directory:enhance user management with invite functionality and Pencor employee support

  • v0.3022May 27, 2026Fixedbb917ce

    documents:use plain <a> for Box OAuth start link

  • v0.3021May 27, 2026Fixed040b596

    subcontracts:allow empty subCompanyId at create

  • v0.3020May 27, 2026Added4c9aa40

    subcontracts:SendForSignatureButton with proactive missing-fields dialog

  • v0.3019May 27, 2026Addedffc97d9

    subcontracts:enforce SENT preconditions + preemptive SCO gate

  • v0.3018May 27, 2026Addedb0d9eeb

    subcontracts:standalone EditFieldPocDialog (not status-gated)

  • v0.3017May 27, 2026Added726531e

    subcontracts:only number + title required at create

  • v0.3016May 27, 2026Fixed302a778

    specifications:set workerSrc placeholder so pdfjs v5 doesn't throw

  • v0.3015May 27, 2026Added6fa9b96

    subcontracts:Card refactor + cost-code combobox uses shared primitive

  • v0.3014May 27, 2026Addedcfdfccb

    ui:UserCombobox always shows 'Add User' (in-place user creation)

  • v0.3013May 27, 2026Fixedc5378bf

    lint:escape apostrophes and quotes in subcontracts JSX strings

  • v0.3012May 27, 2026Added880416d

    budget:wire Group Totals + Unbudgeted/Uncoded + Collapse toolbar controls

  • v0.3011May 27, 2026Addedf7bd229

    budget:add Unbudgeted/Uncoded virtual-top toggles (default on)

  • v0.3010May 27, 2026Added925e6ce

    masterformat:sync labels with updated PDF (1995 17-19, 2004 00 reverted)

  • v0.3009May 27, 2026Added1c498f3

    budget:per-group summary rows + collapse + 'uncoded' sentinel sort

  • v0.3008May 27, 2026Added4186e2c

    budget:collapse chevron component (URL-driven toggle)

  • v0.3007May 27, 2026Fixed220f1a8

    budget:unify grand total into body table for pixel-perfect alignment

  • v0.3006May 27, 2026Added1bd8667

    budget:collapse-all / expand-all buttons

  • v0.3005May 27, 2026Added904ba7d

    budget:BudgetGroupTotalsToggle client component

  • v0.3004May 27, 2026Addedea5fdfd

    masterformat:rename division 00 to 'General Conditions' (Pencor convention)

  • v0.3003May 27, 2026Addedee01acf

    budget:sumBucket helper for per-group currency totals

  • v0.3002May 27, 2026Added1cd3863

    budget:parse groupTotals + collapsed URL params

  • v0.3001May 27, 2026Addedd136d33

    budget:resolve division labels at render time via MasterFormat lookup

  • v0.3000May 27, 2026Improvedb4a592f

    budget:keep masterFormatVersion lookup parallel in getBudgetView

  • v0.2999May 27, 2026Added8592983

    budget:expose masterFormatVersion on BudgetView

  • v0.2998May 27, 2026Addeda4d7c89

    cost-codes:derive division from code prefix during CSV import

  • v0.2997May 27, 2026Added45cf4c0

    cost-codes:auto-derive division on updateCostCode when code changes

  • v0.2996May 27, 2026Added9c952ec

    cost-codes:auto-derive division prefix in createCostCode

  • v0.2995May 27, 2026Added058417e

    cost-codes:restrict CostCode.division to 2-digit prefix (Zod)

  • v0.2994May 27, 2026Addedacf2840

    masterformat:static division lookup tables + helpers (1995/2004)

  • v0.2993May 27, 2026Added6b35db8

    subcontracts:Send-Back-with-Comments workflow (manager/contract-admin) + Insurance Reject

  • v0.2992May 27, 2026Fixede2987a5

    contracts:BIC clears once in-force; badges/ribbon show '—'; drop duplicate Executed chip

  • v0.2991May 27, 2026Added67502ca

    subcontracts:signed-copy drop zone at SENT + BIC band + terminal status menu

  • v0.2990May 27, 2026Added85847d9

    subcontracts:dev tools card — walk workflow without auth or files

  • v0.2989May 27, 2026Addedc9231c7

    subcontracts:nullable status actor + drop legacy companyId + versioned scope sheets

  • v0.2988May 27, 2026Added30cd82b

    Field POC column, project admin assignments, budget popup links, UI polish

  • v0.2987May 27, 2026Addeda03f957

    subcontracts:SCOPE_FINAL panel matches Owner Contract layout + expand edit permissions

  • v0.2986May 27, 2026Addedfe4005b

    subcontracts:scope-sheet drag-and-drop + Parties & Team relocation

  • v0.2985May 27, 2026Added078959a

    subcontracts:Scope Final manager review — send back, advance, edit

  • v0.2984May 27, 2026Added013f75d

    subcontracts:full Edit dialog on title card while in SCOPE_DRAFT (creator-gated)

  • v0.2983May 27, 2026Added8220d28

    subcontracts:Edit cost-code allocation from the Financials card

  • v0.2982May 26, 2026Fixed97b4504

    subcontracts:drop redundant Executed row + humanize Status in Workflow Summary

  • v0.2981May 26, 2026Addedf5b1556

    budget:click-through Committed Costs cell — per-subcontract breakdown dialog

  • v0.2980May 26, 2026Added7ed4d9a

    budget:committed costs now sourced from Subcontract.ContractLineItem + virtual rows

  • v0.2979May 26, 2026Addedbc75af5

    subcontracts:New dialog reworked — Contract Value + Cost Code Allocation + UnBudgeted picker

  • v0.2978May 26, 2026Added0e43afe

    subcontracts:split SSOV from cost allocation — new SSOVLineItem table

  • v0.2977May 26, 2026Added6865884

    subcontracts:server-rendered PDF export — matches RFI pattern

  • v0.2976May 26, 2026Fixed72c5dd8

    subcontracts:getProjectCostCodes — use isActive, not notDeleted()

  • v0.2975May 26, 2026Fixeda1994fa

    subcontracts:split numbering.ts so client components can import TYPE_ABBR

  • v0.2974May 26, 2026Fixed1adc0b2

    schemas:codebase-wide sweep of z.string().cuid() → z.string().min(1)

  • v0.2973May 26, 2026Fixed4b472bd

    subcontracts,companies:relax ID validators from .cuid() to .min(1)

  • v0.2972May 26, 2026Addede0a8836

    subcontracts:P8b SSOV tab UI — line editor + submit/approve flow

  • v0.2971May 26, 2026Addeda0fa02b

    subcontracts:P8a SSOV data layer — submit/approve/request-revisions

  • v0.2970May 26, 2026Added30fa155

    subcontracts:P7 detail page — colored title card, stepper, tabs, insurance buttons

  • v0.2969May 26, 2026Added21e9b26

    subcontracts:P6 list page — table + cards + customizer + print + create dialog

  • v0.2968May 26, 2026Addedfdfb764

    companies:P5 — Contract / Insurance Admin pickers on Company Details

  • v0.2967May 26, 2026Added4452fef

    subcontracts:P4 actions — CRUD, transitions, insurance gate, settings

  • v0.2966May 26, 2026Added02048c2

    subcontracts:P3 types + Zod schemas + queries + two-barrel exports

  • v0.2965May 26, 2026Addedbf5d5a8

    subcontracts:P2 pure logic — bic, transitions, numbering, readiness

  • v0.2964May 26, 2026Addeda123661

    subcontracts:P1 schema migration

  • v0.2963May 26, 2026Fixedf9c42b6

    documents:link to existing Box folder when name matches instead of crashing

  • v0.2962May 26, 2026Addeda475188

    budget:downloadable CSV template in import dialog

  • v0.2961May 26, 2026Addeda860184

    budget:print/pdf + rest api + docs

  • v0.2960May 26, 2026Addedb8982a0

    budget:settings page

  • v0.2959May 26, 2026Added5aaf764

    budget:lock/unlock + integration doc

  • v0.2958May 26, 2026Added952c98a

    budget:csv + template import dialogs

  • v0.2957May 26, 2026Fixed9728be5

    budget:forecast dialog shows $0 when item list is empty

  • v0.2956May 26, 2026Fixedf7303d9

    budget:AUTO forecast create no longer crashes the dialog

  • v0.2955May 26, 2026Addedc6764b9

    budget:cost forecast dialog + inline cell

  • v0.2954May 26, 2026Fixed1577458

    budget:pre-format Builder initialRows to plain DTO

  • v0.2953May 26, 2026Fixed62443fd

    budget:widen Builder Mode input columns

  • v0.2952May 26, 2026Addedb3b0fab

    budget:builder mode spreadsheet entry

  • v0.2951May 26, 2026Added6f6863d

    budget:read-only view + sticky grand total

  • v0.2950May 25, 2026Addedda2d9ac

    budget:forecast items + evaluator

  • v0.2949May 25, 2026Added1b4478c

    budget:module backend + column derivation

  • v0.2948May 25, 2026Added1224cfd

    cost-codes:import + preview the division column

  • v0.2947May 25, 2026Addeda8e8faa

    cost-codes:add downloadable CSV template + link in import dialog

  • v0.2946May 25, 2026Added52519c6

    cost-codes:drop seeded codes/templates + add CSV export button

  • v0.2945May 25, 2026Addede3ad035

    cost-codes:company settings pages

  • v0.2944May 25, 2026Added1768828

    cost-codes:module backend + CSV import

  • v0.2943May 25, 2026Added683afa3

    schema:budget module + company-scoped cost codes

  • v0.2942May 25, 2026Fixed3f75e20

    specifications:use unknown instead of any for pdfjs worker module (CI lint)

  • v0.2941May 25, 2026Fixedd709ef9

    deps:regenerate package-lock.json — resolve missing @testing-library/dom transitive deps

  • v0.2940May 25, 2026Added3fda423

    owner-contracts:Send Contract dialog (signers) + Manual Upload Signed Copy

  • v0.2939May 25, 2026Added1afb21b

    owner-contracts:status-aware execution stepper buttons

  • v0.2938May 25, 2026Fixeda6563d6

    specifications:set pdfjs worker via globalThis instead of pathToFileURL (Next server bundling)

  • v0.2937May 25, 2026Fixede374cc8

    owner-contracts:list page ignores unknown status URL params (handles stale bookmarks from pre-rename)

  • v0.2936May 25, 2026Addedfce664e

    owner-contracts:rename status enum — Scope/Contract lifecycle + RFI-style stepper

  • v0.2935May 25, 2026Added399537c

    owner-contracts:Draft Contract button in execution stepper (PDF upload placeholder)

  • v0.2934May 25, 2026Added5237728

    owner-contracts:SOV tab — add Set Contract Original button + inline quick-fix in mismatch banner

  • v0.2933May 25, 2026Addeda919712

    owner-contracts:Contract Execution stepper at top of Workflow card

  • v0.2932May 25, 2026Added7dd6c2f

    user-combobox:auto-flip dropdown direction based on viewport space

  • v0.2931May 25, 2026Added4c9768a

    owner-contracts:two-column Overview tab (left: Workflow + Value · right: General + Parties)

  • v0.2930May 25, 2026Addedef877e0

    owner-contracts:PartiesCard uses UserCombobox + move Workflow card to top of Overview

  • v0.2929May 25, 2026Fixed2473447

    owner-contracts:PartiesCard architect edit — use __none__ sentinel + allow clearing

  • v0.2928May 25, 2026Fixed72abb31

    owner-contracts:drop onJump* function props (cross server/client boundary)

  • v0.2927May 24, 2026Fixede49f8b0

    owner-contracts:move parseTab + ContractTabValue out of 'use client' file so server pages can call it

  • v0.2926May 24, 2026Added669e62e

    owner-contracts:add OC SeqNumChip to NewOwnerContractDialog

  • v0.2925May 24, 2026Addeda857e35

    owner-contracts:swap Owner picker to UserCombobox + inline NewUserInlineDialog

  • v0.2924May 24, 2026Fixed11f2c98

    owner-contracts:drop cuid() constraint on PartyRef IDs so non-cuid seed/legacy IDs work

  • v0.2923May 24, 2026Fixed6dcb3e1

    projects:make Project Details card read-only by default with Edit toggle

  • v0.2922May 24, 2026Fixed0ae1039

    owner-contracts:post-review fixes — use ALLOWED_TRANSITIONS, soft-delete filter on COs, explicit lockReason fallback

  • v0.2921May 24, 2026Addedf834414

    owner-contracts:OwnerContractsListShell + rewrite list page (cards/table toggle, filters)

  • v0.2920May 24, 2026Added6971315

    owner-contracts:OwnerContractCard + OwnerContractsTable (list-view presentational)

  • v0.2919May 24, 2026Added0760ee3

    owner-contracts:NewOwnerContractDialog — title + owner picker + amount + description (auto-numbered)

  • v0.2918May 24, 2026Fixedd0bd4d1

    owner-contracts:include uploadedBy on getPrimaryContractFile so DocumentsTab shows real uploader name

  • v0.2917May 24, 2026Added947c8e2

    owner-contracts:rewrite detail page — ContractHeader + URL-driven tabs

  • v0.2916May 24, 2026Added18ca159

    owner-contracts:ContractTabs — URL-driven tabs (?tab=…) + parseTab helper

  • v0.2915May 24, 2026Added42dbaee

    owner-contracts:ContractHeader — hero + status/executed/BIC badges + actions kebab

  • v0.2914May 24, 2026Added0b6b2bc

    owner-contracts:export tab components from module barrels (Documents, History, ChangeOrders, Billing) and new types

  • v0.2913May 24, 2026Added6568ad2

    owner-contracts:HistoryTab — status transition log

  • v0.2912May 24, 2026Fixedfae3887

    owner-contracts:DocumentsTab — reset file input after upload so same file can be re-selected

  • v0.2911May 24, 2026Added6fe8198

    owner-contracts:DocumentsTab — primary PDF + other attachments + set-as-primary

  • v0.2910May 24, 2026Fixed92e184b

    owner-contracts:BillingTab — use shadcn Button link variant

  • v0.2909May 24, 2026Added5dcff3c

    owner-contracts:ChangeOrdersTab + BillingTab placeholders (live data where available)

  • v0.2908May 24, 2026Addedaa3b9e5

    owner-contracts:export SovTableRow + SovTab from barrel

  • v0.2907May 24, 2026Added956b6d2

    owner-contracts:SovTab — full SOV feature (edit mode, lock, validation, seeding, cost code toggle)

  • v0.2906May 24, 2026Addedaa1054a

    owner-contracts:SovTableRow primitive (read/edit modes, negative-revisions style)

  • v0.2905May 24, 2026Added15f29b5

    owner-contracts:OverviewTab — General Info + Financials + Parties + Workflow

  • v0.2904May 24, 2026Addeda8de9a9

    owner-contracts:export ContractFinancialsCard and WorkflowSummary from module barrel

  • v0.2903May 24, 2026Added14f0528

    owner-contracts:WorkflowSummary card (live signatures + placeholder approvals)

  • v0.2902May 24, 2026Added9080544

    owner-contracts:ContractFinancialsCard (Original + Approved COs + Revised summary)

  • v0.2901May 24, 2026Addede00d0b7

    owner-contracts:PartiesCard component (inline-edit party slots, XOR preserved)

  • v0.2900May 24, 2026Added0cec96c

    owner-contracts:getContractWorkflowSummary query (pending signatures + placeholder counts)

  • v0.2899May 24, 2026Added1b57e2a

    owner-contracts:getSovWithRevisions query (approved-CO rollup, plain numbers)

  • v0.2898May 24, 2026Addedb4e58f8

    owner-contracts:getOwnerContractsListView query + list-view types

  • v0.2897May 24, 2026Added64453f9

    owner-contracts:isSovLocked helper (status + approved CO; invoice placeholder)

  • v0.2896May 24, 2026Fixed164c05d

    owner-contract:add primaryFile relation + FK constraint

  • v0.2895May 24, 2026Added9dd349f

    schema:rename PrimeContract to OwnerContract + parties + signatures + CO markup

  • v0.2894May 24, 2026Fixed7e1a537

    documents:natural-sort folder/file names (1,2,10 not 1,10,2)

  • v0.2893May 24, 2026Added0a00610

    documents:read-only Box folder browser with in-app downloads

  • v0.2892May 24, 2026Fixed76b647d

    box:accept full Box folder URL in folder-ID env vars

  • v0.2891May 24, 2026Fixedaecc140

    documents:import server actions directly from defining files

  • v0.2890May 24, 2026Fixed3e92dc4

    box:SECURITY — move internal helpers out of use-server file; cleanup on decrypt failure

  • v0.2889May 24, 2026Fixeda116f10

    documents:use Prisma's BoxConnection type directly (lint: no-empty-object-type)

  • v0.2888May 24, 2026Added9c9788c

    projects:fire-and-forget Box provisioning + rename sync hooks

  • v0.2887May 24, 2026Added652becc

    documents:global company library at /documents

  • v0.2886May 24, 2026Added314d2da

    documents:per-project Documents page orchestrator

  • v0.2885May 24, 2026Added7c4fff2

    documents:BoxFolderEmbed with lazy box-ui-elements load + token refresh

  • v0.2884May 24, 2026Added124cd64

    documents:ConnectBoxCard, ProvisionFolderCard, BoxOutOfSyncBanner

  • v0.2883May 24, 2026Addedbb246b8

    box:downscoped-token route with folder-membership authorization

  • v0.2882May 24, 2026Added53c19c5

    box:OAuth start + callback routes with CSRF state cookie

  • v0.2881May 24, 2026Added2e2487d

    documents:rewrite module around Box (queries, actions, provisioning, barrels)

  • v0.2880May 24, 2026Added734d191

    box:token lifecycle + module barrel

  • v0.2879May 24, 2026Added12d184e

    box:typed Box REST wrappers — getMe, copyFolder, renameFolder

  • v0.2878May 24, 2026Added9d8515c

    box:OAuth helpers — authorize URL, code exchange, refresh, downscope

  • v0.2877May 24, 2026Added9588eae

    box:AES-256-GCM token encryption with round-trip tests

  • v0.2876May 24, 2026Added9ae18ae

    box:config helper + error classes (hard-fail on missing env)

  • v0.2875May 24, 2026Addeda82ff4b

    schema:documents box integration — BoxConnection + Project Box columns, drop Folder/FileObject/FileLink

  • v0.2874May 24, 2026Fixedaefb10c

    projects:stack photo Replace/Remove buttons vertically

  • v0.2873May 24, 2026Fixedb8a653b

    projects:wire NewProjectForm, allow project-photo file downloads, clean up

  • v0.2872May 24, 2026Added5dc2803

    projects:seed 4 demo projects in YY.XXX format + Riverpark photo

  • v0.2871May 24, 2026Fixedfcf0d29

    projects:switch server-side consumers to index.server barrel

  • v0.2870May 24, 2026Added20a2003

    projects:detail page — photo slot, classification chips, permits card, edit panel

  • v0.2869May 24, 2026Addedc90aa98

    projects:list page — Show inactive toggle, filter dropdowns, neutral badges, photo thumbs

  • v0.2868May 24, 2026Added18ccf83

    projects:ProjectEditForm — full settings panel including actuals + warranty

  • v0.2867May 24, 2026Added3acf46e

    projects:NewProjectForm — single-screen sectioned dialog, Name+Number required

  • v0.2866May 24, 2026Fixed4a17f83

    projects:temporarily drop NewProjectForm re-export (added back in Task 10)

  • v0.2865May 24, 2026Added366b14d

    projects:ProjectPhotoUpload + ActiveToggle components

  • v0.2864May 24, 2026Added45c7bd0

    projects:photo upload API route (single-slot PROJECT_PHOTO)

  • v0.2863May 24, 2026Added613d486

    projects:actions — uniqueness check, setProjectActive, deleteProjectPhoto

  • v0.2862May 24, 2026Added7f4279d

    projects:queries.ts supports new filters + photo include

  • v0.2861May 24, 2026Added58f4daa

    projects:labels.ts — enum label + neutral badge style maps

  • v0.2860May 24, 2026Addedc8bb9ac

    projects:new Zod schema + types for redesigned model

  • v0.2859May 24, 2026Added8f3bead

    schema:project lifecycle redesign — 13-status enum, scope/sector/delivery, descriptor columns, photo FK