Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 14 additions & 28 deletions COMMERCIAL-USE.md
Original file line number Diff line number Diff line change
@@ -1,40 +1,26 @@
# Commercial Use

SwiftASB is licensed under the PolyForm Noncommercial License 1.0.0 for
noncommercial use. The full license text is in [LICENSE](./LICENSE), and the
required notice is in [NOTICE](./NOTICE).
SwiftASB is publicly available under the PolyForm Noncommercial License 1.0.0.

## Noncommercial Use
Commercial use is not licensed by the public license. If you want to use
SwiftASB, its documentation, examples, generated wire models, maintainer tools,
AgentSB, UI component targets, package artifacts, or derived works for
business, employer, client, product, model-training, paid-service, or
revenue-generating work, contact Gale W at <mail@galewilliams.com>.

You may use SwiftASB under the PolyForm Noncommercial License for personal,
hobby, educational, research, public-interest, and other noncommercial work
that is not intended to generate revenue, reduce business costs, or provide a
commercial advantage.

## Commercial Use

Commercial use requires a separate written commercial license from Gale.

For commercial licensing, contact Gale W at <mail@galewilliams.com>.

Commercial use includes, without limitation, using SwiftASB, its documentation,
examples, generated wire models, maintainer tools, AgentSB, UI component
targets, package artifacts, or derived works:

- for a business, employer, client, customer, or contractor relationship
- in a paid product, paid service, hosted service, or internal business tool
- for training, consulting, professional services, or product development
- to develop, evaluate, operate, or improve a commercial agentic coding
application or workflow
- to generate revenue, reduce business costs, or provide commercial advantage

## Earlier Versions
Commercial terms are handled by separate written agreement.

SwiftASB versions published before the PolyForm Noncommercial change remain
available under the license terms that applied to those versions. The
historical Apache License 2.0 text is preserved in
[LICENSE-APACHE-2.0](./LICENSE-APACHE-2.0).
[LICENSE-HISTORICAL-APACHE-2.0](./LICENSE-HISTORICAL-APACHE-2.0).

## Required Notice

PolyForm Noncommercial requires copies to include the license terms or URL and
any plain-text `Required Notice:` lines provided with the software. SwiftASB's
required notice is:

```text
Required Notice: Copyright 2026 Gale Williams (mailto:mail@galewilliams.com)
```
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,6 @@ Record settled decisions in `ROADMAP.md`, DocC, maintainer docs, or this guide s

Unless a contribution explicitly says otherwise in writing, contributions to SwiftASB are made under the PolyForm Noncommercial License 1.0.0 terms in [LICENSE](./LICENSE). The root legal-notice surface lives in [NOTICE](./NOTICE).

Commercial use requires a separate written commercial license from Gale. For commercial licensing, contact Gale W at <mail@galewilliams.com>. See [COMMERCIAL-USE.md](./COMMERCIAL-USE.md) for the current commercial-use policy.
Commercial use is not licensed by the public license. See [COMMERCIAL-USE.md](./COMMERCIAL-USE.md) for the current commercial-use policy and contact path.

Do not submit contributions unless you have the right to license them under these terms and understand Gale may offer separate commercial licenses for SwiftASB.
File renamed without changes.
10 changes: 5 additions & 5 deletions NOTICE
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@ Required Notice: Copyright 2026 Gale Williams (mailto:mail@galewilliams.com)
This repository is licensed under the PolyForm Noncommercial License 1.0.0.
See [LICENSE](./LICENSE) for the full license text.

Commercial use requires a separate written commercial license from Gale.
For commercial licensing, contact Gale W at <mail@galewilliams.com>.
See [COMMERCIAL-USE.md](./COMMERCIAL-USE.md) for the current commercial-use
policy.
Commercial use is not licensed by the public license. See
[COMMERCIAL-USE.md](./COMMERCIAL-USE.md) for the current commercial-use policy
and contact path.

SwiftASB versions published before the PolyForm Noncommercial change remain
available under the license terms that applied to those versions. The historical
Apache License 2.0 text is preserved in [LICENSE-APACHE-2.0](./LICENSE-APACHE-2.0).
Apache License 2.0 text is preserved in
[LICENSE-HISTORICAL-APACHE-2.0](./LICENSE-HISTORICAL-APACHE-2.0).

Third-Party Trademarks And Brand References

Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,6 @@ Agent-facing maintainer guidance lives in [AGENTS.md](./AGENTS.md).

SwiftASB is licensed under the PolyForm Noncommercial License 1.0.0 for future public versions. See [LICENSE](./LICENSE), [NOTICE](./NOTICE), and [COMMERCIAL-USE.md](./COMMERCIAL-USE.md).

Commercial use requires a separate written commercial license from Gale. For commercial licensing, contact Gale W at <mail@galewilliams.com>.
Commercial use is not licensed by the public license. See [COMMERCIAL-USE.md](./COMMERCIAL-USE.md) for the current commercial-use policy and contact path.

SwiftASB versions published before the PolyForm Noncommercial change remain available under the license terms that applied to those versions. The historical Apache License 2.0 text is preserved in [LICENSE-APACHE-2.0](./LICENSE-APACHE-2.0).
SwiftASB versions published before the PolyForm Noncommercial change remain available under the license terms that applied to those versions. The historical Apache License 2.0 text is preserved in [LICENSE-HISTORICAL-APACHE-2.0](./LICENSE-HISTORICAL-APACHE-2.0).
2 changes: 1 addition & 1 deletion ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -1522,7 +1522,7 @@ Completed
Decision: yes, but as opt-in suites rather than as part of the default `swift test` path while the live Codex runtime remains an external local dependency.
- [x] Add an explicit source-available license for the package.
Decision: future public versions now use the PolyForm Noncommercial License
1.0.0, commercial use requires a separate written license from Gale, and the
1.0.0, commercial use is handled by separate written agreement, and the
historical Apache License 2.0 text is preserved for earlier versions.

### Exit Criteria
Expand Down
42 changes: 42 additions & 0 deletions docs/maintainers/presentation-ui-targets-plan.md
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,46 @@ representable wrappers for dense surfaces such as the thread sidebar and turn
timeline when scrolling, selection, reuse, or incremental updates are central to
the component.

#### OS Availability Strategy

Keep the public `ASBSwiftUI` entry points stable across the package's supported
macOS floor. The baseline files should build against the package minimum and
should expose views that can render without requiring the newest SDK features.

Put OS-specific SwiftUI adoption in narrow availability islands:

- Use `if #available(macOS 27.0, *)` inside stable public views when one public
component should choose a newer rendering path at runtime.
- Use `@available(macOS 27.0, *)` on declarations that only make sense when the
caller can opt into an OS 27-only style, modifier, helper view, or overload.
- Use `#if os(macOS)` for platform separation and `#if canImport(SwiftUI)` only
for module availability. Use `#if compiler(>=...)` only when new language or
SDK syntax would not parse on older supported toolchains.
- Keep availability checks in renderer, style, adapter, and modifier files.
Do not put OS-version branches in `ASBPresentation` snapshots or intents.

Suggested file shape:

```text
Sources/ASBSwiftUI/
ThreadSidebar/
ASBThreadSidebar.swift
ASBThreadSidebarRepresentable.swift
ASBThreadSidebar+macOS27.swift
Agenda/
ASBAgendaPanel.swift
ASBAgendaPanel+macOS27.swift
Dashboard/
ASBDashboardPanel.swift
ASBDashboardPanel+macOS27.swift
Support/
ASBAvailabilitySupport.swift
```

This is a durable building-block rule for the SwiftUI target. It keeps new SDK
adoption readable without forcing OS-specific concepts into framework-neutral
presentation data.

## Ownership Rules

- SwiftASB owns runtime truth.
Expand Down Expand Up @@ -332,6 +372,8 @@ view reuse inside `ASBAppKit`.
are light current-state surfaces.
- Document when consumers should choose native SwiftUI components versus
AppKit-backed wrappers.
- Establish the OS availability file shape before adopting OS 27-specific
SwiftUI APIs, and keep baseline public views available at the package minimum.

### Slice 6: Turn Timeline Renderer

Expand Down
Loading