Changelog
Every user-visible change merged to pencorOS, newest first. Generated from git log.
July 2026
- 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