TenderPath · Pacific Building Solutions

Tender pursuit, cost library & pre-construction workflow · DHSS S-curve cash flow
TenderPath v122 · d3b71d4 · 2026-08-15 22:00 +12

Dashboard

Live snapshot of the bid pipeline.

Bids by Status

Pipeline by Sector

Opportunity Ranking — Live Bids

Monthly Revenue Forecast (DHSS S-Curve)

Live Bids Timeline

Enter Contract Value, Go-Ahead % and Win %. Tender Costs, Success %, Weighted Value, and Bid Review date auto-calculate.

Bid ID ▴▾ Project ▴▾ Client ▴▾ Sector ▴▾ Status ▴▾ CV (FJD) ▴▾ Tender Cost Go % Win % Succ % Weighted Submission ▴▾ Bid Review Construction
Totals

Actions

▶ Next actions

Every stage that is ready to run or blocked, across the bids still being worked. Ranked by what is closest to its deadline and what the most later stages wait on — each row says why it is where it is. A bid that has been submitted has nothing here, which is the point.

Loading…

Planned dates

Seven planning dates per bid, counted back from the submission deadline — when each piece of work was meant to start. These are a schedule, not a task list: what is actually outstanding is above. Rows stand down once a tender has gone out.

Bid Project Sector Action Due Days Owner Status Notes

Opportunity Ranking

Score each criterion 1 (poor) → 5 (excellent). Weighted PA & SP scores plot on the bubble chart. Click Score to edit a row.

Bid ID Project Status Contract Value PA Score SP Score

Revenue Forecast — DHSS S-Curve

Cash flow modelled with the Hudson DHSS expenditure formula y = S [x + Cx² − Cx − (1/K)(6x³ − 9x² + 3x)]. Each bid is spread across its construction period using its selected curve (Standard / Front-loaded / Back-loaded).

Total Pipeline sums all live and won bids at 100% contract value. Weighted Forecast multiplies each bid by its Success % (Go-Ahead % × Win %); Won bids count at 100%, Lost/Withdrawn at 0%.

Monthly Cash Flow

Archive

Won, Lost or Withdrawn bids past the archive trigger window. Use the button below to move flagged bids out of the live Timeline.

Flagged (still in Timeline)

Bid IDProjectStatus CVSubmissionDays Since

Archived

Bid IDProjectClientSector StatusCVSubmission

Cost Library

Multi-project historical rate database.

📥 Import cost library workbook

Upload the master PBS_Cost_Library_vN.xlsx (the SharePoint copy Ana maintains). This replaces the entire cloud library that AI estimating and line pricing run against — do it after each big submission is added to the master.

🔍 AI semantic search (Claude Haiku 4.5 · ~3-8s)

Describe what you're pricing in plain English ("exposed concrete stair, 3m run, Suva") — Claude ranks the most relevant rates across all four library tables.

ProjectYearTradeSub-sectionDescription QtyUnitRate (FJD)TotalContext
ProjectYearTradeComposite ItemComponents RateUnitLowHighNotes
ProjectYearTradeCost (FJD)% of project GCA$/m² GCANotes

Library Headlines

#TradeProjects Avg $/m² GCAMinMax Avg trade cost (FJD)Notes

Trade and sub-trade names from the cost library, matched to PBS cost codes. A proposal is inert until somebody confirms it — calibration and variance both ignore anything still marked proposed, because a machine's guess must not carry a confirmed mapping's authority.

Progress

Blocks to review — biggest first, so the least clicking clears the most

Read the trades on each row. Where they all obviously belong to the code, confirm the block. Where they look mixed, open it and deal with the odd ones first.

IDProjectLocationType GCA (m²)Tendered (FJD) $/m² GCAYear

—

—

Workflow

Stages in dependency order. A locked stage names what it is waiting for; the folder each deliverable is filed to is shown on the right. Run does the work, Document produces the file.

Price ledger

Every movement, with the reason it moved. Append-only — nothing here can be edited or deleted.

Project Details

Workflow Status

📥 Import deep-analysis outputs (xlsx)

Drop xlsx files from external deep-analysis runs — requirements_register, RFI_Register, Conceptual_Estimate, Tier1_Tender_Review — and the data flows into this bid's tabs. Format is auto-detected by sheet structure.

📊
Drop xlsx file(s) here, or click to browse
All four standard formats supported · drop multiple at once

    Pursuit Skills (via Cowork)

    Click Copy prompt, paste into a new Cowork conversation with the relevant skill installed, attach the bid documents. The orchestrator at the top runs all three phases for you in one shot.

    ★ Run the full Initial Offer Assessment ORCHESTRATOR

    Runs pbs-initial-offer-assessment — indexes the project, builds the conceptual estimate against the cost library, then produces the Go/No-Go decision pack, all in one workflow with smart re-run detection. Use this for a fresh tender.

    1. Index this tender package

    Runs pbs-project-indexer only — produces CLAUDE.md, project.md, drawings.md and the requirements register. Use when you just need the indexing phase.

    2. Run the conceptual estimate

    Runs pbs-conceptual-estimate against the requirements register and the cost library — produces a priced estimate with confidence tiers per line.

    3. Generate the Go / No-Go pack

    Runs pbs-bid-review only — produces the one-page Excel + 5-slide PPT decision pack. Fills in the Go/No-Go tab below.

    📁 Pull from SharePoint

    Copies a tender folder straight into this bid — no downloading and re-uploading. Paste the folder link from SharePoint (the address bar or a copied share link, either works). Subfolders come too, and re-running picks up anything Ana has added since.

    📐 Drawings Index

    Reads every sheet of the selected multi-page drawing PDFs one at a time — sheet number, discipline, scope by trade, measured quantities, and cross-sheet coordination issues. Included in the full run; large sets continue automatically across passes.

    🧠 Deep Tender-Pack Ingestion

    The thorough pass: Claude (Opus) reads the full pack — specs, schedules, BoQs, addenda — and builds the requirements register plus scope summary, flags and RFI candidates. Runs as a background job (several minutes per pass). Word and Excel are read too. Drawing sets are left unticked — they are read above by the Drawings Index, and putting them through here as well costs a great deal to learn nothing new.

    References point to the SharePoint / project folder location. The app does not store the binary.

      Requirements register, normally produced by the pbs-project-indexer skill. Paste rows here or import a CSV from the generated requirements_register.xlsx.

      RefTradeDescription QtyUnit PBS DeliverySpec RefNotes

      💰 AI Line-Item Pricing

      Prices every requirement line against the unit-rate cost library (background job, a few minutes). Library candidates are shortlisted per line; unmatched lines get flagged allowances.

      What we estimated, what we submitted, what came back. This is the only place the cost library learns whether PBS was right — without it every estimate is a first estimate. Partial answers are welcome; an unknown recorded as unknown is worth far more than a guess recorded as fact.

      Go / No-Go decision pack. The skill produces a recommendation with its evidence; a person records the decision. They are deliberately two different acts.

      ⚖️ Record the decision

      Nothing downstream — methodology, procurement, the letter of offer — unlocks until this is recorded. A No-Go blocks them and stays on file with the reasons.

      🤖 Go / No-Go decision (Claude Opus · reads the estimate, drawings, contract and risk)

      Run it from Run → Go / No-Go. It refuses to decide before there is a conceptual estimate, cites what it read, and writes a gate: a No-Go blocks the methodology, the procurement packages and the letter of offer until someone overrules it. The director still makes the final call — the buttons below are that call.

      Library-driven conceptual estimate. Generate one with Claude below (async, grounded in the cost library), or use the quick benchmark lookup.

      📏 Quantity Takeoff

      Reads the indexed drawings and lists the primary quantities — what has to be measured. Each one is matched to an assembly from the PBS library, and the database expands it into concrete, reinforcement, formwork, waste and haulage. Claude picks the assembly; the arithmetic is not asked of it. Index the drawings first.

      Quantities come from what the drawings state — schedules and annotated dimensions. This does not measure vector geometry, so anything not dimensioned on a sheet is an estimate and is marked Low.

      🤖 AI Conceptual Estimate

      Runs as a background job: Claude (Opus) prices the bid trade-by-trade against the cost library — benchmarks, composites and comparable projects — with confidence tiers per line. Takes 1–3 minutes.

      Quick benchmark — GCA × library $/m²

      Recorded estimate

      Methodology document for this bid — your construction approach, sequencing, plant, key resources, programme. This is what gets submitted as part of the bid pack.

      🏆 Win Themes (Stage 1.5) (Claude Haiku 4.5 · ~10-20s)

      3–5 strategic themes that drive the methodology, cover letter, and Letter of Offer. Every downstream artefact should reinforce these themes. Bid Manager drafts, Commercial Manager signs off.

      Subcontractor packages — track which trades you're sending out, the selected subbie, awarded amount, and status. Lines up with the 4. Procurement folder in SharePoint.

      📦 AI Procurement Packaging

      Splits the register and estimate into RFQ-ready trade packages — each with a PBS budget, scope text you can send to bidders, interfaces, and risks. Then level the quotes that come back: VAT normalised, exclusions surfaced, compared against the budget.

      🧱 Materials & Purchase Orders

      The supply-only side of the register. Converts measured work into order quantities in the units merchants actually sell — laps, cut loss and rounding each reasoned separately — and groups them into one schedule per merchant. A package with an open question cannot be marked ready to issue.

      Total awarded:
      PackageScopeSelected Subbie Awarded (FJD)StatusNotes

      PBS prices in Cubit, in PBS's trades. The client wants it back in theirs. This does the mapping and the margin spread — it never re-prices anything.

      ① Commercial setup — confirm before running

      Margin, whether it is spread into the rates or shown as its own line, what carries no margin, and how VAT is presented are decided per tender. There is no default — the skill refuses until these are confirmed, because a margin nobody agreed to is a margin nobody can defend.

      PC sums, provisional sums, contingency and client-supplied items never carry margin. That is not configurable — marking up a pass-through cost misrepresents it as PBS work.

      You are setting the margin because you hold the commercial role.

      ② Populate the client's schedule

      Needs the Cubit export (Trade Breakup) and the client's blank pricing schedule, both uploaded on the Documents tab. Requires Estimate Review = PASS and a price in the ledger.

      RefRaisedSubjectQueryResponse StatusDue

      Actions for this bid only. Owner / status / notes save back to the global Actions tab.

      ActionDueDaysOwnerStatusNotes

      Company Settings

      Your own account, and the lists and parameters the whole team works from. Changes save automatically. Users, spend and the audit trail live on the Admin page.

      Account

      —
      —

      Key Parameters

      e.g. 0.01 = 1%

      Action lead times (days before submission)

      Reference Lists

      Add / remove items to change dropdowns app-wide.

      Exports

      Admin

      Who is in the organisation, what the AI may spend, and what everyone has changed. Visible to owners and admins only.

      Users in this organisation

      Invite teammates and assign roles. viewer read-only · estimator all bid work and the cost library · commercial the same, plus sets the margin, plus approves and signs · director approves Go/No-Go and signs the price · admin settings and users.
      Approving is separate from doing: whoever produced or checked the price on a bid cannot also sign that bid off, whatever their role. With three approvers there is almost always someone eligible.

      EmailNameTitleRolePrivacy OfficerJoined

      AI spend ceilings

      The engine refuses to start a job past either limit — before a token is spent. 0 = no ceiling. Owner or admin only. The Run tab shows each bid's AI cost.

      This month, by person

      The monthly ceiling is shared. When it runs out it runs out for everyone — including whoever needed to sign something.

      Data

      Restoring and resetting overwrite what is here. Kept on this page because they are not reversible from the screen.

      Recent activity (audit log)

      Every change made in TenderPath — who, when, what changed, old and new values. Stored permanently. Visible only to admins / owners.

      When Who Action Table Summary

      Click any row to expand and see the full field-level diff.

      ⚖️ Review contract clause

      Paste a clause (or single section) of the contract and get an AI commercial flag against PBS Standard Positions and the chosen contract form. Not legal advice — PBS legal team must review the actual contract.

      Clause text

      Probity declaration required

      This bid has a probity wall. Before you access it, please read and sign the declaration below. Your acknowledgement is recorded for audit.

      —

      
        

      Anti-Bribery Policy — annual acknowledgement

      PBS has published Anti-Bribery Policy v—. Please review and acknowledge.

      Summary — by acknowledging you confirm that you:

      • Have read and understood PBS's Anti-Bribery Policy (companion doc ANTI-BRIBERY-POLICY.md).
      • Will not offer, promise, give, request, or accept any bribe, facilitation payment, or improper gift in the course of PBS business.
      • Will declare gifts & hospitality above policy thresholds (FJD 100 / FJD 250) in TenderPath's Gift and Hospitality Registers.
      • Will not give or receive gifts or hospitality during an active tender process.
      • Will report suspected breaches via the channels in the policy and accept whistleblower protection.
      • Understand that breach may result in disciplinary action up to and including termination.

      Annual refresher — your acknowledgement is recorded with timestamp + IP. Read the full policy in Settings → Policies.

      New Bid

      Probability the project actually proceeds
      Probability PBS wins it if it proceeds
      Link to the bid's SharePoint folder (Tenders/<bid>/). Click-through from the workspace.
      Use when PBS is bidding while also advising — or when the client has imposed a probity restriction. Reads on this bid will be logged. Conflicted users will be denied access. First-time access prompts a probity declaration.

      Opportunity Ranking —

      Project Attractiveness — how good the opportunity is
      Client Quality25%
      Margin Potential25%
      Strategic Sector Fit20%
      Project Size & Profile15%
      Schedule Fit15%
      Strength of Proposition — PBS's ability to win and deliver
      Competition Level25%
      Past Project Track Record20%
      In-House Capability Edge20%
      Technical Scope Match20%
      Designer / Architect Relationship15%

      Cowork prompt

      Copy the prompt below and paste it into a new Cowork conversation that has the relevant skill installed. Attach the bid documents from the project folder.

      RFI

      Paste informal notes (an email, a phone-call summary, a half-formed thought) and Claude will turn it into a formal RFI. ~3-5 seconds.

      Document reference

      Procurement Package

      Invite a user

      Change password

      Minimum 8 characters. Use something strong — this password protects all bid data for your organisation.

      Sign in to TenderPath

      New here? Ask your admin to invite you, or contact your TenderPath account owner.

      Create your organisation

      You're signed in but you're not linked to an organisation yet. Set yours up now — you'll become its owner.