Draft: GULLBERG sanatorium's plan, business-plan outline and wordmark; a board's published list may be public
Test / test (pull_request) Successful in 1m14s
Test / test (pull_request) Successful in 1m14s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GT37Z1Xtfd9pUuQtMTg6Yt
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
c8901558b2
commit
4e211ddbff
@@ -0,0 +1,13 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 520 110" role="img" aria-label="GULLBERG sanatorium">
|
||||
<style>
|
||||
.mark { fill: #1d1b18; }
|
||||
.sub { fill: #6b645a; }
|
||||
@media (prefers-color-scheme: dark) {
|
||||
.mark { fill: #f1ece3; }
|
||||
.sub { fill: #b8b0a3; }
|
||||
}
|
||||
text { font-family: "Futura Now Headline", Futura, "Futura PT", "Century Gothic", "Avenir Next", "Jost", sans-serif; }
|
||||
</style>
|
||||
<text class="mark" x="260" y="68" text-anchor="middle" font-size="64" font-weight="500" letter-spacing="14">GULLBERG</text>
|
||||
<text class="sub" x="260" y="96" text-anchor="middle" font-size="13" font-weight="500" letter-spacing="7">sanatorium</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 676 B |
@@ -0,0 +1,27 @@
|
||||
# Huset
|
||||
|
||||
Utkast, skrives av eierne: hva huset er, hvor det ligger, hvor mange rom det har og i hvilken stand.
|
||||
|
||||
# Forretningen
|
||||
|
||||
Utkast, skrives av eierne: de to inntektene, romleie til studenter og timeshare-uker, og hva hver av dem gir i året.
|
||||
|
||||
# Eierne
|
||||
|
||||
Utkast, skrives av eierne: hvem aksjonærene er, hvordan styret er satt sammen, og hvordan søsknene som ikke blir med er løst ut.
|
||||
|
||||
# Lånet
|
||||
|
||||
Utkast, skrives av eierne: hvor mye, til hva, og hvordan det betjenes.
|
||||
|
||||
# Budsjettet
|
||||
|
||||
Utkast, skrives av eierne: inntekter, drift, renter og avdrag for et normalår, og hvor rapportene står.
|
||||
|
||||
# Det som mangler
|
||||
|
||||
Utkast, skrives av eierne: de største manglene ved huset, hva de koster å rette, og planen for det. Lista på siden holdes oppdatert.
|
||||
|
||||
# Forvaltningen
|
||||
|
||||
Utkast, skrives av eierne: at Klingenberg Bygg forvalter huset, og hva det innebærer.
|
||||
@@ -0,0 +1,196 @@
|
||||
# GULLBERG sanatorium - et Klingenberg Bygg-prosjekt på
|
||||
# gullberg.klingenbergbygg.no. UTKAST 2026-09-30, til samtale; ikke
|
||||
# bygget eller satt ut.
|
||||
#
|
||||
# Et selskap med trolig fire aksjonærer eier huset etter at dødsboet er
|
||||
# gjort opp, og låner for å løse ut søsknene som ikke blir med videre.
|
||||
# Lånet betjenes av to inntekter: studenter som leier rom rimelig, og
|
||||
# timeshare-uker. Siden viser forretningen til verden og til långiveren,
|
||||
# driver huset (romsøknader, uker, styrets liste over det som er bra, det
|
||||
# som mangler og det som er planlagt) og rapporterer pengene til
|
||||
# aksjonærene og långiveren.
|
||||
#
|
||||
# Åpne spørsmål, fra samtalen:
|
||||
# - antall rom, leie, leietid, hvor huset ligger (husleieloven)
|
||||
# - hvem de fire aksjonærene er, og om søsken som løses ut får en plass
|
||||
# - timeshare bare for aksjonærene, eller solgt til andre også
|
||||
# - långiveren: bank (egne skjemaer; siden blir dokumentasjonen) eller
|
||||
# privat (kan bruke långiverens side selv)
|
||||
# - hva som er offentlig: her er rom og publiserte planer offentlige,
|
||||
# tallene bare for aksjonærer og långiver
|
||||
# - selskapsform (AS?) og aksjonæravtale
|
||||
# - hvem som er kontakt og avsender (under er plassholdere)
|
||||
business: GULLBERG sanatorium
|
||||
language: no
|
||||
# Plassholder til styret har en adresse.
|
||||
contact: { name: Styret i Gullberg, email: bl@klingenbergbygg.no, group: styret }
|
||||
people: memberships
|
||||
mail: { from: "Gullberg <gullberg@klingenbergbygg.no>", reply_to: bl@klingenbergbygg.no }
|
||||
about: >
|
||||
Et gammelt hus med rom til studenter som trenger et rimelig sted å bo,
|
||||
og uker for dem som eier det. Drevet av eierne, forvaltet av
|
||||
Klingenberg Bygg.
|
||||
|
||||
groups:
|
||||
- { id: styret, label: Styret }
|
||||
- { id: aksjonaerer, label: Aksjonærer }
|
||||
- { id: langiver, label: Långiver }
|
||||
- { id: leietakere, label: Leietakere }
|
||||
invites_by: [styret]
|
||||
|
||||
does:
|
||||
- id: rom
|
||||
for: leie-rom
|
||||
text: >
|
||||
Rom til studenter, rimelig og for et studieår av gangen. Du søker
|
||||
her, kommer på visning og sier selv ja til tilbudet.
|
||||
- id: huset
|
||||
text: >
|
||||
Huset drives av eierne, med Klingenberg Bygg som forvalter. Det som
|
||||
mangler, står på lista sammen med planen for det, og tallene går
|
||||
jevnlig til eierne og långiveren.
|
||||
|
||||
# Forretningsplanen, ord for ord: ett kort per del. Skal skrives av
|
||||
# eierne; filen har bare delene og hva som hører hjemme i dem.
|
||||
documents:
|
||||
- id: forretningsplan
|
||||
question: Hvordan går Gullberg rundt?
|
||||
description: Forretningsplanen for Gullberg, slik eierne har lagt den fram for långiveren.
|
||||
file: documents/gullberg-forretningsplan.md
|
||||
|
||||
needs:
|
||||
# Offentlig: en student søker rom.
|
||||
- id: leie-rom
|
||||
who: en student som trenger et rimelig rom for studieåret
|
||||
wants: et rom å bo på til en leie som går opp med studielånet
|
||||
lands_in: romsoknader
|
||||
handled_by: styret
|
||||
stages: [open, visning, tilbud, akseptert, signert, avslatt]
|
||||
stages_text: { open: "mottatt", visning: "visning avtalt", tilbud: "tilbud sendt", akseptert: "tilbud godtatt", signert: "kontrakt signert", avslatt: "avsluttet uten leie" }
|
||||
done_when: [signert, avslatt]
|
||||
success: [signert]
|
||||
turned_down_from: [open, visning, tilbud]
|
||||
moves_by: { akseptert: [submitter], avslatt: [submitter, styret] }
|
||||
mails: { open: submitter, visning: submitter, tilbud: submitter, akseptert: bl@klingenbergbygg.no, signert: submitter }
|
||||
grants: { signert: leietakere }
|
||||
max_fields: 4
|
||||
collects:
|
||||
- { name: name }
|
||||
- { name: email, type: email }
|
||||
- { name: telefon, type: tel }
|
||||
- { name: studiested }
|
||||
- { name: innflytting, type: date, optional: true }
|
||||
- { name: om, type: textarea, optional: true }
|
||||
|
||||
# Rommene som er ledige, som bildekort styret legger inn og tar ned.
|
||||
- id: ledig-rom
|
||||
who: styret, når et rom blir ledig
|
||||
wants: at studenter ser rommet før de søker
|
||||
enters_as: styret
|
||||
lands_in: rom
|
||||
handled_by: styret
|
||||
watched_by: [public]
|
||||
presents: true
|
||||
public_states: [open]
|
||||
stages: [open, utleid]
|
||||
stages_text: { open: "ledig", utleid: "leid ut" }
|
||||
done_when: [utleid]
|
||||
success: [utleid]
|
||||
leaves_after: { utleid: { minutes: 10 } }
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: tittel }
|
||||
- { name: bilde, type: picture }
|
||||
- { name: om, type: textarea }
|
||||
|
||||
# Styrets liste: det som er bra, det som mangler, det som er planlagt.
|
||||
# Aksjonærene ser alt; allmennheten bare planene styret har publisert,
|
||||
# og de står som kunngjøringer.
|
||||
- id: liste
|
||||
who: styret, om huset og driften
|
||||
wants: én liste over det som er bra, det som mangler og det som er planlagt, med pris og tid
|
||||
enters_as: styret
|
||||
lands_in: liste
|
||||
handled_by: styret
|
||||
watched_by: [aksjonaerer, public]
|
||||
public_states: [publisert]
|
||||
stages: [open, vedtatt, publisert, forkastet]
|
||||
stages_text: { open: "utkast", vedtatt: "vedtatt", publisert: "publisert", forkastet: "forkastet" }
|
||||
done_when: [publisert, forkastet]
|
||||
success: [publisert]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: tittel }
|
||||
- { name: slag, type: select, options: [Kvalitet, Mangel, Plan] }
|
||||
- { name: beskrivelse, type: textarea }
|
||||
- { name: kostnad, optional: true }
|
||||
- { name: naar, optional: true }
|
||||
|
||||
# Budsjettrapporten: tallene i felt, ikke bare en PDF. Långiveren
|
||||
# kvitterer eller spør; styret svarer.
|
||||
- id: rapport
|
||||
who: styret, hvert kvartal
|
||||
wants: at aksjonærene og långiveren ser hvordan det går, i tall
|
||||
enters_as: styret
|
||||
lands_in: rapporter
|
||||
handled_by: styret
|
||||
watched_by: [aksjonaerer, langiver]
|
||||
stages: [open, kvittert, sporsmal, besvart]
|
||||
stages_text: { open: "lagt fram", kvittert: "kvittert av långiver", sporsmal: "långiver har spørsmål", besvart: "besvart" }
|
||||
reached_from: { sporsmal: [open], besvart: [sporsmal], kvittert: [open, besvart] }
|
||||
done_when: [kvittert]
|
||||
success: [kvittert]
|
||||
moves_by: { kvittert: [langiver], sporsmal: [langiver], besvart: [styret] }
|
||||
mails: { sporsmal: bl@klingenbergbygg.no }
|
||||
max_fields: 7
|
||||
collects:
|
||||
- { name: periode }
|
||||
- { name: leieinntekter }
|
||||
- { name: timeshare }
|
||||
- { name: driftskostnader }
|
||||
- { name: renter-og-avdrag }
|
||||
- { name: saldo }
|
||||
- { name: kommentar, type: textarea }
|
||||
- { name: dokument, type: file, optional: true }
|
||||
|
||||
# Aksjonærene: uker i huset, og saker til styret.
|
||||
- id: uke
|
||||
who: en aksjonær som vil bruke huset en periode
|
||||
wants: en uke i huset, bekreftet av styret
|
||||
enters_as: aksjonaerer
|
||||
lands_in: uker
|
||||
handled_by: styret
|
||||
stages: [open, bekreftet, avslatt]
|
||||
stages_text: { open: "ønsket", bekreftet: "bekreftet", avslatt: "ikke ledig" }
|
||||
done_when: [bekreftet, avslatt]
|
||||
success: [bekreftet]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: fra, type: date }
|
||||
- { name: til, type: date }
|
||||
- { name: merknad, type: textarea, optional: true }
|
||||
|
||||
- id: sak
|
||||
who: en aksjonær som vil ha noe avgjort
|
||||
wants: at styret tar saken opp og avgjør den
|
||||
enters_as: aksjonaerer
|
||||
lands_in: saker
|
||||
handled_by: styret
|
||||
watched_by: [aksjonaerer]
|
||||
stages: [open, sakslisten, vedtatt, avvist]
|
||||
stages_text: { open: "meldt", sakslisten: "på sakslisten", vedtatt: "vedtatt", avvist: "avvist" }
|
||||
done_when: [vedtatt, avvist]
|
||||
success: [vedtatt]
|
||||
max_fields: 2
|
||||
collects:
|
||||
- { name: tittel }
|
||||
- { name: sak, type: textarea }
|
||||
|
||||
personas:
|
||||
- { id: student-bergen, need: leie-rom, text: "Jeg begynner på master til høsten og har ikke råd til hybel i sentrum. Et rimelig rom i et stort hus høres perfekt ut." }
|
||||
- { id: student-kort, need: leie-rom, text: "Jeg skal på utveksling og trenger et rom bare for ett semester. Går det an?" }
|
||||
- { id: styret-rom, need: ledig-rom, text: "Rommet i andre etasje blir ledig til jul, og jeg har et fint bilde av det. Det vil jeg legge ut." }
|
||||
- { id: styret-mangel, need: liste, text: "Taket på uthuset lekker. Det må stå på lista, og vi må ha en plan og en pris for det." }
|
||||
- { id: styret-kvartal, need: rapport, text: "Tredje kvartal er gjort opp. Leia kom inn, men fyringsolja ble dyrere enn vi trodde." }
|
||||
- { id: aksjonaer-sommer, need: uke, text: "Vi vil gjerne være i huset første uka i juli med barna." }
|
||||
- { id: aksjonaer-sak, need: sak, text: "Jeg mener vi bør se på solceller før vi tar opp mer lån. Kan styret ta det opp?" }
|
||||
@@ -664,11 +664,14 @@ impl Plan {
|
||||
// small application and the firm's large one, and is one
|
||||
// page either way. A bucket only a role ever writes to has
|
||||
// its group's desk and nothing to publish.
|
||||
// Unless it presents: the people are entered from inside
|
||||
// precisely so that everyone can see them.
|
||||
// Unless it presents - the people are entered from inside
|
||||
// precisely so that everyone can see them - or publishes:
|
||||
// a board's list whose public view is only the stages it
|
||||
// has published (`public_states`) is announcements.
|
||||
if need.watched_by.iter().any(|g| g == PUBLIC)
|
||||
&& need.enters_as.is_some()
|
||||
&& !need.presents
|
||||
&& need.public_states.is_empty()
|
||||
&& !self
|
||||
.needs
|
||||
.iter()
|
||||
|
||||
Reference in New Issue
Block a user