Registered sources
Technical to commercial
From evidence to investment conviction
Could a reliability-first investment make Northstar’s workflow platform more competitive? Explore the evidence behind the case.
Start with the assessment, follow a finding back to its evidence, then adjust a local planning assumption. Real workspaces store company data behind authenticated APIs. This separate demo only displays fictional examples; it does not create an identity or read a company database.
Technical to commercial
Traceable sample observations
Including provisional code concerns
6 reviewed · 6 provisional
80 engineer-months of full scope
Investment thesis under review
Technology Due Diligence
Stabilize the core platform, reduce support effort, then test AI assistance against measured customer outcomes.
Explore the evidenceSee the technical investment case inside the code
Explore an illustrative AI review with file/line evidence, six provisional findings and twelve architectural, functional and code-change proposals. See those tasks in the complete plan and model what fixing them would cost.
Explore source & architecture review →Prewritten synthetic review, not a live scan. Real repository code ingestion is a remaining build-out, not demonstrated by this tour.
Atlas Core · Operational workflow
Case management, imports and customer history share a mature service and relational database. Recovery depends on manual steps; the deployment pipeline has limited regression coverage.
Northstar Insights · Reporting & analytics
A reporting service reads Atlas data. Slow reports and interest in AI summaries suggest opportunity, but neither customer retention impact nor willingness to pay is established.
Sample investment committee brief
Close privileged access and recovery gaps before broad feature delivery.
Measure support effort and release reliability before claiming savings.
Fund reporting and AI experiments only after foundational gates pass.
All facts are invented. Return, valuation uplift and revenue projections remain excluded. See 21 evidence-linked initiatives →
What should we check next?
AI assists. Your team decides.
Real workspaces use a company-configured provider. Check the scope and provider pricing before starting a live evaluation. API charges are separate; drafts need human review.
This public demo has no AI credentials or connection to the application. It uses illustrative, prewritten content—not a live evaluation. Live analysis requires your authenticated workspace and a company-configured provider; API charges are separate.
No provider requests run when you browse or adjust this demo.
A source is where material comes from. An observation is a reviewable statement drawn from that material.
Expand a source to inspect its fictional observations. Findings link back to these exact examples. Uploading and connector setup belong in your authenticated workspace; neither runs here.
“The operating guide targets recovery within 30 minutes.”
This is a stated target, not proof that recovery meets it.
“The latest staging recovery exercise took 95 minutes and required manual repair.”
Fictional measurement from the sample report. Test production parity before generalizing.
See linked recovery finding →“Thirty of fifty sample tickets relate to failed imports.”
The sample points to a recurring problem. It does not establish annual cost.
“Resolution-time and staff-effort fields were not included in the export.”
Measure handling time before projecting a financial saving.
See linked support finding →“Four interviewees asked for help summarizing long case histories.”
Interest suggests a pilot question; it is not committed revenue.
“No willingness-to-pay or comparison with alternative AI tools was recorded.”
A differentiated workflow and measurable outcome need verification.
See linked AI pilot finding →“Three operations roles can change tenant configuration; two use shared service identities.”
Fictional control gap. Separate human and machine access; verify effective permissions rather than inferring a breach.
See the access finding →“Role-change events are retained; bulk exports are not consistently attributed to an actor.”
Extend attribution and run negative authorization tests. This sample cannot establish a certification or compliance conclusion.
“The import recovery path has no automated regression test; two of six sample releases needed a corrective patch.”
Small invented sample, not an annual failure rate. Review commit ownership, test depth and deployment controls.
Inspect the release finding →“Schema changes are versioned, but rollback instructions have not been tested with a production-sized copy.”
Verify forward recovery and a restore rehearsal; a code rollback alone does not reverse schema or customer writes.
“Service uptime is monitored, but import completion and report freshness have no end-to-end objectives.”
Define journey-level metrics before claiming reliability improvement or reduced support load.
Inspect the measurement finding →“A sample account with a large history returned a report in 18 seconds; the target is below 5 seconds.”
One synthetic test does not generalize to every tenant. Benchmark query plans, workload distribution and cold-cache behavior.
These simplified excerpts are invented, omit surrounding code and never execute. File/line references identify this synthetic snapshot only. Open the illustrative AI review →
api/cases.ts:42–47 · synthetic revision N4
return db.one('SELECT * FROM cases WHERE id = ?', [caseId]);The excerpt does not bind a tenant. Upstream guards are omitted: this is a testable boundary hypothesis, not proof of customer exposure.
lib/cache.ts:10–16 · synthetic revision N4
const key = `report:${reportId}`;
return cache.get(key);A shared key could collide across tenants or reuse a result after a permission change. Validate cache namespace and invalidation.
jobs/import.ts:28–36 · synthetic revision N4
for (const row of input.rows) {
await processRow(row);
}
return { state: 'complete' };Batch size, checkpoints and restart behavior are not visible. Measure timeouts and design bounded tenant-owned jobs.
jobs/import.ts:38–43 · synthetic revision N4
await db.insert('imported_records', record);
return { accepted: true };No replay guard is visible in this excerpt. Confirm uniqueness constraints before concluding retries duplicate records.
api/import.ts:21–27 · synthetic revision N4
const requestedRows = Number(body.rows);
return startImport(requestedRows);Reject invalid, non-finite and oversized input before enqueueing or writing. The omitted gateway may validate some inputs.
shared/contracts.ts:8–15 · synthetic revision N4
// Client: queued | complete
// Server: pending | succeeded
// No shared contract in the sampleA stale client may misreport completion. Check actual serialized responses and version rollout; static mismatch alone does not establish an incident.
reports/summary.ts:32–39 · synthetic revision N4
for (const item of cases) {
totals.push(await loadItemTotals(item.id));
}Likely N+1 hot path. Join this source clue to the report-latency observation and test representative tenant data.
repos/cases.ts:18–22 · synthetic revision N4
return db.all('SELECT * FROM cases WHERE tenant_id = ?', [tenantId]);Tenant predicate is present, but no cursor or page bound is visible. Test large histories and memory/latency limits.
storage/evidence.ts:51–56 · synthetic revision N4
await evidenceStore.delete(objectKey);
return { removed: true };No policy, legal hold or actor attribution is visible here. Review access checks and audit middleware before making a compliance claim.
config/provider.ts:5–11 · synthetic revision N4
const credential = loadEmbeddedProviderConfig();
export const provider = makeProvider(credential);No credential value is shown or supplied. Validate whether the placeholder loader represents an embedded secret; use managed references and rotation.
web/import-status.ts:18–24 · synthetic revision N4
render(job.state === 'complete' ? 'Done' : 'Working');This simplified UI leaves no progress, retry explanation or cancel action. Cross-check the support pattern and user workflow.
tests/ai-quality.test.ts:12–18 · synthetic revision N4
expect(result.text.length).toBeGreaterThan(0);
// No citation, factuality or task-cost acceptance gateOutput existence does not establish correctness or economics. Add a versioned evaluation set before productizing assistance.
Look beyond a summary: inspect the evidence, the reviewer’s conclusion and the next verification step.
Findings outside Source & Architecture. These may still describe technical issues; all findings feed the same reviewed plan.
These are prewritten sample findings, not AI output or investment advice. Each has linked observations and an explicit unknown. Real reviewers accept or challenge drafts; the demo cannot approve or save decisions.
All findings, Source & Architecture and Other findings are views of this same assessment. Source recommendations feed the same ranked plan; Other findings excludes the six source findings; the counts partition the complete twelve-finding register. Switching views never changes approval or starts AI.
Broad privileges and shared identities undermine accountability across both products. Treat this as a control-remediation priority, not proof of an incident.
The stated 30-minute target conflicts with the 95-minute exercise. A reliability-first initiative is justified, subject to production-parity testing.
Critical workflow tests and migration rehearsals are missing. More feature throughput would compound this risk without stronger delivery gates.
The incident mix suggests an opportunity, but missing staff-effort data prevents a defensible savings estimate.
Uptime alone misses failed imports and slow reporting. Journey instrumentation should precede performance optimization and benefit claims.
Interest exists, but neither incremental value nor defensibility is established. Pilot a measurable workflow before committing to a broad AI roadmap.
Centralize tenant-scoped data access and partition caches; preserve product behavior while proving isolation.
Use bounded asynchronous jobs, replay-safe writes and operator progress/cancellation.
Share validated request/response schemas and enforce compatibility tests in delivery gates.
Bound lists with cursors and materialize reports incrementally; measure latency and freshness.
Define tenant-scoped retention, legal holds, deletion authorization and audit evidence.
Replace embedded configuration dependency with managed secret references and a rotation rehearsal.
One assessment, one reviewed finding register and one ranked plan.
Explore how AI-assisted review connects code-level concerns, architectural constraints and functional improvements to the same evidence-linked, prioritized plan.
This is prewritten, illustrative AI output from invented snippets—not a live scan, a security audit or a promise of exhaustive repository coverage. Follow each file/line observation to a provisional finding and a ranked task. Human reviewers must reproduce problems, challenge the interpretation and approve work. All proposed work is included in the fixed sample Investment Lab scope; adjusting assumptions never approves a task.
The current live GitHub connector retains repository tree and recent commit metadata, not source-file contents. Bounded private-source AI review is implemented locally in the real Evidence Room; automatic whole-repository ingestion still requires further implementation and validation. This demo shows the intended workflow without source uploads or provider charges.
This specialized view sits inside Analysis & Findings. All findings includes these six provisional source findings alongside six Other findings. Counts refer to findings, not tasks; these groups share one register. Overall priority refers to the shared plan, not a separate technical backlog. Follow Why this priority? to inspect the score and rationale.
Inferred architecture · illustrative, not verified
Private evidence storage and the AI adapter add retention and credential boundaries. Component relationships are inferred from simplified sample paths; deployment topology and runtime behavior are unknown.
Invented milestones—not real commit dates or ownership judgments. Full history, transitive dependencies, infrastructure and runtime tests are not supplied.
Centralize tenant-scoped data access and partition caches; preserve product behavior while proving isolation.
Upstream middleware, shared cache namespace and effective permissions have not been executed or verified.
Use bounded asynchronous jobs, replay-safe writes and operator progress/cancellation.
Queue, database constraints and concurrency configuration may alter the behavior inferred from excerpts.
Share validated request/response schemas and enforce compatibility tests in delivery gates.
Gateway validation and client version distribution are not shown.
Bound lists with cursors and materialize reports incrementally; measure latency and freshness.
A static hot-path pattern is not a benchmark or proof of customer latency.
Define tenant-scoped retention, legal holds, deletion authorization and audit evidence.
Omitted authorization/audit wrappers and contractual retention rules require review; no compliance certification is implied.
Replace embedded configuration dependency with managed secret references and a rotation rehearsal.
The illustrative loader contains no secret value. Confirm real credential provenance rather than assuming a leaked key.
Sample score = impact × 3 + risk reduction × 3 + confidence − min(100, rounded likely hours ÷ 16). Each engineer-month assumes 160 hours for this illustrative work breakdown. The same deterministic ordering aid is used by the current product; the AI can propose inputs but cannot approve work.
Risk reduction is a planning judgment, not a probability of loss. ROI/revenue remain unvalidated. Dependencies, overlap and estimates need engineering review; a high score is not permission to deploy.
Overall priority 1 · Code · Shared platform
Replace unconstrained lookups with tenant-bound repositories and negative authorization tests.
Impact 100/100 · risk reduction 95/100 · Source evidence
Overall priority 3 · Code · Shared platform
Use a managed secret reference with rotation and least-privilege access, not values read from source.
Impact 85/100 · risk reduction 90/100 · Source evidence
Overall priority 4 · Code · Atlas Core
Reject malformed payloads before business logic and return stable typed errors.
Impact 86/100 · risk reduction 82/100 · Source evidence
Overall priority 5 · Architecture · Shared platform
Include tenant and input version in cache keys and define explicit invalidation semantics.
Impact 85/100 · risk reduction 87/100 · Source evidence
Overall priority 6 · Architecture · Atlas Core
Introduce operation keys and atomic replay guards so retrying a job cannot duplicate customer records.
Impact 90/100 · risk reduction 85/100 · Source evidence
Overall priority 9 · Architecture · Atlas Core
Split synchronous batches into checkpointed work with bounded retries, cancellation and tenant ownership.
Impact 86/100 · risk reduction 80/100 · Source evidence
Overall priority 12 · Code · Shared platform
Share request/response schemas and add producer-consumer compatibility tests.
Impact 78/100 · risk reduction 75/100 · Source evidence
Overall priority 13 · Architecture · Shared platform
Add a reviewed retention policy and auditable tenant-scoped deletion workflow with legal-hold checks.
Impact 75/100 · risk reduction 82/100 · Source evidence
Overall priority 14 · Functional · Atlas Core
Provide bounded cursor pages and explicit load-more behavior rather than returning all records.
Impact 80/100 · risk reduction 55/100 · Source evidence
Overall priority 16 · Functional · Northstar Insights
Use tenant-owned incremental aggregates and expose freshness rather than repeating per-record query loops.
Impact 84/100 · risk reduction 48/100 · Source evidence
Overall priority 17 · Functional · Atlas Core
Show job progress, retry state and cancellation in the product without permitting conflicting edits.
Impact 72/100 · risk reduction 50/100 · Source evidence
Overall priority 19 · Code · Atlas Core
Create a versioned evaluation set for factuality, citations, sensitive-data handling and per-task cost before releasing AI assistance.
Impact 72/100 · risk reduction 40/100 · Source evidence
From diligence to a funding decision
What does the existing plan cost? What changes if you fund a larger team or assume AI-assisted delivery? Compare planning assumptions against the balanced baseline without changing the initiatives.
Planning timeframe is the first adjustable assumption. Expand What team would meet this timeframe? (closed by default) for estimated completion time, delivery cost and the preview button. The full-timeframe team budget stays in the main summary for the currently selected team. Opening or closing it does not change your assumptions. The team estimate searches for the smallest whole team up to 100 engineers that fits the timeframe, including coordination overhead. Preview this team applies it only to this unsaved preview; impossible timeframes are disclosed. Exact inputs keep keyboard arrows and typing; duplicate spinner arrows are hidden. All 21 initiatives and their effort come from the existing plan and are read-only. Click a planning assumption for −/+ controls or an exact whole number. Apply value sets both the value and slider maximum, even when reducing it; dragging keeps that maximum. Expand range enlarges it without changing the value. Displayed safety limits reject unsupported values without changing the case. Reset or reload restores the baseline and initial ranges; no edits are saved.
Human capacity = people ÷ (1 + 0.04 × people above four). Delivery capacity then applies 80% delivery allocation and assumed AI uplift. The 4% coordination drag per additional person is a planning heuristic, not measured productivity. Larger teams deliver faster but less than proportionally and incur more engineering cost. Base delivery months = plan engineer-months ÷ delivery capacity. Engineering cost = base months × team × fully loaded monthly cost; AI allowance = base months × monthly AI budget; contingency increases both cost and duration.
The “Team budget for N months” label updates with the selected timeframe. Team budget = (team × monthly cost + monthly AI budget) × horizon. It is an alternative view of the same spend, not an additional cost. One shared team delivers sequentially; multiple squads, onboarding, dependencies, taxes and investment returns are excluded. AI uplift defaults to zero and must be validated; the allowance is not provider pricing or a charge.
Each starting-point card shows how many initiatives fit within its own funding horizon, calculated from that preset’s settings. Choosing a preset makes the live summary match it. Slider changes customize the live summary, not the preset cards. The top summary shows how many whole initiatives finish within the selected funding horizon, out of the fixed 21-item plan. It updates with capacity, contingency and horizon assumptions using the same sequential schedule as the roadmap below. Initiatives beyond the horizon remain in the plan; the count is a capacity projection, not a recommendation to drop work. Priority order and effort determine which whole initiatives finish; dependency scheduling is not modeled.
Starting points use their own time horizons. Choosing one restores its settings; sliders customize the live results below. All 21 initiatives remain in the plan.
Calculating projected completion…
Six planning assumptions
Click a planning assumption for −/+, exact entry or an expanded slider range. Plan scope and underlying effort are read-only.
Defined by the existing value-creation plan, not this simulator.
This synthetic sample uses legacy estimates without separate verification and implementation scope. Follow-on work has not been assessed; additional cost is unknown and is not included. Completing a verification task does not prove that the underlying risk is resolved. In the product, reviewers can record work scope, included assumptions and unestimated follow-on for each initiative before capturing a new investment plan. Verification uses decision value, not delivered remediation credit; a positive delivered-risk-reduction score must be reviewed before approval. These sample scores have not been reclassified or recalculated.
Allowed: 1–120 months. Apply sets the value and slider maximum; dragging keeps that maximum.
Slider range: 1–24
Changes the timeframe and team budget, not the delivery speed or cost to complete the whole plan.
Uses current effort, AI, allocation, contingency and coordination assumptions, not a staffing commitment. Recruiting, onboarding and dependencies are not modeled. Only Preview this team changes the local team control; nothing is saved.
Allowed: 1–100 engineers. Apply sets the value and slider maximum; dragging keeps that maximum.
Slider range: 1–12
Changes monthly burn, retained-team budget and delivery time.
Allowed: 1–100,000 USD. Apply sets the value and slider maximum; dragging keeps that maximum.
Slider range: 1–24000
Fully loaded USD planning assumption, including employer overhead.
Allowed: 0–100 percent. Apply sets the value and slider maximum; dragging keeps that maximum.
Slider range: 0–50
Hypothetical extra capacity, not a measured saving or live AI run.
Allowed: 0–100 percent. Apply sets the value and slider maximum; dragging keeps that maximum.
Slider range: 0–50
Allowed: 0–100,000 USD. Apply sets the value and slider maximum; dragging keeps that maximum.
Slider range: 0–5000
Hypothetical delivery-tool allowance; not provider pricing.
Cost to deliver selected work
Baseline comparison
—
—
—
80% delivery allocation; no measured AI gain assumed.
Amounts are rounded to dollars; totals use unrounded values and fractional months.
Team budget for 12 months
Cost of funding the whole team and AI allowance for this timeframe, even if some initiatives finish later.
—
Not added to delivery investment: these are alternative views of the same spend. The plan scope stays fixed; team size, rates, allowance and funding horizon change this budget.
—
—
Whole initiatives, not a percentage of every feature. Dates below are relative model months, not commitments.
A sample sequence from operational risk to a measured growth experiment—not an automatically approved plan.
Close access gaps, prove recovery and measure critical journeys before optimizing delivery and funding growth experiments. The 21 initiatives and their effort stay fixed; relative delivery months follow Investment Lab capacity and contingency assumptions. One shared team works through this priority sequence without overlap, with diminishing capacity from coordination overhead. Multiple squads, onboarding, dependencies and commercial returns are not forecast. Each effort estimate is an invented planning assumption; no real AI productivity is measured. Real workspaces preserve approved findings and evidence links; PrioNav handoff remains disabled.
Every initiative has a Why this priority? explanation. Impact × 3 + risk reduction × 3 + confidence − effort penalty sets the shared ranking across every product and lane. Effort penalty is likely hours ÷ 16, rounded and capped at 100. Scores are illustrative, not measured ROI or approval. Investment sliders change capacity and horizon coverage, never priority; dependency-aware scheduling is not implemented.
Replace unconstrained lookups with tenant-bound repositories and negative authorization tests.
Split shared identities, constrain administrative permissions and attribute export events. First because every later product change depends on a trustworthy access boundary.
Use a managed secret reference with rotation and least-privilege access, not values read from source.
Reject malformed payloads before business logic and return stable typed errors.
Include tenant and input version in cache keys and define explicit invalidation semantics.
Introduce operation keys and atomic replay guards so retrying a job cannot duplicate customer records.
Automate restore steps and rehearse them with production-like data. Protect service continuity before broadening the feature set.
Test forward recovery on production-sized synthetic data and retain verified recovery evidence alongside release decisions.
Split synchronous batches into checkpointed work with bounded retries, cancellation and tenant ownership.
Add import-success and report-freshness objectives, traces and customer-impact alerts. Measurement precedes any savings claim.
Cover imports, permissions and reporting with regression tests and observable release gates before accelerating feature throughput.
Share request/response schemas and add producer-consumer compatibility tests.
Add a reviewed retention policy and auditable tenant-scoped deletion workflow with legal-hold checks.
Provide bounded cursor pages and explicit load-more behavior rather than returning all records.
Improve validation and resumable recovery; use journey telemetry to measure incident recurrence and handling effort.
Use tenant-owned incremental aggregates and expose freshness rather than repeating per-record query loops.
Show job progress, retry state and cancellation in the product without permitting conflicting edits.
Benchmark representative data, optimize expensive queries and evaluate precomputed aggregates after end-to-end measurement is available.
Create a versioned evaluation set for factuality, citations, sensitive-data handling and per-task cost before releasing AI assistance.
Run a bounded, human-reviewed experiment; do not automate production decisions or assume the feature creates a moat.
Compare alternatives and willingness to pay after a successful pilot. Fund research, not an invented revenue projection.